blob: 2c2419b44e1f270a492f223330e197874a701b69 [file] [log] [blame]
Lev Proleev6b6dfcd2020-11-11 18:28:50 +00001//
2// Copyright (C) 2021 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
Bob Badourb224b362021-02-12 20:13:01 -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 "hardware_interfaces_license"
21 // to get the below license kinds:
22 // SPDX-license-identifier-Apache-2.0
23 default_applicable_licenses: ["hardware_interfaces_license"],
24}
25
Xusong Wang9763a952021-10-05 10:07:12 -070026cc_defaults {
27 name: "neuralnetworks_utils_hal_aidl_defaults",
Lev Proleev6b6dfcd2020-11-11 18:28:50 +000028 defaults: ["neuralnetworks_utils_defaults"],
29 srcs: ["src/*"],
30 local_include_dirs: ["include/nnapi/hal/aidl/"],
31 export_include_dirs: ["include"],
Lev Proleev900c28a2021-01-26 19:40:20 +000032 cflags: ["-Wthread-safety"],
Lev Proleev6b6dfcd2020-11-11 18:28:50 +000033 static_libs: [
Ady Abrahamfd549c92021-09-04 21:58:20 -070034 "android.hardware.graphics.common-V3-ndk",
Michael Butlerf03ebd92021-03-25 15:27:38 -070035 "libaidlcommonsupport",
Michael Butlerab2f4822021-02-08 00:05:07 -080036 "libarect",
Lev Proleev6b6dfcd2020-11-11 18:28:50 +000037 "neuralnetworks_types",
38 "neuralnetworks_utils_hal_common",
39 ],
40 shared_libs: [
Lev Proleev6b6dfcd2020-11-11 18:28:50 +000041 "libbinder_ndk",
Michael Butlerab2f4822021-02-08 00:05:07 -080042 "libhidlbase",
Lev Proleev6b6dfcd2020-11-11 18:28:50 +000043 ],
Ray Hernandez338d6f82021-08-11 21:29:20 +000044 target: {
45 android: {
46 shared_libs: ["libnativewindow"],
47 },
48 },
Lev Proleev6b6dfcd2020-11-11 18:28:50 +000049}
Lev Proleev900c28a2021-01-26 19:40:20 +000050
Xusong Wang9763a952021-10-05 10:07:12 -070051cc_library_static {
52 name: "neuralnetworks_utils_hal_aidl_v1",
53 defaults: ["neuralnetworks_utils_hal_aidl_defaults"],
54 shared_libs: [
55 "android.hardware.neuralnetworks-V1-ndk",
Lev Proleev900c28a2021-01-26 19:40:20 +000056 ],
Xusong Wang9763a952021-10-05 10:07:12 -070057}
58
59cc_library_static {
60 name: "neuralnetworks_utils_hal_aidl_v2",
61 defaults: ["neuralnetworks_utils_hal_aidl_defaults"],
62 shared_libs: [
63 "android.hardware.neuralnetworks-V2-ndk",
64 ],
65}
66
67// A cc_defaults that includes the latest non-experimental AIDL utilities and other AIDL libraries
68// that are commonly used together. Modules that always depend on the latest non-experimental
69// AIDL features can include this cc_defaults to avoid managing dependency versions explicitly.
70cc_defaults {
71 name: "neuralnetworks_use_latest_utils_hal_aidl",
Lev Proleev900c28a2021-01-26 19:40:20 +000072 static_libs: [
Jiyong Park27f77fe2021-07-27 12:16:52 +090073 "android.hardware.common-V2-ndk",
Ady Abrahamfd549c92021-09-04 21:58:20 -070074 "android.hardware.graphics.common-V3-ndk",
Ian Huaa7adbcc2021-09-15 15:10:06 +010075 "android.hardware.neuralnetworks-V2-ndk",
Xusong Wang9763a952021-10-05 10:07:12 -070076 "neuralnetworks_utils_hal_aidl_v2",
77 ],
78}
79
80cc_test {
81 name: "neuralnetworks_utils_hal_aidl_test",
82 defaults: [
83 "neuralnetworks_use_latest_utils_hal_aidl",
84 "neuralnetworks_utils_defaults",
85 ],
86 srcs: [
87 "test/*.cpp",
88 ],
89 static_libs: [
Michael Butlerf03ebd92021-03-25 15:27:38 -070090 "libaidlcommonsupport",
Lev Proleev900c28a2021-01-26 19:40:20 +000091 "libgmock",
92 "libneuralnetworks_common",
93 "neuralnetworks_types",
Lev Proleev900c28a2021-01-26 19:40:20 +000094 "neuralnetworks_utils_hal_common",
95 ],
96 shared_libs: [
97 "android.hidl.allocator@1.0",
98 "libbase",
99 "libbinder_ndk",
100 "libcutils",
101 "libhidlbase",
102 "libhidlmemory",
103 "liblog",
Lev Proleev900c28a2021-01-26 19:40:20 +0000104 "libutils",
105 ],
Ray Hernandez338d6f82021-08-11 21:29:20 +0000106 target: {
107 android: {
108 shared_libs: ["libnativewindow"],
109 },
110 host: {
111 cflags: [
112 "-D__INTRODUCED_IN(x)=",
113 "-D__assert(a,b,c)=",
114 // We want all the APIs to be available on the host.
115 "-D__ANDROID_API__=10000",
116 ],
117 },
118 },
Lev Proleev900c28a2021-01-26 19:40:20 +0000119 cflags: [
120 /* GMOCK defines functions for printing all MOCK_DEVICE arguments and
121 * MockDevice contains a string pointer which triggers a warning in the
122 * base logging library. */
123 "-Wno-user-defined-warnings",
124 ],
125 test_suites: ["general-tests"],
126}