blob: 535246e65529b843b0015a3d3daab1f0f9a66ad2 [file] [log] [blame]
Bob Badour02040de2021-02-03 18:08:28 -08001package {
2 default_applicable_licenses: ["Android-Apache-2.0"],
Cole Faust16d227a2024-09-18 16:42:01 -07003 default_visibility: [
4 "//build/soong:__subpackages__",
5 ],
Bob Badour02040de2021-02-03 18:08:28 -08006}
7
Dan Willemsen377737a2016-08-15 15:02:23 -07008subdirs = [
9 "androidmk",
Jeff Gastonaff66e52017-06-19 15:39:54 -070010 "bpfix",
Dan Willemsen377737a2016-08-15 15:02:23 -070011 "cmd/*",
Jeff Gastonf1fd45e2017-08-09 18:25:28 -070012 "fs",
13 "finder",
Jeff Gaston01547b22017-08-21 20:13:28 -070014 "jar",
Jeff Gaston11b5c512017-10-12 12:19:14 -070015 "zip",
Dan Willemsen377737a2016-08-15 15:02:23 -070016 "third_party/zip",
Dan Willemsen1e704462016-08-21 15:17:17 -070017 "ui/*",
Dan Willemsen377737a2016-08-15 15:02:23 -070018]
Colin Cross68f55102015-03-25 14:43:57 -070019
20bootstrap_go_package {
Colin Cross463a90e2015-06-17 14:20:06 -070021 name: "soong",
22 pkgPath: "android/soong",
23 deps: [
24 "blueprint",
25 ],
26 srcs: [
27 "doc.go",
Colin Cross463a90e2015-06-17 14:20:06 -070028 ],
Cole Faust16d227a2024-09-18 16:42:01 -070029 // Used by plugins, though probably shouldn't be.
30 visibility: ["//visibility:public"],
Colin Cross463a90e2015-06-17 14:20:06 -070031}
32
Colin Cross80031312015-03-14 14:28:22 -070033//
Dan Willemsen00fcbde2016-11-17 00:25:59 -080034// Defaults to enable various configurations of host bionic
35//
36
37cc_defaults {
38 name: "linux_bionic_supported",
39 host_supported: true,
40 target: {
41 host: {
42 enabled: false,
43 },
44 linux_bionic: {
45 enabled: true,
46 },
47 },
Cole Faust16d227a2024-09-18 16:42:01 -070048 defaults_visibility: ["//visibility:public"],
Dan Willemsen00fcbde2016-11-17 00:25:59 -080049}
50
51//
Colin Cross80031312015-03-14 14:28:22 -070052// C static libraries extracted from the gcc toolchain
53//
54
Jiyong Parkd773eb32017-07-03 13:18:12 +090055kernel_headers {
56 name: "device_kernel_headers",
57 vendor: true,
Hridya Valsarajud61df502018-08-21 15:51:20 -070058 recovery_available: true,
Daniel Normanca2ed382022-03-04 18:45:52 +000059 min_sdk_version: "apex_inherit",
Cole Faust16d227a2024-09-18 16:42:01 -070060 visibility: ["//visibility:public"],
Jiyong Parkd773eb32017-07-03 13:18:12 +090061}
Dan Willemsenc77a0b32017-09-18 23:19:12 -070062
63cc_genrule {
64 name: "host_bionic_linker_asm",
65 host_supported: true,
66 device_supported: false,
67 target: {
68 linux_bionic: {
69 enabled: true,
70 },
Colin Cross5b588dd2022-03-29 20:46:45 -070071 linux_musl: {
72 enabled: false,
73 },
Dan Willemsen9d6c6722017-10-02 10:41:07 -070074 linux_glibc: {
Dan Willemsenc77a0b32017-09-18 23:19:12 -070075 enabled: false,
76 },
77 darwin: {
78 enabled: false,
79 },
80 },
81 tools: ["extract_linker"],
82 cmd: "$(location) -s $(out) $(in)",
83 srcs: [":linker"],
84 out: ["linker.s"],
Cole Faust16d227a2024-09-18 16:42:01 -070085 visibility: ["//bionic/libc"],
Dan Willemsenc77a0b32017-09-18 23:19:12 -070086}
87
88cc_genrule {
Colin Cross9cfe6112021-06-11 18:02:22 -070089 name: "host_bionic_linker_script",
Dan Willemsenc77a0b32017-09-18 23:19:12 -070090 host_supported: true,
91 device_supported: false,
92 target: {
93 linux_bionic: {
94 enabled: true,
95 },
Colin Cross5b588dd2022-03-29 20:46:45 -070096 linux_musl: {
97 enabled: false,
98 },
Dan Willemsen9d6c6722017-10-02 10:41:07 -070099 linux_glibc: {
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700100 enabled: false,
101 },
102 darwin: {
103 enabled: false,
104 },
105 },
106 tools: ["extract_linker"],
Colin Cross9cfe6112021-06-11 18:02:22 -0700107 cmd: "$(location) -T $(out) $(in)",
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700108 srcs: [":linker"],
Colin Cross9cfe6112021-06-11 18:02:22 -0700109 out: ["linker.script"],
Cole Faust16d227a2024-09-18 16:42:01 -0700110 visibility: ["//visibility:public"],
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700111}
Paul Duffin1ab61862021-01-20 17:44:53 +0000112
113// Instantiate the dex_bootjars singleton module.
114dex_bootjars {
115 name: "dex_bootjars",
Cole Faust16d227a2024-09-18 16:42:01 -0700116 visibility: ["//visibility:public"],
Paul Duffin1ab61862021-01-20 17:44:53 +0000117}
Pirama Arumuga Nainar2558ce32021-06-24 15:59:38 -0700118
119// Pseudo-test that's run on checkbuilds to ensure that get_clang_version can
120// parse cc/config/global.go.
121genrule {
122 name: "get_clang_version_test",
123 cmd: "$(location get_clang_version) > $(out)",
124 tools: ["get_clang_version"],
125 srcs: ["cc/config/global.go"],
126 out: ["clang-prebuilts-version.txt"],
127}
Jiakai Zhang0a0a2fb2021-09-30 09:38:19 +0000128
129dexpreopt_systemserver_check {
130 name: "dexpreopt_systemserver_check",
131}
Inseob Kim4f1f3d92022-04-25 18:23:58 +0900132
Spandan Dase3fcb412023-10-26 20:48:02 +0000133// container for apex_contributions selected using build flags
134all_apex_contributions {
135 name: "all_apex_contributions",
Cole Faust16d227a2024-09-18 16:42:01 -0700136 visibility: ["//visibility:public"],
Spandan Dase3fcb412023-10-26 20:48:02 +0000137}
Inseob Kim58c802f2024-06-11 10:59:00 +0900138
139product_config {
140 name: "product_config",
Inseob Kim2da72af2024-06-18 11:09:12 +0900141 visibility: ["//device/google/cuttlefish/system_image"],
Inseob Kim58c802f2024-06-11 10:59:00 +0900142}
Inseob Kimbc4ef222024-07-31 02:00:41 +0000143
144build_prop {
145 name: "system-build.prop",
146 stem: "build.prop",
147 product_config: ":product_config",
148 // Currently, only microdroid and cf system image can refer to system-build.prop
149 visibility: [
150 "//device/google/cuttlefish/system_image",
151 "//packages/modules/Virtualization/build/microdroid",
152 ],
153}
Inseob Kimacf91742024-08-05 12:51:05 +0900154
155build_prop {
156 name: "system_ext-build.prop",
157 stem: "build.prop",
158 system_ext_specific: true,
159 product_config: ":product_config",
160 relative_install_path: "etc", // system_ext/etc/build.prop
161 visibility: ["//visibility:private"],
162}
Inseob Kim01d4f8b2024-08-08 17:47:14 +0900163
164build_prop {
165 name: "product-build.prop",
166 stem: "build.prop",
167 product_specific: true,
168 product_config: ":product_config",
169 relative_install_path: "etc", // product/etc/build.prop
170 visibility: ["//visibility:private"],
171}
172
173build_prop {
174 name: "odm-build.prop",
175 stem: "build.prop",
176 device_specific: true,
177 product_config: ":product_config",
178 relative_install_path: "etc", // odm/etc/build.prop
179 visibility: ["//visibility:private"],
180}