blob: 534fc1a9cef78cb2c6352fc0a7bab229e0e018e1 [file] [log] [blame]
Dan Willemsen3e963f92018-10-31 10:32:32 -07001//
2// Copyright (C) 2015 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 Badourd69ad692021-02-16 19:02:14 -080017package {
18 default_applicable_licenses: ["Android-Apache-2.0"],
19}
20
Pawan Waghc5c0c302023-04-21 22:04:31 +000021cc_defaults {
22 name: "gatekeeperd_defaults",
Dan Willemsen3e963f92018-10-31 10:32:32 -070023 cflags: [
24 "-Wall",
25 "-Wextra",
26 "-Werror",
27 "-Wunused",
28 ],
29 srcs: [
Dan Willemsen3e963f92018-10-31 10:32:32 -070030 "gatekeeperd.cpp",
31 ],
David Drysdalec5b7d172021-11-22 15:15:57 +000032 defaults: [
33 "keymint_use_latest_hal_aidl_ndk_shared",
34 ],
Dan Willemsen3e963f92018-10-31 10:32:32 -070035 shared_libs: [
36 "libbinder",
Hasini Gunasinghe6fd56032020-12-08 21:08:13 +000037 "libbinder_ndk",
Dan Willemsen3e963f92018-10-31 10:32:32 -070038 "libgatekeeper",
David Anderson97400bd2019-02-15 15:59:39 -080039 "libgsi",
Dan Willemsen3e963f92018-10-31 10:32:32 -070040 "liblog",
41 "libhardware",
42 "libbase",
43 "libutils",
44 "libcrypto",
Dan Willemsen3e963f92018-10-31 10:32:32 -070045 "libhidlbase",
Subrahmanyaman355e9772022-07-21 03:51:30 +000046 "lib_android_keymaster_keymint_utils",
47 "android.hardware.gatekeeper-V1-ndk",
Dan Willemsen3e963f92018-10-31 10:32:32 -070048 "android.hardware.gatekeeper@1.0",
Janis Danisevskis3a1eb672019-03-29 11:14:31 -070049 "libgatekeeper_aidl",
Jiyong Park14869872021-07-27 12:19:00 +090050 "android.security.authorization-ndk",
Dan Willemsen3e963f92018-10-31 10:32:32 -070051 ],
52
53 static_libs: ["libscrypt_static"],
54 include_dirs: ["external/scrypt/lib/crypto"],
Pawan Waghc5c0c302023-04-21 22:04:31 +000055}
56
57cc_binary {
58 name: "gatekeeperd",
59 defaults: [
60 "gatekeeperd_defaults",
61 ],
62 srcs: [
63 "main.cpp",
64 ],
Dan Willemsen3e963f92018-10-31 10:32:32 -070065 init_rc: ["gatekeeperd.rc"],
66}
Janis Danisevskis3a1eb672019-03-29 11:14:31 -070067
68filegroup {
69 name: "gatekeeper_aidl",
70 srcs: [
71 "binder/android/service/gatekeeper/IGateKeeperService.aidl",
72 ],
73 path: "binder",
74}
75
76cc_library_shared {
77 name: "libgatekeeper_aidl",
78 srcs: [
79 ":gatekeeper_aidl",
80 "GateKeeperResponse.cpp",
81 ],
82 aidl: {
83 export_aidl_headers: true,
84 include_dirs: [
85 "system/core/gatekeeperd/binder",
86 "frameworks/base/core/java/",
87 ],
88 },
89 export_include_dirs: ["include"],
90 shared_libs: [
91 "libbase",
92 "libbinder",
93 "libcutils",
94 "liblog",
95 "libutils",
96 ],
97 export_shared_lib_headers: [
98 "libbinder",
99 ],
100}
Pawan Waghc4bd2af2023-04-21 22:39:38 +0000101
102cc_fuzz {
103 name: "gatekeeperd_service_fuzzer",
104 defaults: [
105 "gatekeeperd_defaults",
106 "service_fuzzer_defaults"
107 ],
108 srcs: [
109 "fuzzer/GateKeeperServiceFuzzer.cpp",
110 ],
111 fuzz_config: {
112 cc: [
113 "subrahmanyaman@google.com",
114 "swillden@google.com",
115 ],
116 },
117}