blob: 886706a19dfc175138d482b6ad28f92fddab0930 [file] [log] [blame]
Jeff Sharkeyc493cf92017-10-23 10:39:50 -06001cc_defaults {
2 name: "keystore_defaults",
3
4 cflags: [
5 "-Wall",
6 "-Werror",
7 "-Wextra",
8 "-Wunused",
9 ],
10
11 sanitize: {
12 misc_undefined: ["integer"],
13 },
14
15 clang: true,
16}
17
18cc_binary {
19 name: "keystore",
20 defaults: ["keystore_defaults"],
21
22 srcs: [
23 ":IKeyAttestationApplicationIdProvider.aidl",
24 "auth_token_table.cpp",
25 "blob.cpp",
26 "entropy.cpp",
27 "grant_store.cpp",
28 "key_store_service.cpp",
29 "keyblob_utils.cpp",
30 "keymaster_enforcement.cpp",
31 "keystore.cpp",
32 "keystore_attestation_id.cpp",
33 "keystore_main.cpp",
34 "keystore_utils.cpp",
35 "legacy_keymaster_device_wrapper.cpp",
36 "operation.cpp",
37 "permissions.cpp",
38 "user_state.cpp",
39 ],
40 shared_libs: [
41 "android.hardware.keymaster@3.0",
42 "android.system.wifi.keystore@1.0",
43 "libbinder",
44 "libcrypto",
45 "libcutils",
46 "libhardware",
47 "libhidlbase",
48 "libhidltransport",
49 "libhwbinder",
50 "libkeymaster_messages",
51 "libkeymaster_portable",
52 "libkeymaster_staging",
53 "libkeystore_binder",
54 "liblog",
55 "libselinux",
Jeff Sharkeyc493cf92017-10-23 10:39:50 -060056 "libsoftkeymasterdevice",
57 "libutils",
58 "libwifikeystorehal",
59 ],
60 init_rc: ["keystore.rc"],
61 aidl: {
62 include_dirs: ["frameworks/base/core/java/"],
63 },
64
65 product_variables: {
66 pdk: {
67 enabled: false,
68 },
69 },
70}
71
72cc_binary {
73 name: "keystore_cli",
74 defaults: ["keystore_defaults"],
75 tags: ["debug"],
76
77 srcs: ["keystore_cli.cpp"],
78 shared_libs: [
79 "android.hardware.keymaster@3.0",
80 "libbinder",
81 "libcrypto",
82 "libcutils",
83 "libhidlbase",
84 "libhwbinder",
85 "libkeystore_binder",
86 "liblog",
87 "libutils",
88 ],
89}
90
91cc_binary {
92 name: "keystore_cli_v2",
93 defaults: ["keystore_defaults"],
94 tags: ["debug"],
95
96 cflags: [
97 "-DKEYMASTER_NAME_TAGS",
98 "-Wno-unused-parameter",
99 ],
100 srcs: ["keystore_cli_v2.cpp"],
101 shared_libs: [
102 "android.hardware.keymaster@3.0",
103 "libchrome",
104 "libhidlbase",
105 "libhwbinder",
106 "libkeystore_binder",
107 ],
108
109 local_include_dirs: ["include"],
110}
111
112// Library for keystore clients
113cc_library_shared {
114 name: "libkeystore_binder",
115 defaults: ["keystore_defaults"],
116
117 srcs: [
Dmitry Dementyeva447b3c2017-10-27 23:09:53 -0700118 ":IKeystoreService.aidl",
Jeff Sharkeyc493cf92017-10-23 10:39:50 -0600119 "KeyAttestationApplicationId.cpp",
120 "KeyAttestationPackageInfo.cpp",
Dmitry Dementyeva447b3c2017-10-27 23:09:53 -0700121 "KeymasterArguments.cpp",
122 "KeystoreArguments.cpp",
123 "OperationResult.cpp",
Jeff Sharkeyc493cf92017-10-23 10:39:50 -0600124 "Signature.cpp",
125 "authorization_set.cpp",
126 "keyblob_utils.cpp",
127 "keystore_aidl_hidl_marshalling_utils.cpp",
128 "keystore_client.proto",
129 "keystore_client_impl.cpp",
130 "keystore_get.cpp",
131 "keystore_tags_utils.cpp",
132 ],
133 shared_libs: [
134 "android.hardware.keymaster@3.0",
135 "libbinder",
136 "libhidlbase",
137 "libhwbinder",
138 "liblog",
139 "libprotobuf-cpp-lite",
140 "libutils",
141 ],
142
143 proto: {
144 type: "lite",
145 export_proto_headers: true,
146 },
Dmitry Dementyeva447b3c2017-10-27 23:09:53 -0700147 aidl: {
148 export_aidl_headers: true,
149 include_dirs: ["frameworks/base/core/java/"],
150 },
Jeff Sharkeyc493cf92017-10-23 10:39:50 -0600151 export_include_dirs: ["include"],
152 export_shared_lib_headers: [
153 "android.hardware.keymaster@3.0",
154 "libbinder",
155 "libhidlbase",
156 "libhwbinder",
157 ],
158}
159
160// Library for keystore clients using the WiFi HIDL interface
161cc_library_shared {
162 name: "libkeystore-wifi-hidl",
163 defaults: ["keystore_defaults"],
164
165 srcs: ["keystore_get_wifi_hidl.cpp"],
166 shared_libs: [
167 "android.system.wifi.keystore@1.0",
168 "libbase",
169 "libhidlbase",
170 "libhidltransport",
171 "liblog",
172 "libutils",
173 ],
174
175 export_include_dirs: ["include"],
176
177 vendor: true,
178}
179
180// Library for unit tests
181cc_library_static {
182 name: "libkeystore_test",
183 defaults: ["keystore_defaults"],
184
185 srcs: ["auth_token_table.cpp"],
186 static_libs: ["libgtest_main"],
187 shared_libs: [
188 "android.hardware.keymaster@3.0",
189 "libhidlbase",
190 "libhwbinder",
191 "libkeymaster_messages",
192 "libutils",
193 ],
194 export_shared_lib_headers: [
195 "android.hardware.keymaster@3.0",
196 "libhidlbase",
197 "libhwbinder",
198 ],
199
200 export_include_dirs: ["include"],
201}
202
203subdirs = ["tests"]