| // Copyright (C) 2013 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| // Default flags to be used throughout all libraries in inputflinger. |
| package { |
| // See: http://go/android-license-faq |
| // A large-scale-change added 'default_applicable_licenses' to import |
| // all of the 'license_kinds' from "frameworks_native_license" |
| // to get the below license kinds: |
| // SPDX-license-identifier-Apache-2.0 |
| default_applicable_licenses: ["frameworks_native_license"], |
| } |
| |
| cc_defaults { |
| name: "inputflinger_defaults", |
| cflags: [ |
| "-Wall", |
| "-Wextra", |
| "-Werror", |
| "-Wno-unused-parameter", |
| "-Wthread-safety", |
| "-Wshadow", |
| "-Wshadow-field-in-constructor-modified", |
| "-Wshadow-uncaptured-local", |
| ], |
| sanitize: { |
| misc_undefined: ["bounds"], |
| }, |
| } |
| |
| ///////////////////////////////////////////////// |
| // libinputflinger |
| ///////////////////////////////////////////////// |
| |
| filegroup { |
| name: "libinputflinger_sources", |
| srcs: [ |
| "InputClassifier.cpp", |
| "InputClassifierConverter.cpp", |
| "InputManager.cpp", |
| ], |
| } |
| |
| cc_defaults { |
| name: "libinputflinger_defaults", |
| srcs: [":libinputflinger_sources"], |
| shared_libs: [ |
| "android.hardware.input.classifier@1.0", |
| "libbase", |
| "libbinder", |
| "libcrypto", |
| "libcutils", |
| "libhidlbase", |
| "libinput", |
| "libkll", |
| "liblog", |
| "libprotobuf-cpp-lite", |
| "libstatslog", |
| "libstatspull", |
| "libstatssocket", |
| "libutils", |
| "libui", |
| "lib-platform-compat-native-api", |
| "server_configurable_flags", |
| ], |
| static_libs: [ |
| "libattestation", |
| ], |
| } |
| |
| cc_library_shared { |
| name: "libinputflinger", |
| defaults: [ |
| "inputflinger_defaults", |
| "libinputflinger_defaults", |
| ], |
| cflags: [ |
| // TODO(b/23084678): Move inputflinger to its own process and mark it hidden |
| //-fvisibility=hidden |
| ], |
| shared_libs: [ |
| // This should consist only of dependencies from inputflinger. Other dependencies should be |
| // in cc_defaults so that they are included in the tests. |
| "libinputflinger_base", |
| "libinputreporter", |
| "libinputreader", |
| ], |
| static_libs: [ |
| "libinputdispatcher", |
| ], |
| export_static_lib_headers: [ |
| "libinputdispatcher", |
| ], |
| export_include_dirs: [ |
| ".", |
| "include", |
| ], |
| } |
| |
| ///////////////////////////////////////////////// |
| // libinputflinger_base |
| ///////////////////////////////////////////////// |
| |
| cc_library_headers { |
| name: "libinputflinger_headers", |
| export_include_dirs: ["include"], |
| } |
| |
| filegroup { |
| name: "libinputflinger_base_sources", |
| srcs: [ |
| "InputListener.cpp", |
| "InputReaderBase.cpp", |
| "InputThread.cpp", |
| "VibrationElement.cpp" |
| ], |
| } |
| |
| cc_defaults { |
| name: "libinputflinger_base_defaults", |
| srcs: [":libinputflinger_base_sources"], |
| shared_libs: [ |
| "libbase", |
| "libcutils", |
| "libinput", |
| "liblog", |
| "libui", |
| "libutils", |
| ], |
| header_libs: [ |
| "libinputflinger_headers", |
| ], |
| } |
| |
| cc_library_shared { |
| name: "libinputflinger_base", |
| defaults: [ |
| "inputflinger_defaults", |
| "libinputflinger_base_defaults", |
| ], |
| export_header_lib_headers: [ |
| "libinputflinger_headers", |
| ], |
| } |