blob: dbc9fa21304c23ff95817773e6b0dcc026197f05 [file] [log] [blame]
Dan Willemsen6365a872016-09-13 16:29:54 -07001// Copyright (C) 2016 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
Steven Morelandc75fc622017-08-04 11:04:39 -070015cc_defaults {
16 name: "libhidl-defaults",
17 cflags: [
18 "-Wall",
Steven Moreland37814cb2018-10-24 16:28:35 -070019 "-Wdocumentation", // since some users use this
Steven Morelandc75fc622017-08-04 11:04:39 -070020 "-Werror",
Bernhard Rosenkränzer0c28fd22018-06-04 16:01:47 +020021 "-Wextra-semi",
Steven Morelandc75fc622017-08-04 11:04:39 -070022 ],
23}
Steven Moreland8dd65742017-02-17 22:39:46 -080024
Steven Moreland37e8d3a2019-04-26 12:33:21 -070025phony {
26 name: "libhidl",
27 required: [
28 "libhidlbase",
29 "libhidltransport",
30 ],
31}
32
Yifan Hong00f4a392016-11-16 12:35:58 -080033cc_test {
34 name: "libhidl_test",
Steven Morelandc75fc622017-08-04 11:04:39 -070035 defaults: ["libhidl-defaults"],
Yifan Hong00f4a392016-11-16 12:35:58 -080036 gtest: false,
37 srcs: ["test_main.cpp"],
Steven Moreland17453832019-02-25 12:01:22 -080038 test_suites: ["device-tests"],
Yifan Hong00f4a392016-11-16 12:35:58 -080039
Dan Willemsen6365a872016-09-13 16:29:54 -070040 shared_libs: [
Steven Moreland138c3502018-11-27 14:27:04 -080041 "android.hidl.memory@1.0",
Dan Willemsen6365a872016-09-13 16:29:54 -070042 "libbase",
Yifan Hong00f4a392016-11-16 12:35:58 -080043 "libhidlbase",
44 "libhidltransport",
45 "libhwbinder",
Dan Willemsen6365a872016-09-13 16:29:54 -070046 "liblog",
47 "libutils",
Jeff Tinker0f3461d2017-01-03 10:40:55 -080048 "libcutils",
Dan Willemsen6365a872016-09-13 16:29:54 -070049 ],
Yifan Hong2be94182017-03-03 19:07:38 -080050 static_libs: ["libgtest", "libgmock"],
Yifan Hong00f4a392016-11-16 12:35:58 -080051
52 cflags: [
53 "-O0",
54 "-g",
Steven Morelandc75fc622017-08-04 11:04:39 -070055 ],
Dan Willemsen6365a872016-09-13 16:29:54 -070056}
Steven Morelanda46371d2019-06-05 18:29:06 -070057
Steven Moreland9f53eda2019-06-17 17:17:02 -070058cc_defaults {
59 name: "libhidlbase-combined-impl",
Steven Morelanda46371d2019-06-05 18:29:06 -070060
61 defaults: [
Steven Moreland9f53eda2019-06-17 17:17:02 -070062 "libhwbinder-impl-shared-libs",
Steven Morelanda46371d2019-06-05 18:29:06 -070063 "libhidlbase-impl-shared-libs",
64 "libhidltransport-impl-shared-libs",
65 ],
66
67 whole_static_libs: [
68 "libhidlbase-impl-internal",
69 "libhidltransport-impl-internal",
70 ],
71}
72
Steven Moreland9f53eda2019-06-17 17:17:02 -070073cc_library {
74 name: "libhidlbase",
75 defaults: ["libhidlbase-combined-impl"],
76 recovery_available: true,
77 vendor_available: true,
78 vndk: {
79 enabled: true,
80 support_system_process: true,
81 },
82 whole_static_libs: [
83 "libhwbinder-impl-internal",
84 ],
85}
86
87// Only libhwbinder_benchmark needs to have pgo enabled. When all places
88// support having PGO selectively enabled, all places can use libhwbinder.
89//
90// http://b/77320844
91cc_library {
92 name: "libhidlbase_pgo",
93 defaults: [
94 "libhidlbase-combined-impl",
95 "hwbinder_benchmark_pgo",
96 ],
97 whole_static_libs: [
98 "libhwbinder_pgo-impl-internal",
99 ],
100}
101
Steven Morelanda46371d2019-06-05 18:29:06 -0700102// WARNING: deprecated
103// This library is no longer required, and dependencies should be taken
104// on libhidlbase instead.
105cc_library {
106 name: "libhidltransport",
107 recovery_available: true,
108 vendor_available: true,
109 vndk: {
110 enabled: true,
111 support_system_process: true,
112 },
113}