• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// 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
15cc_defaults {
16    name: "inputflinger_defaults",
17    cflags: [
18        "-Wall",
19        "-Wextra",
20        "-Werror",
21        "-Wno-unused-parameter",
22        "-Wthread-safety",
23    ],
24}
25
26cc_library_shared {
27    name: "libinputflinger",
28    defaults: ["inputflinger_defaults"],
29
30    srcs: [
31        "InputClassifier.cpp",
32        "InputClassifierConverter.cpp",
33        "InputDispatcher.cpp",
34        "InputManager.cpp",
35    ],
36
37    shared_libs: [
38        "android.hardware.input.classifier@1.0",
39        "libbase",
40        "libinputflinger_base",
41        "libinputreporter",
42        "libinputreader",
43        "libbinder",
44        "libcutils",
45        "libhidlbase",
46        "libinput",
47        "liblog",
48        "libutils",
49        "libui",
50        "server_configurable_flags",
51    ],
52
53    cflags: [
54        // TODO(b/23084678): Move inputflinger to its own process and mark it hidden
55        //-fvisibility=hidden
56    ],
57
58    export_include_dirs: [
59        ".",
60        "include",
61    ],
62
63}
64
65cc_library_headers {
66    name: "libinputflinger_headers",
67    export_include_dirs: ["include"],
68}
69
70cc_library_shared {
71    name: "libinputreader",
72    defaults: ["inputflinger_defaults"],
73
74    srcs: [
75        "EventHub.cpp",
76        "InputReader.cpp",
77        "InputReaderFactory.cpp",
78        "TouchVideoDevice.cpp",
79    ],
80
81    shared_libs: [
82        "libbase",
83        "libinputflinger_base",
84        "libcrypto",
85        "libcutils",
86        "libinput",
87        "liblog",
88        "libui",
89        "libutils",
90        "libhardware_legacy",
91        "libstatslog",
92    ],
93
94    header_libs: [
95        "libinputflinger_headers",
96    ],
97
98    export_header_lib_headers: [
99        "libinputflinger_headers",
100    ],
101}
102
103cc_library_shared {
104    name: "libinputflinger_base",
105    defaults: ["inputflinger_defaults"],
106
107    srcs: [
108        "InputListener.cpp",
109        "InputReaderBase.cpp",
110    ],
111
112    shared_libs: [
113        "libbase",
114        "libinput",
115        "liblog",
116        "libutils",
117    ],
118
119    header_libs: [
120        "libinputflinger_headers",
121    ],
122
123    export_header_lib_headers: [
124        "libinputflinger_headers",
125    ],
126}
127
128cc_library_shared {
129    name: "libinputreporter",
130    defaults: ["inputflinger_defaults"],
131
132    srcs: [
133        "InputReporter.cpp",
134    ],
135
136    shared_libs: [
137        "liblog",
138        "libutils",
139    ],
140
141    header_libs: [
142        "libinputflinger_headers",
143    ],
144
145    export_header_lib_headers: [
146        "libinputflinger_headers",
147    ],
148}
149
150subdirs = [
151    "host",
152    "tests",
153]
154