blob: 65c035e8a783f6da94efcac2adccfc25fbbf6248 [file] [log] [blame]
Tao Bao30e31142019-04-09 00:12:30 -07001// Copyright (C) 2019 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
Tao Bao3c7b2a62019-08-07 12:24:20 -070015//
16// Module-specific defaults.
17//
18// For module X, if we need to build it both as a library and an executable:
19// - A default rule `releasetools_X_defaults` is created, which lists `srcs`, `libs` and
20// `required` properties.
21// - `python_library_host` and `python_binary_host` are created by listing
22// `releasetools_X_defaults` in their defaults.
23//
24
Bob Badour03905802021-02-12 21:42:54 -080025package {
26 default_applicable_licenses: ["Android-Apache-2.0"],
27}
28
Tao Bao3c7b2a62019-08-07 12:24:20 -070029python_defaults {
30 name: "releasetools_add_img_to_target_files_defaults",
31 srcs: [
32 "add_img_to_target_files.py",
33 ],
34 libs: [
Kelvin Zhang5f0fcee2021-01-19 15:30:46 -050035 "ota_metadata_proto",
36 "releasetools_apex_utils",
Tao Bao3c7b2a62019-08-07 12:24:20 -070037 "releasetools_build_image",
38 "releasetools_build_super_image",
39 "releasetools_common",
40 ],
41 required: [
42 "care_map_generator",
43 ],
44}
45
46python_defaults {
47 name: "releasetools_build_image_defaults",
48 srcs: [
49 "build_image.py",
50 ],
51 libs: [
52 "releasetools_common",
53 "releasetools_verity_utils",
54 ],
55 required: [
56 "blk_alloc_to_base_fs",
57 "e2fsck",
Gao Xiang961041a2020-06-17 13:59:16 +080058 "mkerofsimage.sh",
Yifan Hong77023452020-08-25 16:15:16 -070059 "mkuserimg_mke2fs",
Tao Bao3c7b2a62019-08-07 12:24:20 -070060 "simg2img",
61 "tune2fs",
62 ],
63}
64
65python_defaults {
66 name: "releasetools_build_super_image_defaults",
67 srcs: [
68 "build_super_image.py",
69 ],
70 libs: [
71 "releasetools_common",
72 ],
73}
74
75python_defaults {
76 name: "releasetools_img_from_target_files_defaults",
77 srcs: [
78 "img_from_target_files.py",
79 ],
80 libs: [
81 "releasetools_build_super_image",
82 "releasetools_common",
83 ],
84}
85
86python_defaults {
Yifan Honge3ba82c2019-08-21 13:29:30 -070087 name: "releasetools_check_target_files_vintf_defaults",
88 srcs: [
89 "check_target_files_vintf.py",
90 ],
91 libs: [
92 "releasetools_common",
93 ],
94 required: [
95 "checkvintf",
96 ],
97}
98
Tianjiea2076132020-08-19 17:25:32 -070099python_library_host {
100 name: "ota_metadata_proto",
101 version: {
102 py2: {
103 enabled: true,
104 },
105 py3: {
106 enabled: true,
107 },
108 },
109 srcs: [
110 "ota_metadata.proto",
111 ],
112 proto: {
113 canonical_path_from_root: false,
114 },
115}
116
Yifan Honge3ba82c2019-08-21 13:29:30 -0700117python_defaults {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700118 name: "releasetools_ota_from_target_files_defaults",
119 srcs: [
120 "edify_generator.py",
Kelvin Zhangcff4d762020-07-29 16:37:51 -0400121 "non_ab_ota.py",
Tianjiea2076132020-08-19 17:25:32 -0700122 "ota_from_target_files.py",
Kelvin Zhangcff4d762020-07-29 16:37:51 -0400123 "ota_utils.py",
Tianjiea2076132020-08-19 17:25:32 -0700124 "target_files_diff.py",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700125 ],
126 libs: [
Tianjiea2076132020-08-19 17:25:32 -0700127 "ota_metadata_proto",
Yifan Hong9276cf02019-08-21 16:37:04 -0700128 "releasetools_check_target_files_vintf",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700129 "releasetools_common",
130 "releasetools_verity_utils",
Mohammad Samiul Islam9fd58862021-01-06 13:33:25 +0000131 "apex_manifest",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700132 ],
133 required: [
134 "brillo_update_payload",
Yifan Hong09298552019-09-04 11:49:01 -0700135 "checkvintf",
jiajia tangf3f842b2021-03-17 21:49:44 +0800136 "minigzip",
Yifan Hong125d0b62020-09-24 17:07:03 -0700137 "lz4",
138 "toybox",
Mohammad Samiul Islam9fd58862021-01-06 13:33:25 +0000139 "unpack_bootimg",
140 "deapexer",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700141 ],
Yo Chiang096c5152020-08-07 04:22:18 +0000142 target: {
143 darwin: {
144 // required module "brillo_update_payload" is disabled on darwin
145 enabled: false,
146 },
147 },
Tao Bao3c7b2a62019-08-07 12:24:20 -0700148}
149
150//
151// Host libraries.
152//
153
Tao Bao30e31142019-04-09 00:12:30 -0700154python_defaults {
Tao Bao2bbb07c2019-05-07 13:12:21 -0700155 name: "releasetools_library_defaults",
Tao Bao30e31142019-04-09 00:12:30 -0700156 version: {
157 py2: {
158 enabled: true,
Tao Bao30e31142019-04-09 00:12:30 -0700159 },
160 py3: {
Tao Baoca82fc92019-05-01 21:58:03 -0700161 enabled: true,
Tao Bao30e31142019-04-09 00:12:30 -0700162 },
163 },
164}
165
166python_library_host {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700167 name: "releasetools_add_img_to_target_files",
168 defaults: [
169 "releasetools_library_defaults",
170 "releasetools_add_img_to_target_files_defaults",
171 ],
172}
173
174python_library_host {
175 name: "releasetools_apex_utils",
Tao Bao005305a2019-08-05 13:00:44 -0700176 defaults: ["releasetools_library_defaults"],
177 srcs: [
Tao Bao3c7b2a62019-08-07 12:24:20 -0700178 "apex_utils.py",
179 ],
180 libs: [
Mohammad Samiul Islam9fd58862021-01-06 13:33:25 +0000181 "apex_manifest",
182 "ota_metadata_proto",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700183 "releasetools_common",
184 ],
185}
186
187python_library_host {
188 name: "releasetools_build_image",
189 defaults: [
190 "releasetools_library_defaults",
191 "releasetools_build_image_defaults",
192 ],
193}
194
195python_library_host {
196 name: "releasetools_build_super_image",
197 defaults: [
198 "releasetools_library_defaults",
199 "releasetools_build_super_image_defaults",
Tao Bao005305a2019-08-05 13:00:44 -0700200 ],
201}
202
203python_library_host {
Yifan Hongccb86fe2019-08-22 15:52:26 -0700204 name: "releasetools_check_target_files_vintf",
205 defaults: [
206 "releasetools_library_defaults",
207 "releasetools_check_target_files_vintf_defaults",
208 ],
209}
210
211python_library_host {
Tao Bao2bbb07c2019-05-07 13:12:21 -0700212 name: "releasetools_common",
213 defaults: ["releasetools_library_defaults"],
Tao Bao30e31142019-04-09 00:12:30 -0700214 srcs: [
Tao Bao30e31142019-04-09 00:12:30 -0700215 "blockimgdiff.py",
Tao Bao30e31142019-04-09 00:12:30 -0700216 "common.py",
Tianjie Xu41976c72019-07-03 13:57:01 -0700217 "images.py",
Tao Bao30e31142019-04-09 00:12:30 -0700218 "rangelib.py",
Tao Bao30e31142019-04-09 00:12:30 -0700219 "sparse_img.py",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700220 ],
221 // Only the tools that are referenced directly are listed as required modules. For example,
222 // `avbtool` is not here, as the script always uses the one from info_dict['avb_avbtool'].
223 required: [
changho.shin0f125362019-07-08 10:59:00 +0900224 "aapt2",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700225 "boot_signer",
226 "brotli",
227 "bsdiff",
228 "imgdiff",
229 "minigzip",
J. Avila98cd4cc2020-06-10 20:09:10 +0000230 "lz4",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700231 "mkbootfs",
Luca Stefani3e4b4482020-03-27 14:00:23 +0100232 "signapk",
Yifan Hong14a87122021-01-12 13:26:25 -0800233 "toybox",
234 "unpack_bootimg",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700235 ],
236}
237
238python_library_host {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700239 name: "releasetools_img_from_target_files",
240 defaults: [
241 "releasetools_library_defaults",
242 "releasetools_img_from_target_files_defaults",
243 ],
244}
245
246python_library_host {
247 name: "releasetools_ota_from_target_files",
248 defaults: [
249 "releasetools_library_defaults",
250 "releasetools_ota_from_target_files_defaults",
251 ],
252}
253
254python_library_host {
Tao Bao2bbb07c2019-05-07 13:12:21 -0700255 name: "releasetools_verity_utils",
256 defaults: ["releasetools_library_defaults"],
257 srcs: [
Tao Bao30e31142019-04-09 00:12:30 -0700258 "verity_utils.py",
259 ],
Tao Bao2bbb07c2019-05-07 13:12:21 -0700260 required: [
261 "append2simg",
262 "build_verity_metadata",
263 "build_verity_tree",
264 "fec",
265 ],
266}
267
Tao Bao3c7b2a62019-08-07 12:24:20 -0700268//
269// Host binaries.
270//
271
Tao Bao2bbb07c2019-05-07 13:12:21 -0700272python_defaults {
273 name: "releasetools_binary_defaults",
274 version: {
275 py2: {
276 enabled: true,
277 embedded_launcher: true,
278 },
279 py3: {
280 enabled: false,
281 embedded_launcher: false,
282 },
283 },
Kiyoung Kim0a8d2622020-03-24 09:36:03 +0900284 // TODO (b/140144201) Build imgdiff from releasetools_common
285 required: [
286 "aapt2",
287 "boot_signer",
288 "brotli",
289 "bsdiff",
Mohammad Samiul Islamf4909b42021-02-01 20:43:41 +0000290 "deapexer",
Kiyoung Kim0a8d2622020-03-24 09:36:03 +0900291 "imgdiff",
292 "minigzip",
Luca Stefanie0fc4ca2020-09-12 06:08:16 +0000293 "lz4",
Kiyoung Kim0a8d2622020-03-24 09:36:03 +0900294 "mkbootfs",
Luca Stefanie0fc4ca2020-09-12 06:08:16 +0000295 "signapk",
Yifan Hong14a87122021-01-12 13:26:25 -0800296 "toybox",
297 "unpack_bootimg",
Kiyoung Kim0a8d2622020-03-24 09:36:03 +0900298 ],
Tao Bao2bbb07c2019-05-07 13:12:21 -0700299}
300
301python_binary_host {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700302 name: "add_img_to_target_files",
303 defaults: [
304 "releasetools_binary_defaults",
305 "releasetools_add_img_to_target_files_defaults",
306 ],
307}
308
309python_binary_host {
Tao Bao2bbb07c2019-05-07 13:12:21 -0700310 name: "build_image",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700311 defaults: [
312 "releasetools_binary_defaults",
313 "releasetools_build_image_defaults",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700314 ],
315}
316
317python_binary_host {
318 name: "build_super_image",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700319 defaults: [
320 "releasetools_binary_defaults",
321 "releasetools_build_super_image_defaults",
322 ],
323}
324
325python_binary_host {
Yifan Hong3a7c2ef2019-11-01 18:23:19 +0000326 name: "check_partition_sizes",
327 srcs: [
328 "check_partition_sizes.py",
329 ],
330 libs: [
331 "releasetools_common",
332 ],
333 defaults: [
334 "releasetools_binary_defaults",
335 ],
336}
337
338python_binary_host {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700339 name: "check_ota_package_signature",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700340 defaults: ["releasetools_binary_defaults"],
341 srcs: [
Tao Bao3c7b2a62019-08-07 12:24:20 -0700342 "check_ota_package_signature.py",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700343 ],
Tao Bao2bbb07c2019-05-07 13:12:21 -0700344 libs: [
345 "releasetools_common",
346 ],
Tao Bao3c7b2a62019-08-07 12:24:20 -0700347 required: [
348 "delta_generator",
349 ],
Yo Chiang096c5152020-08-07 04:22:18 +0000350 target: {
351 darwin: {
352 // required module "delta_generator" is disabled on darwin
353 enabled: false,
354 },
355 },
Tao Bao3c7b2a62019-08-07 12:24:20 -0700356}
357
358python_binary_host {
359 name: "check_target_files_signatures",
360 defaults: ["releasetools_binary_defaults"],
361 srcs: [
362 "check_target_files_signatures.py",
363 ],
364 libs: [
365 "releasetools_common",
366 ],
367 required: [
368 "aapt",
369 ],
370}
371
372python_binary_host {
Yifan Honge3ba82c2019-08-21 13:29:30 -0700373 name: "check_target_files_vintf",
374 defaults: [
375 "releasetools_binary_defaults",
376 "releasetools_check_target_files_vintf_defaults"
377 ],
378}
379
380python_binary_host {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700381 name: "img_from_target_files",
382 defaults: [
383 "releasetools_binary_defaults",
384 "releasetools_img_from_target_files_defaults",
385 ],
Tao Bao30e31142019-04-09 00:12:30 -0700386}
387
Daniel Normanb8d52a22020-10-26 17:55:00 -0700388python_defaults {
389 name: "releasetools_find_shareduid_violation_defaults",
390 srcs: [
391 "find_shareduid_violation.py",
392 ],
393 libs: [
394 "releasetools_common",
395 ],
396}
397
398python_binary_host {
399 name: "find_shareduid_violation",
400 defaults: [
401 "releasetools_binary_defaults",
402 "releasetools_find_shareduid_violation_defaults",
403 ],
404}
405
406python_library_host {
407 name: "releasetools_find_shareduid_violation",
408 defaults: [
409 "releasetools_find_shareduid_violation_defaults",
410 "releasetools_library_defaults",
411 ],
412}
413
Daniel Normanbfc51ef2019-07-24 14:34:54 -0700414python_binary_host {
Tao Baoe11a4602019-08-06 23:21:23 -0700415 name: "make_recovery_patch",
416 defaults: ["releasetools_binary_defaults"],
417 srcs: [
418 "make_recovery_patch.py",
419 ],
420 libs: [
421 "releasetools_common",
422 ],
423}
424
425python_binary_host {
Daniel Normanbfc51ef2019-07-24 14:34:54 -0700426 name: "merge_builds",
427 defaults: ["releasetools_binary_defaults"],
428 srcs: [
Daniel Normanbfc51ef2019-07-24 14:34:54 -0700429 "merge_builds.py",
430 ],
Daniel Normanbfc51ef2019-07-24 14:34:54 -0700431 libs: [
Tao Bao005305a2019-08-05 13:00:44 -0700432 "releasetools_build_super_image",
Daniel Normanbfc51ef2019-07-24 14:34:54 -0700433 "releasetools_common",
434 ],
435}
436
Tao Bao8821d642019-08-05 12:05:45 -0700437python_binary_host {
Tao Bao3c7b2a62019-08-07 12:24:20 -0700438 name: "merge_target_files",
Tao Bao8821d642019-08-05 12:05:45 -0700439 defaults: ["releasetools_binary_defaults"],
440 srcs: [
Tao Bao3c7b2a62019-08-07 12:24:20 -0700441 "merge_target_files.py",
Tao Bao8821d642019-08-05 12:05:45 -0700442 ],
443 libs: [
Tao Bao3c7b2a62019-08-07 12:24:20 -0700444 "releasetools_add_img_to_target_files",
445 "releasetools_build_super_image",
Yifan Hongade0d3f2019-08-21 16:37:11 -0700446 "releasetools_check_target_files_vintf",
Tao Bao8821d642019-08-05 12:05:45 -0700447 "releasetools_common",
Daniel Normanb8d52a22020-10-26 17:55:00 -0700448 "releasetools_find_shareduid_violation",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700449 "releasetools_img_from_target_files",
450 "releasetools_ota_from_target_files",
Tao Bao8821d642019-08-05 12:05:45 -0700451 ],
Yifan Hong09298552019-09-04 11:49:01 -0700452 required: [
453 "checkvintf",
Daniel Norman21c34f72020-11-11 17:25:50 -0800454 "host_init_verifier",
Daniel Norman48603ff2021-02-22 15:15:24 -0800455 "secilc",
Yifan Hong09298552019-09-04 11:49:01 -0700456 ],
Yo Chiang096c5152020-08-07 04:22:18 +0000457 target: {
458 darwin: {
459 // libs dep "releasetools_ota_from_target_files" is disabled on darwin
460 enabled: false,
461 },
462 },
Tao Bao3c7b2a62019-08-07 12:24:20 -0700463}
464
465python_binary_host {
466 name: "ota_from_target_files",
467 defaults: [
468 "releasetools_binary_defaults",
469 "releasetools_ota_from_target_files_defaults",
470 ],
471}
472
473python_binary_host {
474 name: "ota_package_parser",
475 defaults: ["releasetools_binary_defaults"],
476 srcs: [
477 "ota_package_parser.py",
478 "rangelib.py",
Tao Bao8821d642019-08-05 12:05:45 -0700479 ],
480}
481
Tao Baoe11a4602019-08-06 23:21:23 -0700482python_binary_host {
483 name: "sparse_img",
484 defaults: ["releasetools_binary_defaults"],
485 srcs: [
486 "rangelib.py",
487 "sparse_img.py",
488 ],
Tao Baoe11a4602019-08-06 23:21:23 -0700489}
490
Tao Bao3c7b2a62019-08-07 12:24:20 -0700491python_binary_host {
492 name: "sign_apex",
493 defaults: ["releasetools_binary_defaults"],
494 srcs: [
495 "sign_apex.py",
496 ],
497 libs: [
498 "releasetools_apex_utils",
499 "releasetools_common",
500 ],
501}
502
503python_binary_host {
504 name: "sign_target_files_apks",
505 defaults: ["releasetools_binary_defaults"],
506 srcs: [
507 "sign_target_files_apks.py",
508 ],
509 libs: [
510 "releasetools_add_img_to_target_files",
511 "releasetools_apex_utils",
512 "releasetools_common",
513 ],
514}
515
516python_binary_host {
517 name: "validate_target_files",
518 defaults: ["releasetools_binary_defaults"],
519 srcs: [
520 "validate_target_files.py",
521 ],
522 libs: [
523 "releasetools_common",
524 ],
525}
526
Jiyong Parkb92b8f42021-03-15 23:13:42 +0900527python_binary_host {
528 name: "verity_utils",
529 defaults: ["releasetools_binary_defaults"],
530 srcs: [
531 "verity_utils.py",
532 ],
533 libs: [
534 "releasetools_common",
535 ],
536 required: [
537 "append2simg",
538 "build_verity_metadata",
539 "build_verity_tree",
540 "fec",
541 ],
542}
543
Tao Bao3c7b2a62019-08-07 12:24:20 -0700544//
545// Tests.
546//
547
Tao Baoca82fc92019-05-01 21:58:03 -0700548python_defaults {
549 name: "releasetools_test_defaults",
Tao Bao30e31142019-04-09 00:12:30 -0700550 srcs: [
Tao Bao2bbb07c2019-05-07 13:12:21 -0700551 "check_ota_package_signature.py",
Yifan Hong3a7c2ef2019-11-01 18:23:19 +0000552 "check_partition_sizes.py",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700553 "check_target_files_signatures.py",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700554 "make_recovery_patch.py",
555 "merge_target_files.py",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700556 "ota_package_parser.py",
557 "sign_apex.py",
558 "sign_target_files_apks.py",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700559 "validate_target_files.py",
560
Tao Bao30e31142019-04-09 00:12:30 -0700561 "test_*.py",
562 ],
563 libs: [
Tao Bao3c7b2a62019-08-07 12:24:20 -0700564 "releasetools_add_img_to_target_files",
565 "releasetools_apex_utils",
566 "releasetools_build_image",
Tao Bao005305a2019-08-05 13:00:44 -0700567 "releasetools_build_super_image",
Yifan Hongccb86fe2019-08-22 15:52:26 -0700568 "releasetools_check_target_files_vintf",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700569 "releasetools_common",
Daniel Normanb8d52a22020-10-26 17:55:00 -0700570 "releasetools_find_shareduid_violation",
Tao Bao3c7b2a62019-08-07 12:24:20 -0700571 "releasetools_img_from_target_files",
572 "releasetools_ota_from_target_files",
Tao Bao2bbb07c2019-05-07 13:12:21 -0700573 "releasetools_verity_utils",
Tao Bao30e31142019-04-09 00:12:30 -0700574 ],
575 data: [
Yifan Hongccb86fe2019-08-22 15:52:26 -0700576 "testdata/**/*",
Mohammad Samiul Islam9fd58862021-01-06 13:33:25 +0000577 ":com.android.apex.compressed.v1",
578 ":com.android.apex.compressed.v1_original",
Tao Bao30e31142019-04-09 00:12:30 -0700579 ],
Yo Chiang096c5152020-08-07 04:22:18 +0000580 target: {
581 darwin: {
582 // libs dep "releasetools_ota_from_target_files" is disabled on darwin
583 enabled: false,
584 },
585 },
Mohammad Samiul Islam9fd58862021-01-06 13:33:25 +0000586 required: [
587 "deapexer",
588 ],
Tao Baoca82fc92019-05-01 21:58:03 -0700589}
590
591python_test_host {
592 name: "releasetools_test",
593 defaults: ["releasetools_test_defaults"],
594 main: "test_utils.py",
595 version: {
596 py2: {
597 enabled: true,
Tao Bao2bbb07c2019-05-07 13:12:21 -0700598 // When using embedded launcher, atest will try (but may fail) to load libc++.so from
599 // host, because the test executable won't be able to find the needed libs via its
600 // runpath.
Tao Baoca82fc92019-05-01 21:58:03 -0700601 embedded_launcher: false,
602 },
603 py3: {
604 enabled: false,
605 embedded_launcher: false,
606 },
607 },
Julien Desprez6d9e78f2020-12-21 13:56:05 -0800608 test_options: {
609 unit_test: true,
610 },
Tao Baoca82fc92019-05-01 21:58:03 -0700611}
612
613python_test_host {
614 name: "releasetools_py3_test",
615 defaults: ["releasetools_test_defaults"],
616 main: "test_utils.py",
Kelvin Zhang553efca2021-02-01 17:25:41 -0500617 test_suites: ["general-tests"],
Tao Baoca82fc92019-05-01 21:58:03 -0700618 version: {
619 py2: {
620 enabled: false,
621 embedded_launcher: false,
622 },
623 py3: {
624 enabled: true,
625 embedded_launcher: false,
626 },
627 },
Julien Desprez6d9e78f2020-12-21 13:56:05 -0800628 test_options: {
629 unit_test: true,
630 },
Tao Bao30e31142019-04-09 00:12:30 -0700631}