xref: /aosp_15_r20/build/make/tools/releasetools/Android.bp (revision 9e94795a3d4ef5c1d47486f9a02bb378756cea8a)
1*9e94795aSAndroid Build Coastguard Worker// Copyright (C) 2019 The Android Open Source Project
2*9e94795aSAndroid Build Coastguard Worker//
3*9e94795aSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*9e94795aSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*9e94795aSAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*9e94795aSAndroid Build Coastguard Worker//
7*9e94795aSAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*9e94795aSAndroid Build Coastguard Worker//
9*9e94795aSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*9e94795aSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*9e94795aSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*9e94795aSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*9e94795aSAndroid Build Coastguard Worker// limitations under the License.
14*9e94795aSAndroid Build Coastguard Worker
15*9e94795aSAndroid Build Coastguard Worker//
16*9e94795aSAndroid Build Coastguard Worker// Module-specific defaults.
17*9e94795aSAndroid Build Coastguard Worker//
18*9e94795aSAndroid Build Coastguard Worker// For module X, if we need to build it both as a library and an executable:
19*9e94795aSAndroid Build Coastguard Worker//  - A default rule `releasetools_X_defaults` is created, which lists `srcs`, `libs` and
20*9e94795aSAndroid Build Coastguard Worker//    `required` properties.
21*9e94795aSAndroid Build Coastguard Worker//  - `python_library_host` and `python_binary_host` are created by listing
22*9e94795aSAndroid Build Coastguard Worker//    `releasetools_X_defaults` in their defaults.
23*9e94795aSAndroid Build Coastguard Worker//
24*9e94795aSAndroid Build Coastguard Worker
25*9e94795aSAndroid Build Coastguard Workerpackage {
26*9e94795aSAndroid Build Coastguard Worker    default_applicable_licenses: ["Android-Apache-2.0"],
27*9e94795aSAndroid Build Coastguard Worker}
28*9e94795aSAndroid Build Coastguard Worker
29*9e94795aSAndroid Build Coastguard Workerpython_defaults {
30*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_add_img_to_target_files_defaults",
31*9e94795aSAndroid Build Coastguard Worker    srcs: [
32*9e94795aSAndroid Build Coastguard Worker        "add_img_to_target_files.py",
33*9e94795aSAndroid Build Coastguard Worker    ],
34*9e94795aSAndroid Build Coastguard Worker    libs: [
35*9e94795aSAndroid Build Coastguard Worker        "ota_metadata_proto",
36*9e94795aSAndroid Build Coastguard Worker        "releasetools_apex_utils",
37*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_image",
38*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_super_image",
39*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
40*9e94795aSAndroid Build Coastguard Worker        "libavbtool",
41*9e94795aSAndroid Build Coastguard Worker    ],
42*9e94795aSAndroid Build Coastguard Worker    required: [
43*9e94795aSAndroid Build Coastguard Worker        "care_map_generator",
44*9e94795aSAndroid Build Coastguard Worker    ],
45*9e94795aSAndroid Build Coastguard Worker}
46*9e94795aSAndroid Build Coastguard Worker
47*9e94795aSAndroid Build Coastguard Workerpython_defaults {
48*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_build_image_defaults",
49*9e94795aSAndroid Build Coastguard Worker    srcs: [
50*9e94795aSAndroid Build Coastguard Worker        "build_image.py",
51*9e94795aSAndroid Build Coastguard Worker    ],
52*9e94795aSAndroid Build Coastguard Worker    libs: [
53*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
54*9e94795aSAndroid Build Coastguard Worker        "releasetools_fsverity_metadata_generator",
55*9e94795aSAndroid Build Coastguard Worker        "releasetools_verity_utils",
56*9e94795aSAndroid Build Coastguard Worker    ],
57*9e94795aSAndroid Build Coastguard Worker    required: [
58*9e94795aSAndroid Build Coastguard Worker        "blk_alloc_to_base_fs",
59*9e94795aSAndroid Build Coastguard Worker        "e2fsck",
60*9e94795aSAndroid Build Coastguard Worker        "fsck.erofs",
61*9e94795aSAndroid Build Coastguard Worker        "img2simg",
62*9e94795aSAndroid Build Coastguard Worker        "mkfs.erofs",
63*9e94795aSAndroid Build Coastguard Worker        "mkuserimg_mke2fs",
64*9e94795aSAndroid Build Coastguard Worker        "simg2img",
65*9e94795aSAndroid Build Coastguard Worker        "tune2fs",
66*9e94795aSAndroid Build Coastguard Worker        "mkf2fsuserimg",
67*9e94795aSAndroid Build Coastguard Worker        "fsck.f2fs",
68*9e94795aSAndroid Build Coastguard Worker    ],
69*9e94795aSAndroid Build Coastguard Worker}
70*9e94795aSAndroid Build Coastguard Worker
71*9e94795aSAndroid Build Coastguard Workerpython_defaults {
72*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_build_super_image_defaults",
73*9e94795aSAndroid Build Coastguard Worker    srcs: [
74*9e94795aSAndroid Build Coastguard Worker        "build_super_image.py",
75*9e94795aSAndroid Build Coastguard Worker    ],
76*9e94795aSAndroid Build Coastguard Worker    libs: [
77*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
78*9e94795aSAndroid Build Coastguard Worker    ],
79*9e94795aSAndroid Build Coastguard Worker}
80*9e94795aSAndroid Build Coastguard Worker
81*9e94795aSAndroid Build Coastguard Workerpython_defaults {
82*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_img_from_target_files_defaults",
83*9e94795aSAndroid Build Coastguard Worker    srcs: [
84*9e94795aSAndroid Build Coastguard Worker        "img_from_target_files.py",
85*9e94795aSAndroid Build Coastguard Worker    ],
86*9e94795aSAndroid Build Coastguard Worker    libs: [
87*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_super_image",
88*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
89*9e94795aSAndroid Build Coastguard Worker    ],
90*9e94795aSAndroid Build Coastguard Worker}
91*9e94795aSAndroid Build Coastguard Worker
92*9e94795aSAndroid Build Coastguard Workerpython_defaults {
93*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_check_target_files_vintf_defaults",
94*9e94795aSAndroid Build Coastguard Worker    srcs: [
95*9e94795aSAndroid Build Coastguard Worker        "check_target_files_vintf.py",
96*9e94795aSAndroid Build Coastguard Worker    ],
97*9e94795aSAndroid Build Coastguard Worker    libs: [
98*9e94795aSAndroid Build Coastguard Worker        "apex_manifest",
99*9e94795aSAndroid Build Coastguard Worker        "releasetools_apex_utils",
100*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
101*9e94795aSAndroid Build Coastguard Worker    ],
102*9e94795aSAndroid Build Coastguard Worker    required: [
103*9e94795aSAndroid Build Coastguard Worker        "apexd_host",
104*9e94795aSAndroid Build Coastguard Worker        "checkvintf",
105*9e94795aSAndroid Build Coastguard Worker    ],
106*9e94795aSAndroid Build Coastguard Worker}
107*9e94795aSAndroid Build Coastguard Worker
108*9e94795aSAndroid Build Coastguard Workerpython_library_host {
109*9e94795aSAndroid Build Coastguard Worker    name: "ota_metadata_proto",
110*9e94795aSAndroid Build Coastguard Worker    srcs: [
111*9e94795aSAndroid Build Coastguard Worker        "ota_metadata.proto",
112*9e94795aSAndroid Build Coastguard Worker    ],
113*9e94795aSAndroid Build Coastguard Worker    proto: {
114*9e94795aSAndroid Build Coastguard Worker        canonical_path_from_root: false,
115*9e94795aSAndroid Build Coastguard Worker    },
116*9e94795aSAndroid Build Coastguard Worker}
117*9e94795aSAndroid Build Coastguard Worker
118*9e94795aSAndroid Build Coastguard Workercc_library_static {
119*9e94795aSAndroid Build Coastguard Worker    name: "ota_metadata_proto_cc",
120*9e94795aSAndroid Build Coastguard Worker    srcs: [
121*9e94795aSAndroid Build Coastguard Worker        "ota_metadata.proto",
122*9e94795aSAndroid Build Coastguard Worker    ],
123*9e94795aSAndroid Build Coastguard Worker    host_supported: true,
124*9e94795aSAndroid Build Coastguard Worker    recovery_available: true,
125*9e94795aSAndroid Build Coastguard Worker    proto: {
126*9e94795aSAndroid Build Coastguard Worker        canonical_path_from_root: false,
127*9e94795aSAndroid Build Coastguard Worker        type: "lite",
128*9e94795aSAndroid Build Coastguard Worker        export_proto_headers: true,
129*9e94795aSAndroid Build Coastguard Worker    },
130*9e94795aSAndroid Build Coastguard Worker}
131*9e94795aSAndroid Build Coastguard Worker
132*9e94795aSAndroid Build Coastguard Workerjava_library_static {
133*9e94795aSAndroid Build Coastguard Worker    name: "ota_metadata_proto_java",
134*9e94795aSAndroid Build Coastguard Worker    host_supported: true,
135*9e94795aSAndroid Build Coastguard Worker    proto: {
136*9e94795aSAndroid Build Coastguard Worker        type: "nano",
137*9e94795aSAndroid Build Coastguard Worker    },
138*9e94795aSAndroid Build Coastguard Worker    srcs: ["ota_metadata.proto"],
139*9e94795aSAndroid Build Coastguard Worker    sdk_version: "9",
140*9e94795aSAndroid Build Coastguard Worker    target: {
141*9e94795aSAndroid Build Coastguard Worker        android: {
142*9e94795aSAndroid Build Coastguard Worker            jarjar_rules: "jarjar-rules.txt",
143*9e94795aSAndroid Build Coastguard Worker        },
144*9e94795aSAndroid Build Coastguard Worker        host: {
145*9e94795aSAndroid Build Coastguard Worker            static_libs: ["libprotobuf-java-nano"],
146*9e94795aSAndroid Build Coastguard Worker        },
147*9e94795aSAndroid Build Coastguard Worker    },
148*9e94795aSAndroid Build Coastguard Worker    visibility: ["//frameworks/base:__subpackages__"],
149*9e94795aSAndroid Build Coastguard Worker}
150*9e94795aSAndroid Build Coastguard Worker
151*9e94795aSAndroid Build Coastguard Workerpython_defaults {
152*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_ota_from_target_files_defaults",
153*9e94795aSAndroid Build Coastguard Worker    srcs: [
154*9e94795aSAndroid Build Coastguard Worker        "edify_generator.py",
155*9e94795aSAndroid Build Coastguard Worker        "non_ab_ota.py",
156*9e94795aSAndroid Build Coastguard Worker        "ota_from_target_files.py",
157*9e94795aSAndroid Build Coastguard Worker        "target_files_diff.py",
158*9e94795aSAndroid Build Coastguard Worker    ],
159*9e94795aSAndroid Build Coastguard Worker    libs: [
160*9e94795aSAndroid Build Coastguard Worker        "ota_metadata_proto",
161*9e94795aSAndroid Build Coastguard Worker        "releasetools_check_target_files_vintf",
162*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
163*9e94795aSAndroid Build Coastguard Worker        "releasetools_verity_utils",
164*9e94795aSAndroid Build Coastguard Worker        "apex_manifest",
165*9e94795aSAndroid Build Coastguard Worker        "care_map_proto_py",
166*9e94795aSAndroid Build Coastguard Worker        "ota_utils_lib",
167*9e94795aSAndroid Build Coastguard Worker    ],
168*9e94795aSAndroid Build Coastguard Worker    required: [
169*9e94795aSAndroid Build Coastguard Worker        "apexd_host",
170*9e94795aSAndroid Build Coastguard Worker        "brillo_update_payload",
171*9e94795aSAndroid Build Coastguard Worker        "checkvintf",
172*9e94795aSAndroid Build Coastguard Worker        "lz4",
173*9e94795aSAndroid Build Coastguard Worker        "toybox",
174*9e94795aSAndroid Build Coastguard Worker        "unpack_bootimg",
175*9e94795aSAndroid Build Coastguard Worker        "deapexer",
176*9e94795aSAndroid Build Coastguard Worker    ],
177*9e94795aSAndroid Build Coastguard Worker    target: {
178*9e94795aSAndroid Build Coastguard Worker        darwin: {
179*9e94795aSAndroid Build Coastguard Worker            // required module "brillo_update_payload" is disabled on darwin
180*9e94795aSAndroid Build Coastguard Worker            enabled: false,
181*9e94795aSAndroid Build Coastguard Worker        },
182*9e94795aSAndroid Build Coastguard Worker    },
183*9e94795aSAndroid Build Coastguard Worker}
184*9e94795aSAndroid Build Coastguard Worker
185*9e94795aSAndroid Build Coastguard Worker//
186*9e94795aSAndroid Build Coastguard Worker// Host libraries.
187*9e94795aSAndroid Build Coastguard Worker//
188*9e94795aSAndroid Build Coastguard Worker
189*9e94795aSAndroid Build Coastguard Workerpython_library_host {
190*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_add_img_to_target_files",
191*9e94795aSAndroid Build Coastguard Worker    defaults: [
192*9e94795aSAndroid Build Coastguard Worker        "releasetools_add_img_to_target_files_defaults",
193*9e94795aSAndroid Build Coastguard Worker    ],
194*9e94795aSAndroid Build Coastguard Worker}
195*9e94795aSAndroid Build Coastguard Worker
196*9e94795aSAndroid Build Coastguard Workerpython_library_host {
197*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_apex_utils",
198*9e94795aSAndroid Build Coastguard Worker    srcs: [
199*9e94795aSAndroid Build Coastguard Worker        "apex_utils.py",
200*9e94795aSAndroid Build Coastguard Worker    ],
201*9e94795aSAndroid Build Coastguard Worker    libs: [
202*9e94795aSAndroid Build Coastguard Worker        "apex_manifest",
203*9e94795aSAndroid Build Coastguard Worker        "ota_metadata_proto",
204*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
205*9e94795aSAndroid Build Coastguard Worker    ],
206*9e94795aSAndroid Build Coastguard Worker}
207*9e94795aSAndroid Build Coastguard Worker
208*9e94795aSAndroid Build Coastguard Workerpython_library_host {
209*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_build_image",
210*9e94795aSAndroid Build Coastguard Worker    defaults: [
211*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_image_defaults",
212*9e94795aSAndroid Build Coastguard Worker    ],
213*9e94795aSAndroid Build Coastguard Worker}
214*9e94795aSAndroid Build Coastguard Worker
215*9e94795aSAndroid Build Coastguard Workerpython_library_host {
216*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_build_super_image",
217*9e94795aSAndroid Build Coastguard Worker    defaults: [
218*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_super_image_defaults",
219*9e94795aSAndroid Build Coastguard Worker    ],
220*9e94795aSAndroid Build Coastguard Worker}
221*9e94795aSAndroid Build Coastguard Worker
222*9e94795aSAndroid Build Coastguard Workerpython_library_host {
223*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_check_target_files_vintf",
224*9e94795aSAndroid Build Coastguard Worker    defaults: [
225*9e94795aSAndroid Build Coastguard Worker        "releasetools_check_target_files_vintf_defaults",
226*9e94795aSAndroid Build Coastguard Worker    ],
227*9e94795aSAndroid Build Coastguard Worker}
228*9e94795aSAndroid Build Coastguard Worker
229*9e94795aSAndroid Build Coastguard Workerpython_library_host {
230*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_common",
231*9e94795aSAndroid Build Coastguard Worker    srcs: [
232*9e94795aSAndroid Build Coastguard Worker        "blockimgdiff.py",
233*9e94795aSAndroid Build Coastguard Worker        "common.py",
234*9e94795aSAndroid Build Coastguard Worker        "images.py",
235*9e94795aSAndroid Build Coastguard Worker        "rangelib.py",
236*9e94795aSAndroid Build Coastguard Worker        "sparse_img.py",
237*9e94795aSAndroid Build Coastguard Worker    ],
238*9e94795aSAndroid Build Coastguard Worker    data: [
239*9e94795aSAndroid Build Coastguard Worker        ":zip2zip",
240*9e94795aSAndroid Build Coastguard Worker    ],
241*9e94795aSAndroid Build Coastguard Worker    // Only the tools that are referenced directly are listed as required modules. For example,
242*9e94795aSAndroid Build Coastguard Worker    // `avbtool` is not here, as the script always uses the one from info_dict['avb_avbtool'].
243*9e94795aSAndroid Build Coastguard Worker    required: [
244*9e94795aSAndroid Build Coastguard Worker        "aapt2",
245*9e94795aSAndroid Build Coastguard Worker        "boot_signer",
246*9e94795aSAndroid Build Coastguard Worker        "brotli",
247*9e94795aSAndroid Build Coastguard Worker        "bsdiff",
248*9e94795aSAndroid Build Coastguard Worker        "lz4",
249*9e94795aSAndroid Build Coastguard Worker        "mkbootfs",
250*9e94795aSAndroid Build Coastguard Worker        "signapk",
251*9e94795aSAndroid Build Coastguard Worker        "toybox",
252*9e94795aSAndroid Build Coastguard Worker        "unpack_bootimg",
253*9e94795aSAndroid Build Coastguard Worker    ],
254*9e94795aSAndroid Build Coastguard Worker}
255*9e94795aSAndroid Build Coastguard Worker
256*9e94795aSAndroid Build Coastguard Workerpython_library_host {
257*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_img_from_target_files",
258*9e94795aSAndroid Build Coastguard Worker    defaults: [
259*9e94795aSAndroid Build Coastguard Worker        "releasetools_img_from_target_files_defaults",
260*9e94795aSAndroid Build Coastguard Worker    ],
261*9e94795aSAndroid Build Coastguard Worker}
262*9e94795aSAndroid Build Coastguard Worker
263*9e94795aSAndroid Build Coastguard Workerpython_library_host {
264*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_ota_from_target_files",
265*9e94795aSAndroid Build Coastguard Worker    defaults: [
266*9e94795aSAndroid Build Coastguard Worker        "releasetools_ota_from_target_files_defaults",
267*9e94795aSAndroid Build Coastguard Worker    ],
268*9e94795aSAndroid Build Coastguard Worker}
269*9e94795aSAndroid Build Coastguard Worker
270*9e94795aSAndroid Build Coastguard Workerpython_library_host {
271*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_fsverity_metadata_generator",
272*9e94795aSAndroid Build Coastguard Worker    srcs: [
273*9e94795aSAndroid Build Coastguard Worker        "fsverity_metadata_generator.py",
274*9e94795aSAndroid Build Coastguard Worker    ],
275*9e94795aSAndroid Build Coastguard Worker    libs: [
276*9e94795aSAndroid Build Coastguard Worker        "fsverity_digests_proto_python",
277*9e94795aSAndroid Build Coastguard Worker    ],
278*9e94795aSAndroid Build Coastguard Worker}
279*9e94795aSAndroid Build Coastguard Worker
280*9e94795aSAndroid Build Coastguard Workerpython_library_host {
281*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_verity_utils",
282*9e94795aSAndroid Build Coastguard Worker    srcs: [
283*9e94795aSAndroid Build Coastguard Worker        "verity_utils.py",
284*9e94795aSAndroid Build Coastguard Worker    ],
285*9e94795aSAndroid Build Coastguard Worker    required: [
286*9e94795aSAndroid Build Coastguard Worker        "append2simg",
287*9e94795aSAndroid Build Coastguard Worker        "build_verity_metadata",
288*9e94795aSAndroid Build Coastguard Worker        "build_verity_tree",
289*9e94795aSAndroid Build Coastguard Worker        "fec",
290*9e94795aSAndroid Build Coastguard Worker    ],
291*9e94795aSAndroid Build Coastguard Worker}
292*9e94795aSAndroid Build Coastguard Worker
293*9e94795aSAndroid Build Coastguard Worker//
294*9e94795aSAndroid Build Coastguard Worker// Host binaries.
295*9e94795aSAndroid Build Coastguard Worker//
296*9e94795aSAndroid Build Coastguard Worker
297*9e94795aSAndroid Build Coastguard Workerpython_defaults {
298*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_binary_defaults",
299*9e94795aSAndroid Build Coastguard Worker    version: {
300*9e94795aSAndroid Build Coastguard Worker        py3: {
301*9e94795aSAndroid Build Coastguard Worker            embedded_launcher: true,
302*9e94795aSAndroid Build Coastguard Worker        },
303*9e94795aSAndroid Build Coastguard Worker    },
304*9e94795aSAndroid Build Coastguard Worker    // TODO (b/140144201) Build imgdiff from releasetools_common
305*9e94795aSAndroid Build Coastguard Worker    required: [
306*9e94795aSAndroid Build Coastguard Worker        "aapt2",
307*9e94795aSAndroid Build Coastguard Worker        "boot_signer",
308*9e94795aSAndroid Build Coastguard Worker        "brotli",
309*9e94795aSAndroid Build Coastguard Worker        "bsdiff",
310*9e94795aSAndroid Build Coastguard Worker        "deapexer",
311*9e94795aSAndroid Build Coastguard Worker        "lz4",
312*9e94795aSAndroid Build Coastguard Worker        "mkbootfs",
313*9e94795aSAndroid Build Coastguard Worker        "signapk",
314*9e94795aSAndroid Build Coastguard Worker        "toybox",
315*9e94795aSAndroid Build Coastguard Worker        "unpack_bootimg",
316*9e94795aSAndroid Build Coastguard Worker    ],
317*9e94795aSAndroid Build Coastguard Worker}
318*9e94795aSAndroid Build Coastguard Worker
319*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
320*9e94795aSAndroid Build Coastguard Worker    name: "add_img_to_target_files",
321*9e94795aSAndroid Build Coastguard Worker    defaults: [
322*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
323*9e94795aSAndroid Build Coastguard Worker        "releasetools_add_img_to_target_files_defaults",
324*9e94795aSAndroid Build Coastguard Worker    ],
325*9e94795aSAndroid Build Coastguard Worker}
326*9e94795aSAndroid Build Coastguard Worker
327*9e94795aSAndroid Build Coastguard Workerpython_library_host {
328*9e94795aSAndroid Build Coastguard Worker    name: "ota_utils_lib",
329*9e94795aSAndroid Build Coastguard Worker    srcs: [
330*9e94795aSAndroid Build Coastguard Worker        "ota_utils.py",
331*9e94795aSAndroid Build Coastguard Worker        "payload_signer.py",
332*9e94795aSAndroid Build Coastguard Worker        "ota_signing_utils.py",
333*9e94795aSAndroid Build Coastguard Worker    ],
334*9e94795aSAndroid Build Coastguard Worker    libs: [
335*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
336*9e94795aSAndroid Build Coastguard Worker    ],
337*9e94795aSAndroid Build Coastguard Worker}
338*9e94795aSAndroid Build Coastguard Worker
339*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
340*9e94795aSAndroid Build Coastguard Worker    name: "merge_ota",
341*9e94795aSAndroid Build Coastguard Worker    version: {
342*9e94795aSAndroid Build Coastguard Worker        py3: {
343*9e94795aSAndroid Build Coastguard Worker            embedded_launcher: true,
344*9e94795aSAndroid Build Coastguard Worker        },
345*9e94795aSAndroid Build Coastguard Worker    },
346*9e94795aSAndroid Build Coastguard Worker    srcs: [
347*9e94795aSAndroid Build Coastguard Worker        "merge_ota.py",
348*9e94795aSAndroid Build Coastguard Worker    ],
349*9e94795aSAndroid Build Coastguard Worker    libs: [
350*9e94795aSAndroid Build Coastguard Worker        "ota_metadata_proto",
351*9e94795aSAndroid Build Coastguard Worker        "update_payload",
352*9e94795aSAndroid Build Coastguard Worker        "care_map_proto_py",
353*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
354*9e94795aSAndroid Build Coastguard Worker        "ota_utils_lib",
355*9e94795aSAndroid Build Coastguard Worker    ],
356*9e94795aSAndroid Build Coastguard Worker}
357*9e94795aSAndroid Build Coastguard Worker
358*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
359*9e94795aSAndroid Build Coastguard Worker    name: "create_brick_ota",
360*9e94795aSAndroid Build Coastguard Worker    version: {
361*9e94795aSAndroid Build Coastguard Worker        py3: {
362*9e94795aSAndroid Build Coastguard Worker            embedded_launcher: true,
363*9e94795aSAndroid Build Coastguard Worker        },
364*9e94795aSAndroid Build Coastguard Worker    },
365*9e94795aSAndroid Build Coastguard Worker    srcs: [
366*9e94795aSAndroid Build Coastguard Worker        "create_brick_ota.py",
367*9e94795aSAndroid Build Coastguard Worker    ],
368*9e94795aSAndroid Build Coastguard Worker    libs: [
369*9e94795aSAndroid Build Coastguard Worker        "ota_utils_lib",
370*9e94795aSAndroid Build Coastguard Worker    ],
371*9e94795aSAndroid Build Coastguard Worker    required: [
372*9e94795aSAndroid Build Coastguard Worker        "signapk",
373*9e94795aSAndroid Build Coastguard Worker    ],
374*9e94795aSAndroid Build Coastguard Worker}
375*9e94795aSAndroid Build Coastguard Worker
376*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
377*9e94795aSAndroid Build Coastguard Worker    name: "build_image",
378*9e94795aSAndroid Build Coastguard Worker    defaults: [
379*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
380*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_image_defaults",
381*9e94795aSAndroid Build Coastguard Worker    ],
382*9e94795aSAndroid Build Coastguard Worker}
383*9e94795aSAndroid Build Coastguard Worker
384*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
385*9e94795aSAndroid Build Coastguard Worker    name: "build_super_image",
386*9e94795aSAndroid Build Coastguard Worker    defaults: [
387*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
388*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_super_image_defaults",
389*9e94795aSAndroid Build Coastguard Worker    ],
390*9e94795aSAndroid Build Coastguard Worker}
391*9e94795aSAndroid Build Coastguard Worker
392*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
393*9e94795aSAndroid Build Coastguard Worker    name: "check_partition_sizes",
394*9e94795aSAndroid Build Coastguard Worker    srcs: [
395*9e94795aSAndroid Build Coastguard Worker        "check_partition_sizes.py",
396*9e94795aSAndroid Build Coastguard Worker    ],
397*9e94795aSAndroid Build Coastguard Worker    libs: [
398*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
399*9e94795aSAndroid Build Coastguard Worker    ],
400*9e94795aSAndroid Build Coastguard Worker    defaults: [
401*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
402*9e94795aSAndroid Build Coastguard Worker    ],
403*9e94795aSAndroid Build Coastguard Worker}
404*9e94795aSAndroid Build Coastguard Worker
405*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
406*9e94795aSAndroid Build Coastguard Worker    name: "check_ota_package_signature",
407*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
408*9e94795aSAndroid Build Coastguard Worker    srcs: [
409*9e94795aSAndroid Build Coastguard Worker        "check_ota_package_signature.py",
410*9e94795aSAndroid Build Coastguard Worker    ],
411*9e94795aSAndroid Build Coastguard Worker    libs: [
412*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
413*9e94795aSAndroid Build Coastguard Worker    ],
414*9e94795aSAndroid Build Coastguard Worker    required: [
415*9e94795aSAndroid Build Coastguard Worker        "delta_generator",
416*9e94795aSAndroid Build Coastguard Worker    ],
417*9e94795aSAndroid Build Coastguard Worker    target: {
418*9e94795aSAndroid Build Coastguard Worker        darwin: {
419*9e94795aSAndroid Build Coastguard Worker            // required module "delta_generator" is disabled on darwin
420*9e94795aSAndroid Build Coastguard Worker            enabled: false,
421*9e94795aSAndroid Build Coastguard Worker        },
422*9e94795aSAndroid Build Coastguard Worker    },
423*9e94795aSAndroid Build Coastguard Worker}
424*9e94795aSAndroid Build Coastguard Worker
425*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
426*9e94795aSAndroid Build Coastguard Worker    name: "check_target_files_signatures",
427*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
428*9e94795aSAndroid Build Coastguard Worker    srcs: [
429*9e94795aSAndroid Build Coastguard Worker        "check_target_files_signatures.py",
430*9e94795aSAndroid Build Coastguard Worker    ],
431*9e94795aSAndroid Build Coastguard Worker    libs: [
432*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
433*9e94795aSAndroid Build Coastguard Worker    ],
434*9e94795aSAndroid Build Coastguard Worker    required: [
435*9e94795aSAndroid Build Coastguard Worker        "aapt2",
436*9e94795aSAndroid Build Coastguard Worker    ],
437*9e94795aSAndroid Build Coastguard Worker}
438*9e94795aSAndroid Build Coastguard Worker
439*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
440*9e94795aSAndroid Build Coastguard Worker    name: "check_target_files_vintf",
441*9e94795aSAndroid Build Coastguard Worker    defaults: [
442*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
443*9e94795aSAndroid Build Coastguard Worker        "releasetools_check_target_files_vintf_defaults",
444*9e94795aSAndroid Build Coastguard Worker    ],
445*9e94795aSAndroid Build Coastguard Worker}
446*9e94795aSAndroid Build Coastguard Worker
447*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
448*9e94795aSAndroid Build Coastguard Worker    name: "img_from_target_files",
449*9e94795aSAndroid Build Coastguard Worker    defaults: [
450*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
451*9e94795aSAndroid Build Coastguard Worker        "releasetools_img_from_target_files_defaults",
452*9e94795aSAndroid Build Coastguard Worker    ],
453*9e94795aSAndroid Build Coastguard Worker}
454*9e94795aSAndroid Build Coastguard Worker
455*9e94795aSAndroid Build Coastguard Workerpython_defaults {
456*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_find_shareduid_violation_defaults",
457*9e94795aSAndroid Build Coastguard Worker    srcs: [
458*9e94795aSAndroid Build Coastguard Worker        "find_shareduid_violation.py",
459*9e94795aSAndroid Build Coastguard Worker    ],
460*9e94795aSAndroid Build Coastguard Worker    libs: [
461*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
462*9e94795aSAndroid Build Coastguard Worker    ],
463*9e94795aSAndroid Build Coastguard Worker}
464*9e94795aSAndroid Build Coastguard Worker
465*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
466*9e94795aSAndroid Build Coastguard Worker    name: "find_shareduid_violation",
467*9e94795aSAndroid Build Coastguard Worker    defaults: [
468*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
469*9e94795aSAndroid Build Coastguard Worker        "releasetools_find_shareduid_violation_defaults",
470*9e94795aSAndroid Build Coastguard Worker    ],
471*9e94795aSAndroid Build Coastguard Worker}
472*9e94795aSAndroid Build Coastguard Worker
473*9e94795aSAndroid Build Coastguard Workerpython_library_host {
474*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_find_shareduid_violation",
475*9e94795aSAndroid Build Coastguard Worker    defaults: [
476*9e94795aSAndroid Build Coastguard Worker        "releasetools_find_shareduid_violation_defaults",
477*9e94795aSAndroid Build Coastguard Worker    ],
478*9e94795aSAndroid Build Coastguard Worker}
479*9e94795aSAndroid Build Coastguard Worker
480*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
481*9e94795aSAndroid Build Coastguard Worker    name: "make_recovery_patch",
482*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
483*9e94795aSAndroid Build Coastguard Worker    srcs: [
484*9e94795aSAndroid Build Coastguard Worker        "make_recovery_patch.py",
485*9e94795aSAndroid Build Coastguard Worker    ],
486*9e94795aSAndroid Build Coastguard Worker    libs: [
487*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
488*9e94795aSAndroid Build Coastguard Worker    ],
489*9e94795aSAndroid Build Coastguard Worker}
490*9e94795aSAndroid Build Coastguard Worker
491*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
492*9e94795aSAndroid Build Coastguard Worker    name: "ota_from_target_files",
493*9e94795aSAndroid Build Coastguard Worker    defaults: [
494*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
495*9e94795aSAndroid Build Coastguard Worker        "releasetools_ota_from_target_files_defaults",
496*9e94795aSAndroid Build Coastguard Worker    ],
497*9e94795aSAndroid Build Coastguard Worker}
498*9e94795aSAndroid Build Coastguard Worker
499*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
500*9e94795aSAndroid Build Coastguard Worker    name: "ota_from_raw_img",
501*9e94795aSAndroid Build Coastguard Worker    srcs: [
502*9e94795aSAndroid Build Coastguard Worker        "ota_from_raw_img.py",
503*9e94795aSAndroid Build Coastguard Worker    ],
504*9e94795aSAndroid Build Coastguard Worker    main: "ota_from_raw_img.py",
505*9e94795aSAndroid Build Coastguard Worker    defaults: [
506*9e94795aSAndroid Build Coastguard Worker        "releasetools_binary_defaults",
507*9e94795aSAndroid Build Coastguard Worker    ],
508*9e94795aSAndroid Build Coastguard Worker    required: [
509*9e94795aSAndroid Build Coastguard Worker        "delta_generator",
510*9e94795aSAndroid Build Coastguard Worker    ],
511*9e94795aSAndroid Build Coastguard Worker    libs: [
512*9e94795aSAndroid Build Coastguard Worker        "ota_metadata_proto",
513*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
514*9e94795aSAndroid Build Coastguard Worker        "ota_utils_lib",
515*9e94795aSAndroid Build Coastguard Worker    ],
516*9e94795aSAndroid Build Coastguard Worker}
517*9e94795aSAndroid Build Coastguard Worker
518*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
519*9e94795aSAndroid Build Coastguard Worker    name: "ota_package_parser",
520*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
521*9e94795aSAndroid Build Coastguard Worker    srcs: [
522*9e94795aSAndroid Build Coastguard Worker        "ota_package_parser.py",
523*9e94795aSAndroid Build Coastguard Worker        "rangelib.py",
524*9e94795aSAndroid Build Coastguard Worker    ],
525*9e94795aSAndroid Build Coastguard Worker}
526*9e94795aSAndroid Build Coastguard Worker
527*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
528*9e94795aSAndroid Build Coastguard Worker    name: "sparse_img",
529*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
530*9e94795aSAndroid Build Coastguard Worker    srcs: [
531*9e94795aSAndroid Build Coastguard Worker        "rangelib.py",
532*9e94795aSAndroid Build Coastguard Worker        "sparse_img.py",
533*9e94795aSAndroid Build Coastguard Worker    ],
534*9e94795aSAndroid Build Coastguard Worker}
535*9e94795aSAndroid Build Coastguard Worker
536*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
537*9e94795aSAndroid Build Coastguard Worker    name: "sign_apex",
538*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
539*9e94795aSAndroid Build Coastguard Worker    srcs: [
540*9e94795aSAndroid Build Coastguard Worker        "sign_apex.py",
541*9e94795aSAndroid Build Coastguard Worker    ],
542*9e94795aSAndroid Build Coastguard Worker    libs: [
543*9e94795aSAndroid Build Coastguard Worker        "releasetools_apex_utils",
544*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
545*9e94795aSAndroid Build Coastguard Worker    ],
546*9e94795aSAndroid Build Coastguard Worker}
547*9e94795aSAndroid Build Coastguard Worker
548*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
549*9e94795aSAndroid Build Coastguard Worker    name: "sign_target_files_apks",
550*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
551*9e94795aSAndroid Build Coastguard Worker    srcs: [
552*9e94795aSAndroid Build Coastguard Worker        "sign_target_files_apks.py",
553*9e94795aSAndroid Build Coastguard Worker        "ota_from_raw_img.py",
554*9e94795aSAndroid Build Coastguard Worker    ],
555*9e94795aSAndroid Build Coastguard Worker    libs: [
556*9e94795aSAndroid Build Coastguard Worker        "releasetools_add_img_to_target_files",
557*9e94795aSAndroid Build Coastguard Worker        "releasetools_apex_utils",
558*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
559*9e94795aSAndroid Build Coastguard Worker        "ota_metadata_proto",
560*9e94795aSAndroid Build Coastguard Worker        "ota_utils_lib",
561*9e94795aSAndroid Build Coastguard Worker        "update_payload",
562*9e94795aSAndroid Build Coastguard Worker    ],
563*9e94795aSAndroid Build Coastguard Worker}
564*9e94795aSAndroid Build Coastguard Worker
565*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
566*9e94795aSAndroid Build Coastguard Worker    name: "validate_target_files",
567*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
568*9e94795aSAndroid Build Coastguard Worker    srcs: [
569*9e94795aSAndroid Build Coastguard Worker        "validate_target_files.py",
570*9e94795aSAndroid Build Coastguard Worker    ],
571*9e94795aSAndroid Build Coastguard Worker    libs: [
572*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
573*9e94795aSAndroid Build Coastguard Worker    ],
574*9e94795aSAndroid Build Coastguard Worker}
575*9e94795aSAndroid Build Coastguard Worker
576*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
577*9e94795aSAndroid Build Coastguard Worker    name: "verity_utils",
578*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
579*9e94795aSAndroid Build Coastguard Worker    srcs: [
580*9e94795aSAndroid Build Coastguard Worker        "verity_utils.py",
581*9e94795aSAndroid Build Coastguard Worker    ],
582*9e94795aSAndroid Build Coastguard Worker    libs: [
583*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
584*9e94795aSAndroid Build Coastguard Worker    ],
585*9e94795aSAndroid Build Coastguard Worker    required: [
586*9e94795aSAndroid Build Coastguard Worker        "append2simg",
587*9e94795aSAndroid Build Coastguard Worker        "build_verity_metadata",
588*9e94795aSAndroid Build Coastguard Worker        "build_verity_tree",
589*9e94795aSAndroid Build Coastguard Worker        "fec",
590*9e94795aSAndroid Build Coastguard Worker    ],
591*9e94795aSAndroid Build Coastguard Worker}
592*9e94795aSAndroid Build Coastguard Worker
593*9e94795aSAndroid Build Coastguard Workerpython_binary_host {
594*9e94795aSAndroid Build Coastguard Worker    name: "fsverity_metadata_generator",
595*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_binary_defaults"],
596*9e94795aSAndroid Build Coastguard Worker    srcs: [
597*9e94795aSAndroid Build Coastguard Worker        "fsverity_metadata_generator.py",
598*9e94795aSAndroid Build Coastguard Worker    ],
599*9e94795aSAndroid Build Coastguard Worker    required: [
600*9e94795aSAndroid Build Coastguard Worker        "fsverity",
601*9e94795aSAndroid Build Coastguard Worker    ],
602*9e94795aSAndroid Build Coastguard Worker}
603*9e94795aSAndroid Build Coastguard Worker
604*9e94795aSAndroid Build Coastguard Worker//
605*9e94795aSAndroid Build Coastguard Worker// Tests.
606*9e94795aSAndroid Build Coastguard Worker//
607*9e94795aSAndroid Build Coastguard Worker
608*9e94795aSAndroid Build Coastguard Workerpython_defaults {
609*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_test_defaults",
610*9e94795aSAndroid Build Coastguard Worker    srcs: [
611*9e94795aSAndroid Build Coastguard Worker        "check_ota_package_signature.py",
612*9e94795aSAndroid Build Coastguard Worker        "check_partition_sizes.py",
613*9e94795aSAndroid Build Coastguard Worker        "check_target_files_signatures.py",
614*9e94795aSAndroid Build Coastguard Worker        "make_recovery_patch.py",
615*9e94795aSAndroid Build Coastguard Worker        "ota_package_parser.py",
616*9e94795aSAndroid Build Coastguard Worker        "sign_apex.py",
617*9e94795aSAndroid Build Coastguard Worker        "sign_target_files_apks.py",
618*9e94795aSAndroid Build Coastguard Worker        "validate_target_files.py",
619*9e94795aSAndroid Build Coastguard Worker        "merge_ota.py",
620*9e94795aSAndroid Build Coastguard Worker        ":releasetools_merge_sources",
621*9e94795aSAndroid Build Coastguard Worker        ":releasetools_merge_tests",
622*9e94795aSAndroid Build Coastguard Worker
623*9e94795aSAndroid Build Coastguard Worker        "test_*.py",
624*9e94795aSAndroid Build Coastguard Worker    ],
625*9e94795aSAndroid Build Coastguard Worker    libs: [
626*9e94795aSAndroid Build Coastguard Worker        "releasetools_add_img_to_target_files",
627*9e94795aSAndroid Build Coastguard Worker        "releasetools_apex_utils",
628*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_image",
629*9e94795aSAndroid Build Coastguard Worker        "releasetools_build_super_image",
630*9e94795aSAndroid Build Coastguard Worker        "releasetools_check_target_files_vintf",
631*9e94795aSAndroid Build Coastguard Worker        "releasetools_common",
632*9e94795aSAndroid Build Coastguard Worker        "releasetools_find_shareduid_violation",
633*9e94795aSAndroid Build Coastguard Worker        "releasetools_img_from_target_files",
634*9e94795aSAndroid Build Coastguard Worker        "releasetools_ota_from_target_files",
635*9e94795aSAndroid Build Coastguard Worker        "releasetools_verity_utils",
636*9e94795aSAndroid Build Coastguard Worker        "update_payload",
637*9e94795aSAndroid Build Coastguard Worker    ],
638*9e94795aSAndroid Build Coastguard Worker    data: [
639*9e94795aSAndroid Build Coastguard Worker        "testdata/**/*",
640*9e94795aSAndroid Build Coastguard Worker    ],
641*9e94795aSAndroid Build Coastguard Worker    device_common_data: [
642*9e94795aSAndroid Build Coastguard Worker        ":com.android.apex.compressed.v1",
643*9e94795aSAndroid Build Coastguard Worker        ":com.android.apex.vendor.foo.with_vintf",
644*9e94795aSAndroid Build Coastguard Worker    ],
645*9e94795aSAndroid Build Coastguard Worker    target: {
646*9e94795aSAndroid Build Coastguard Worker        darwin: {
647*9e94795aSAndroid Build Coastguard Worker            // libs dep "releasetools_ota_from_target_files" is disabled on darwin
648*9e94795aSAndroid Build Coastguard Worker            enabled: false,
649*9e94795aSAndroid Build Coastguard Worker        },
650*9e94795aSAndroid Build Coastguard Worker    },
651*9e94795aSAndroid Build Coastguard Worker    required: [
652*9e94795aSAndroid Build Coastguard Worker        "apexd_host",
653*9e94795aSAndroid Build Coastguard Worker        "deapexer",
654*9e94795aSAndroid Build Coastguard Worker    ],
655*9e94795aSAndroid Build Coastguard Worker}
656*9e94795aSAndroid Build Coastguard Worker
657*9e94795aSAndroid Build Coastguard Workerpython_test_host {
658*9e94795aSAndroid Build Coastguard Worker    name: "releasetools_test",
659*9e94795aSAndroid Build Coastguard Worker    defaults: ["releasetools_test_defaults"],
660*9e94795aSAndroid Build Coastguard Worker    main: "test_utils.py",
661*9e94795aSAndroid Build Coastguard Worker    // Don't use embedded_launcher, atest will try (but may fail) to load libc++.so from
662*9e94795aSAndroid Build Coastguard Worker    // host, because the test executable won't be able to find the needed libs via its
663*9e94795aSAndroid Build Coastguard Worker    // runpath.
664*9e94795aSAndroid Build Coastguard Worker    test_options: {
665*9e94795aSAndroid Build Coastguard Worker        unit_test: true,
666*9e94795aSAndroid Build Coastguard Worker    },
667*9e94795aSAndroid Build Coastguard Worker}
668