blob: 02cf9ebc26ea2fa72755739be2c6fbfce8902f11 [file] [log] [blame]
Dan Willemsen59e086f2016-07-25 17:13:45 -07001// Copyright (C) 2013 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// libinput is partially built for the host (used by build time keymap validation tool)
16
Bob Badour3306e492021-02-25 15:35:37 -080017package {
18 // See: http://go/android-license-faq
19 // A large-scale-change added 'default_applicable_licenses' to import
20 // all of the 'license_kinds' from "frameworks_native_license"
21 // to get the below license kinds:
22 // SPDX-license-identifier-Apache-2.0
23 default_applicable_licenses: ["frameworks_native_license"],
24}
25
Siarhei Vishniakou70622952020-07-30 11:17:23 -050026filegroup {
27 name: "inputconstants_aidl",
28 srcs: [
Bernardo Rufinoea97d182020-08-19 14:43:14 +010029 "android/os/BlockUntrustedTouchesMode.aidl",
Siarhei Vishniakouae6229e2019-12-30 16:23:19 -080030 "android/os/IInputConstants.aidl",
31 "android/os/InputEventInjectionResult.aidl",
32 "android/os/InputEventInjectionSync.aidl",
Siarhei Vishniakou70622952020-07-30 11:17:23 -050033 ],
34}
35
Dan Willemsen59e086f2016-07-25 17:13:45 -070036cc_library {
37 name: "libinput",
38 host_supported: true,
Frank Barchard9e947882017-03-06 11:17:52 -080039 cflags: [
40 "-Wall",
41 "-Wextra",
42 "-Werror",
43 ],
Dan Willemsen59e086f2016-07-25 17:13:45 -070044 srcs: [
45 "Input.cpp",
46 "InputDevice.cpp",
Chris Ye4958d062020-08-20 13:21:10 -070047 "InputEventLabels.cpp",
Dan Willemsen59e086f2016-07-25 17:13:45 -070048 "Keyboard.cpp",
49 "KeyCharacterMap.cpp",
50 "KeyLayoutMap.cpp",
Siarhei Vishniakou32f36ae2020-09-02 20:17:10 -070051 "PropertyMap.cpp",
Siarhei Vishniakou26cf29d2019-02-15 16:48:38 -060052 "TouchVideoFrame.cpp",
Brett Chabot58208522020-09-09 13:55:24 -070053 "VelocityControl.cpp",
54 "VelocityTracker.cpp",
Siarhei Vishniakou5ac663d2019-02-15 17:15:56 -060055 "VirtualKeyMap.cpp",
Dan Willemsen59e086f2016-07-25 17:13:45 -070056 ],
57
58 clang: true,
Dan Willemsen59e086f2016-07-25 17:13:45 -070059
Orion Hodsone32877a2020-04-22 11:10:13 +010060 header_libs: ["jni_headers"],
61 export_header_lib_headers: ["jni_headers"],
62
Dan Willemsen59e086f2016-07-25 17:13:45 -070063 shared_libs: [
Siarhei Vishniakouec2727e2017-07-06 10:22:03 -070064 "libbase",
Dan Willemsen59e086f2016-07-25 17:13:45 -070065 "liblog",
66 "libcutils",
67 ],
68
chaviwfd9c1ed2020-07-01 10:57:59 -070069 static_libs: [
70 "libui-types",
71 ],
72
73 export_static_lib_headers: [
74 "libui-types",
75 ],
76
Dan Willemsen59e086f2016-07-25 17:13:45 -070077 target: {
78 android: {
79 srcs: [
Dan Willemsen59e086f2016-07-25 17:13:45 -070080 "InputTransport.cpp",
Siarhei Vishniakou7766c032021-03-02 20:32:20 +000081 "android/os/BlockUntrustedTouchesMode.aidl",
Siarhei Vishniakou70622952020-07-30 11:17:23 -050082 "android/os/IInputConstants.aidl",
Siarhei Vishniakou7766c032021-03-02 20:32:20 +000083 "android/os/IInputFlinger.aidl",
Siarhei Vishniakouae6229e2019-12-30 16:23:19 -080084 "android/os/InputEventInjectionResult.aidl",
85 "android/os/InputEventInjectionSync.aidl",
Chris Ye0783e992020-06-02 21:34:49 -070086 "android/os/ISetInputWindowsListener.aidl",
Dan Willemsen59e086f2016-07-25 17:13:45 -070087 ],
88
Bernardo Rufinoea97d182020-08-19 14:43:14 +010089 export_shared_lib_headers: ["libbinder"],
90
Dan Willemsen59e086f2016-07-25 17:13:45 -070091 shared_libs: [
92 "libutils",
93 "libbinder",
Atif Niyaz3d3fa522019-07-25 11:12:39 -070094 "libui",
Dan Willemsen59e086f2016-07-25 17:13:45 -070095 ],
Evgenii Stepanovde982972017-01-31 16:37:44 -080096
Colin Cross433cfd92021-07-16 22:29:59 -070097 static_libs: [
98 "libgui_window_info_static",
99 ],
100
101 export_static_lib_headers: [
102 "libgui_window_info_static",
103 ],
104
Evgenii Stepanovde982972017-01-31 16:37:44 -0800105 sanitize: {
106 misc_undefined: ["integer"],
107 },
Dan Willemsen59e086f2016-07-25 17:13:45 -0700108 },
109 host: {
110 shared: {
111 enabled: false,
112 },
Brett Chabot58208522020-09-09 13:55:24 -0700113 include_dirs: [
114 "frameworks/native/libs/arect/include",
115 ],
116 },
117 linux_glibc: {
118 srcs: [
119 "InputTransport.cpp",
Brett Chabot58208522020-09-09 13:55:24 -0700120 "android/os/IInputConstants.aidl",
121 "android/os/IInputFlinger.aidl",
122 "android/os/ISetInputWindowsListener.aidl",
Brett Chabot58208522020-09-09 13:55:24 -0700123 ],
124 static_libs: [
125 "libhostgraphics",
Colin Cross433cfd92021-07-16 22:29:59 -0700126 "libgui_window_info_static",
Brett Chabot58208522020-09-09 13:55:24 -0700127 ],
128 shared_libs: [
129 "libbinder",
130 ],
Colin Cross433cfd92021-07-16 22:29:59 -0700131
132 export_static_lib_headers: [
133 "libgui_window_info_static",
134 ],
Dan Willemsen59e086f2016-07-25 17:13:45 -0700135 },
136 },
Chris Ye0783e992020-06-02 21:34:49 -0700137
138 aidl: {
139 local_include_dirs: ["."],
Brett Chabot58208522020-09-09 13:55:24 -0700140 export_aidl_headers: true,
chaviw3277faf2021-05-19 16:45:23 -0500141 include_dirs: [
142 "frameworks/native/libs/gui",
143 ],
Chris Ye0783e992020-06-02 21:34:49 -0700144 },
Dan Willemsen59e086f2016-07-25 17:13:45 -0700145}
Dan Willemsenc7dd2b92016-08-25 17:05:22 -0700146
Siarhei Vishniakou32f36ae2020-09-02 20:17:10 -0700147cc_defaults {
148 name: "libinput_fuzz_defaults",
149 host_supported: true,
150 shared_libs: [
151 "libutils",
152 "libbase",
153 "liblog",
154 ],
155}
156
157cc_fuzz {
158 name: "libinput_fuzz_propertymap",
159 defaults: ["libinput_fuzz_defaults"],
160 srcs: [
161 "PropertyMap.cpp",
162 "PropertyMap_fuzz.cpp",
163 ],
164}
165
Dan Willemsenc7dd2b92016-08-25 17:05:22 -0700166subdirs = ["tests"]