blob: b249013ba217c7eb2553488163f1a57b398a5d04 [file] [log] [blame]
Steven Morelandc5c19372017-05-05 17:16:10 -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
Roberto Pereira24261972018-07-30 14:54:58 -070021cc_binary {
22 name: "android.hardware.keymaster@3.0-service.trusty",
23 defaults: ["hidl_defaults"],
24 relative_install_path: "hw",
25 vendor: true,
26 init_rc: ["3.0/android.hardware.keymaster@3.0-service.trusty.rc"],
27 srcs: [
28 "3.0/service.cpp",
29 "3.0/TrustyKeymaster3Device.cpp",
30 "ipc/trusty_keymaster_ipc.cpp",
31 "TrustyKeymaster.cpp",
32 ],
33
34 local_include_dirs: ["include"],
35
36 shared_libs: [
37 "liblog",
38 "libcutils",
39 "libdl",
40 "libbase",
41 "libutils",
42 "libhardware",
43 "libhidlbase",
Roberto Pereira24261972018-07-30 14:54:58 -070044 "libtrusty",
45 "libkeymaster_messages",
46 "libkeymaster3device",
47 "android.hardware.keymaster@3.0"
48 ],
49}
Matthew Maurerb321b412019-03-18 13:59:28 -070050
51cc_binary {
52 name: "android.hardware.keymaster@4.0-service.trusty",
53 defaults: ["hidl_defaults"],
54 relative_install_path: "hw",
55 vendor: true,
56 init_rc: ["4.0/android.hardware.keymaster@4.0-service.trusty.rc"],
57 srcs: [
58 "4.0/service.cpp",
59 "4.0/TrustyKeymaster4Device.cpp",
60 "ipc/trusty_keymaster_ipc.cpp",
61 "TrustyKeymaster.cpp",
62 ],
63
64 local_include_dirs: ["include"],
65
66 shared_libs: [
67 "liblog",
68 "libcutils",
69 "libdl",
70 "libbase",
71 "libutils",
72 "libhardware",
73 "libhidlbase",
Matthew Maurerb321b412019-03-18 13:59:28 -070074 "libtrusty",
75 "libkeymaster_messages",
76 "libkeymaster4",
77 "android.hardware.keymaster@4.0"
78 ],
Matthew Maurerc649ca52019-08-26 10:47:51 -070079
80 vintf_fragments: ["4.0/android.hardware.keymaster@4.0-service.trusty.xml"],
Matthew Maurerb321b412019-03-18 13:59:28 -070081}
Arve Hjønnevåg0c32a252020-09-01 16:38:40 -070082
Shawn Willdenfed81d82021-04-22 13:32:56 -060083cc_binary {
84 name: "android.hardware.security.keymint-service.trusty",
85 relative_install_path: "hw",
86 init_rc: ["keymint/android.hardware.security.keymint-service.trusty.rc"],
87 vintf_fragments: [
88 "keymint/android.hardware.security.keymint-service.trusty.xml",
89 ],
90 vendor: true,
91 cflags: [
92 "-Wall",
93 "-Wextra",
94 ],
95 local_include_dirs: [
96 "include",
97 ],
98 srcs: [
99 "TrustyKeymaster.cpp",
100 "ipc/trusty_keymaster_ipc.cpp",
101 "keymint/TrustyKeyMintDevice.cpp",
102 "keymint/TrustyKeyMintOperation.cpp",
Max Bires95b5b042021-06-09 17:40:54 -0700103 "keymint/TrustyRemotelyProvisionedComponentDevice.cpp",
Shawn Willdenfed81d82021-04-22 13:32:56 -0600104 "keymint/TrustySecureClock.cpp",
105 "keymint/TrustySharedSecret.cpp",
106 "keymint/service.cpp",
107 ],
David Drysdalec5b7d172021-11-22 15:15:57 +0000108 defaults: [
109 "keymint_use_latest_hal_aidl_ndk_shared",
110 ],
Shawn Willdenfed81d82021-04-22 13:32:56 -0600111 shared_libs: [
Seth Moore8fbbf062022-11-04 17:39:05 +0000112 "android.hardware.security.rkp-V3-ndk",
Jiyong Park14869872021-07-27 12:19:00 +0900113 "android.hardware.security.secureclock-V1-ndk",
114 "android.hardware.security.sharedsecret-V1-ndk",
Shawn Willdenfed81d82021-04-22 13:32:56 -0600115 "lib_android_keymaster_keymint_utils",
116 "libbase",
117 "libbinder_ndk",
118 "libhardware",
119 "libkeymaster_messages",
120 "libkeymint",
121 "liblog",
122 "libtrusty",
Marco Nelissen08fec492021-09-03 17:41:04 -0700123 "libutils",
Shawn Willdenfed81d82021-04-22 13:32:56 -0600124 ],
125 required: [
Shawn Willdenfed81d82021-04-22 13:32:56 -0600126 "android.hardware.hardware_keystore.xml",
127 ],
128}
129
Arve Hjønnevåg0c32a252020-09-01 16:38:40 -0700130prebuilt_etc {
131 name: "keymaster_soft_attestation_keys.xml",
132 vendor: true,
133 src: "set_attestation_key/keymaster_soft_attestation_keys.xml",
134}
135
Max Biresa9362a42021-06-15 12:13:04 -0700136cc_library {
137 name: "libtrusty_ipc",
138 vendor: true,
139 srcs: ["ipc/trusty_keymaster_ipc.cpp"],
140 local_include_dirs: ["include"],
141 shared_libs: [
142 "libc",
143 "libcrypto",
144 "liblog",
145 "libtrusty",
146 "libhardware",
147 "libkeymaster_messages",
Marco Nelissen08fec492021-09-03 17:41:04 -0700148 "libutils",
Max Biresa9362a42021-06-15 12:13:04 -0700149 "libxml2",
150 ],
151 export_include_dirs: ["include"],
152 cflags: [
153 "-Wall",
154 "-Werror",
155 ],
156}
157
Arve Hjønnevåg0c32a252020-09-01 16:38:40 -0700158cc_binary {
159 name: "trusty_keymaster_set_attestation_key",
160 vendor: true,
161
162 srcs: [
163 "set_attestation_key/set_attestation_key.cpp",
164 "ipc/trusty_keymaster_ipc.cpp",
165 ],
166
167 local_include_dirs: ["include"],
168
169 shared_libs: [
170 "libc",
171 "libcrypto",
172 "liblog",
173 "libtrusty",
174 "libhardware",
175 "libkeymaster_messages",
Marco Nelissen08fec492021-09-03 17:41:04 -0700176 "libutils",
Arve Hjønnevåg0c32a252020-09-01 16:38:40 -0700177 "libxml2",
178 ],
179 cflags: [
180 "-Wall",
181 "-Werror",
182 ],
183}
David Drysdale2ac6aed2023-01-09 17:44:35 +0000184
185cc_binary {
186 name: "trusty_keymaster_set_attestation_ids",
187 vendor: true,
188
189 srcs: [
190 "set_attestation_ids/set_attestation_ids.cpp",
191 "ipc/trusty_keymaster_ipc.cpp",
192 ],
193
194 local_include_dirs: ["include"],
195
196 shared_libs: [
197 "libbase",
198 "libc",
199 "libcrypto",
200 "liblog",
201 "libtrusty",
202 "libhardware",
203 "libkeymaster_messages",
204 "libutils",
205 ],
206 cflags: [
207 "-Wall",
208 "-Werror",
209 ],
210}