blob: a9eceb2487d125e56277dff2f8e6d1468f673716 [file] [log] [blame]
Dan Willemsen377737a2016-08-15 15:02:23 -07001subdirs = [
2 "androidmk",
Jeff Gastonaff66e52017-06-19 15:39:54 -07003 "bpfix",
Dan Willemsen377737a2016-08-15 15:02:23 -07004 "cmd/*",
Jeff Gastonf1fd45e2017-08-09 18:25:28 -07005 "fs",
6 "finder",
Jeff Gaston01547b22017-08-21 20:13:28 -07007 "jar",
Jeff Gaston11b5c512017-10-12 12:19:14 -07008 "zip",
Dan Willemsen377737a2016-08-15 15:02:23 -07009 "third_party/zip",
Dan Willemsen1e704462016-08-21 15:17:17 -070010 "ui/*",
Dan Willemsen377737a2016-08-15 15:02:23 -070011]
Colin Cross68f55102015-03-25 14:43:57 -070012
13bootstrap_go_package {
14 name: "soong-env",
15 pkgPath: "android/soong/env",
16 srcs: [
17 "env/env.go",
18 ],
19}
20
Colin Crossba442872015-03-14 14:26:32 -070021bootstrap_go_package {
Colin Cross463a90e2015-06-17 14:20:06 -070022 name: "soong",
23 pkgPath: "android/soong",
24 deps: [
25 "blueprint",
26 ],
27 srcs: [
28 "doc.go",
Colin Cross463a90e2015-06-17 14:20:06 -070029 ],
30}
31
32bootstrap_go_package {
Colin Cross635c3b02016-05-18 15:37:25 -070033 name: "soong-android",
34 pkgPath: "android/soong/android",
Colin Crossba442872015-03-14 14:26:32 -070035 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -080036 "blueprint",
37 "blueprint-bootstrap",
Colin Cross463a90e2015-06-17 14:20:06 -070038 "soong",
Colin Cross9d34f352019-11-22 16:03:51 -080039 "soong-android-soongconfig",
Colin Cross68f55102015-03-25 14:43:57 -070040 "soong-env",
Dan Willemsen633c5022019-04-12 11:11:38 -070041 "soong-shared",
Colin Crossb72c9092020-02-10 11:23:49 -080042 "soong-ui-metrics_proto",
Colin Cross3f40fa42015-01-30 17:27:36 -080043 ],
Colin Crossba442872015-03-14 14:26:32 -070044 srcs: [
Colin Cross635c3b02016-05-18 15:37:25 -070045 "android/androidmk.go",
Jiyong Park9d452992018-10-03 00:38:19 +090046 "android/apex.go",
Dan Albert30c9d6e2017-03-28 14:54:55 -070047 "android/api_levels.go",
Colin Cross635c3b02016-05-18 15:37:25 -070048 "android/arch.go",
49 "android/config.go",
karenluoc0318192019-10-10 21:26:26 -040050 "android/csuite_config.go",
Colin Cross635c3b02016-05-18 15:37:25 -070051 "android/defaults.go",
52 "android/defs.go",
Colin Cross6bde0942016-11-04 14:36:38 -070053 "android/expand.go",
Pirama Arumuga Nainar955dc492018-04-17 14:58:42 -070054 "android/filegroup.go",
Colin Cross178a5092016-09-13 13:42:32 -070055 "android/hooks.go",
Colin Cross7228ecd2019-11-18 16:00:16 -080056 "android/image.go",
Colin Cross635c3b02016-05-18 15:37:25 -070057 "android/makevars.go",
Colin Crossb72c9092020-02-10 11:23:49 -080058 "android/metrics.go",
Colin Cross635c3b02016-05-18 15:37:25 -070059 "android/module.go",
60 "android/mutator.go",
Jeff Gaston088e29e2017-11-29 16:47:17 -080061 "android/namespace.go",
Steven Moreland65b3fd92017-12-06 14:18:35 -080062 "android/neverallow.go",
Jaewoong Jung5b425e22019-06-17 17:40:56 -070063 "android/notices.go",
Colin Cross9272ade2016-08-17 15:24:12 -070064 "android/onceper.go",
Jaewoong Jung525443a2019-02-28 15:35:54 -080065 "android/override_module.go",
Paul Duffine2453c72019-05-31 14:00:04 +010066 "android/package.go",
Colin Cross635c3b02016-05-18 15:37:25 -070067 "android/package_ctx.go",
Colin Cross1b488422019-03-04 22:33:56 -080068 "android/path_properties.go",
Colin Cross635c3b02016-05-18 15:37:25 -070069 "android/paths.go",
Colin Crossce75d2c2016-10-06 16:12:58 -070070 "android/prebuilt.go",
Jiyong Parkc678ad32018-04-10 13:07:10 +090071 "android/prebuilt_etc.go",
Colin Cross38f794e2017-09-07 10:53:07 -070072 "android/proto.go",
Colin Cross798bfce2016-10-12 14:28:16 -070073 "android/register.go",
Colin Crossfeec25b2019-01-30 17:32:39 -080074 "android/rule_builder.go",
Colin Cross988414c2020-01-11 01:11:46 +000075 "android/sandbox.go",
Jiyong Parkd1063c12019-07-17 20:08:41 +090076 "android/sdk.go",
Dan Willemsenb0552672019-01-25 16:04:11 -080077 "android/sh_binary.go",
Colin Cross0875c522017-11-28 17:34:01 -080078 "android/singleton.go",
Colin Cross9d34f352019-11-22 16:03:51 -080079 "android/soong_config_modules.go",
Colin Crosscec81712017-07-13 14:43:27 -070080 "android/testing.go",
Colin Cross635c3b02016-05-18 15:37:25 -070081 "android/util.go",
82 "android/variable.go",
Paul Duffin2e61fa62019-03-28 14:10:57 +000083 "android/visibility.go",
Sasha Smundakff36da02019-02-12 17:12:08 -080084 "android/vts_config.go",
Colin Crosse87040b2017-12-11 15:52:26 -080085 "android/writedocs.go",
Dan Willemsene8b1bc02016-05-12 19:03:10 -070086
87 // Lock down environment access last
Colin Cross635c3b02016-05-18 15:37:25 -070088 "android/env.go",
Colin Cross3f40fa42015-01-30 17:27:36 -080089 ],
Dan Willemsen34cc69e2015-09-23 15:26:20 -070090 testSrcs: [
Colin Cross2ffb9a82019-06-10 14:32:38 -070091 "android/android_test.go",
Jooyung Han12df5fb2019-07-11 16:18:47 +090092 "android/androidmk_test.go",
Colin Crosscb988072019-01-24 14:58:11 -080093 "android/arch_test.go",
Jeff Gastonf5f6e492017-11-20 14:31:11 -080094 "android/config_test.go",
karenluoc0318192019-10-10 21:26:26 -040095 "android/csuite_config_test.go",
Colin Cross6bde0942016-11-04 14:36:38 -070096 "android/expand_test.go",
Colin Cross41955e82019-05-29 14:40:35 -070097 "android/module_test.go",
Colin Crossdc35e212019-06-06 16:13:11 -070098 "android/mutator_test.go",
Jeff Gaston088e29e2017-11-29 16:47:17 -080099 "android/namespace_test.go",
Logan Chienee97c3e2018-03-12 16:34:26 +0800100 "android/neverallow_test.go",
Colin Cross571cccf2019-02-04 11:22:08 -0800101 "android/onceper_test.go",
Paul Duffine2453c72019-05-31 14:00:04 +0100102 "android/package_test.go",
Colin Cross1b488422019-03-04 22:33:56 -0800103 "android/path_properties_test.go",
Colin Cross635c3b02016-05-18 15:37:25 -0700104 "android/paths_test.go",
Colin Cross0d614dd2016-10-14 15:38:43 -0700105 "android/prebuilt_test.go",
Jiyong Park139a2e62018-10-26 21:49:39 +0900106 "android/prebuilt_etc_test.go",
Colin Crossfeec25b2019-01-30 17:32:39 -0800107 "android/rule_builder_test.go",
Colin Cross9d34f352019-11-22 16:03:51 -0800108 "android/soong_config_modules_test.go",
Colin Crossb6715442017-10-24 11:13:31 -0700109 "android/util_test.go",
Colin Cross7e0eaf12017-05-05 16:16:24 -0700110 "android/variable_test.go",
Paul Duffin2e61fa62019-03-28 14:10:57 +0000111 "android/visibility_test.go",
Sasha Smundakff36da02019-02-12 17:12:08 -0800112 "android/vts_config_test.go",
Dan Willemsen34cc69e2015-09-23 15:26:20 -0700113 ],
Colin Crossba442872015-03-14 14:26:32 -0700114}
Colin Cross3f40fa42015-01-30 17:27:36 -0800115
Colin Crossba442872015-03-14 14:26:32 -0700116bootstrap_go_package {
Colin Cross9d34f352019-11-22 16:03:51 -0800117 name: "soong-android-soongconfig",
118 pkgPath: "android/soong/android/soongconfig",
119 deps: [
120 "blueprint",
121 "blueprint-parser",
122 "blueprint-proptools",
123 ],
124 srcs: [
125 "android/soongconfig/config.go",
126 "android/soongconfig/modules.go",
127 ],
128}
129
130bootstrap_go_package {
Colin Crossb98c8b02016-07-29 13:44:28 -0700131 name: "soong-cc-config",
132 pkgPath: "android/soong/cc/config",
133 deps: [
134 "soong-android",
Ramy Medhat9a90fe52020-04-13 13:21:23 -0400135 "soong-remoteexec",
Colin Crossb98c8b02016-07-29 13:44:28 -0700136 ],
137 srcs: [
138 "cc/config/clang.go",
139 "cc/config/global.go",
Dan Willemsena03cf6d2016-09-26 15:45:04 -0700140 "cc/config/tidy.go",
Colin Crossb98c8b02016-07-29 13:44:28 -0700141 "cc/config/toolchain.go",
Vic Yangefd249e2018-11-12 20:19:56 -0800142 "cc/config/vndk.go",
Colin Crossb98c8b02016-07-29 13:44:28 -0700143
144 "cc/config/arm_device.go",
145 "cc/config/arm64_device.go",
Doug Hornc32c6b02019-01-17 14:44:05 -0800146 "cc/config/arm64_fuchsia_device.go",
Colin Crossb98c8b02016-07-29 13:44:28 -0700147 "cc/config/x86_device.go",
148 "cc/config/x86_64_device.go",
Doug Hornc32c6b02019-01-17 14:44:05 -0800149 "cc/config/x86_64_fuchsia_device.go",
Colin Crossb98c8b02016-07-29 13:44:28 -0700150
151 "cc/config/x86_darwin_host.go",
152 "cc/config/x86_linux_host.go",
Dan Willemsen01a405a2016-06-13 17:19:03 -0700153 "cc/config/x86_linux_bionic_host.go",
Colin Crossb98c8b02016-07-29 13:44:28 -0700154 "cc/config/x86_windows_host.go",
155 ],
Dan Willemsena03cf6d2016-09-26 15:45:04 -0700156 testSrcs: [
157 "cc/config/tidy_test.go",
158 ],
Colin Crossb98c8b02016-07-29 13:44:28 -0700159}
160
161bootstrap_go_package {
Colin Crossba442872015-03-14 14:26:32 -0700162 name: "soong-cc",
163 pkgPath: "android/soong/cc",
164 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -0800165 "blueprint",
166 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700167 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700168 "soong-android",
Colin Crossb98c8b02016-07-29 13:44:28 -0700169 "soong-cc-config",
Colin Cross5049f022015-03-18 13:28:46 -0700170 "soong-genrule",
Colin Cross303e21f2018-08-07 16:49:25 -0700171 "soong-tradefed",
Colin Cross3f40fa42015-01-30 17:27:36 -0800172 ],
Colin Crossba442872015-03-14 14:26:32 -0700173 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700174 "cc/androidmk.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800175 "cc/builder.go",
176 "cc/cc.go",
bralee5a5cce62019-10-22 13:39:18 +0800177 "cc/ccdeps.go",
Dan Willemsen20acc5c2016-05-25 14:47:21 -0700178 "cc/check.go",
Dan Willemsen581341d2017-02-09 16:16:31 -0800179 "cc/coverage.go",
Colin Cross581c1892015-04-07 16:50:10 -0700180 "cc/gen.go",
Ivan Lozano183a3212019-10-18 14:18:45 -0700181 "cc/linkable.go",
Stephen Craneba090d12017-05-09 15:44:35 -0700182 "cc/lto.go",
Dan Willemsen4b7d5de2016-01-12 23:20:28 -0800183 "cc/makevars.go",
Pirama Arumuga Nainarada83ec2017-08-31 23:38:27 -0700184 "cc/pgo.go",
Colin Crossce75d2c2016-10-06 16:12:58 -0700185 "cc/prebuilt.go",
Colin Cross0c461f12016-10-20 16:11:43 -0700186 "cc/proto.go",
Colin Cross2a252be2017-05-01 17:37:24 -0700187 "cc/rs.go",
Colin Cross16b23492016-01-06 14:41:07 -0800188 "cc/sanitize.go",
Jayant Chowdhary3e231fd2017-02-08 13:45:53 -0800189 "cc/sabi.go",
Colin Crossc511bc52020-04-07 16:50:32 +0000190 "cc/sdk.go",
Inseob Kim8471cda2019-11-15 09:59:12 +0900191 "cc/snapshot_utils.go",
Colin Crossca860ac2016-01-04 14:34:37 -0800192 "cc/stl.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700193 "cc/strip.go",
Inseob Kimc0907f12019-02-08 21:00:45 +0900194 "cc/sysprop.go",
Dan Willemsena03cf6d2016-09-26 15:45:04 -0700195 "cc/tidy.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800196 "cc/util.go",
Inseob Kim8471cda2019-11-15 09:59:12 +0900197 "cc/vendor_snapshot.go",
Justin Yun8effde42017-06-23 19:24:43 +0900198 "cc/vndk.go",
Justin Yun71549282017-11-17 12:10:28 +0900199 "cc/vndk_prebuilt.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800200
Jesse Pai4d336662019-09-13 17:08:52 -0700201 "cc/cflag_artifacts.go",
Fabien Sanglardd61f1f42017-01-10 16:21:22 -0800202 "cc/cmakelists.go",
Alex Lightec868fc2018-04-17 16:50:48 -0700203 "cc/compdb.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700204 "cc/compiler.go",
205 "cc/installer.go",
206 "cc/linker.go",
207
208 "cc/binary.go",
Paul Duffin25ce04b2020-01-16 11:47:25 +0000209 "cc/binary_sdk_member.go",
Mitch Phillipsda9a4632019-07-15 09:34:09 -0700210 "cc/fuzz.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700211 "cc/library.go",
Paul Duffin1c6c1c72020-02-21 10:28:43 +0000212 "cc/library_headers.go",
Paul Duffin2f6bc092019-12-13 10:40:56 +0000213 "cc/library_sdk_member.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700214 "cc/object.go",
215 "cc/test.go",
Colin Crossb916a382016-07-29 17:28:03 -0700216 "cc/toolchain_library.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700217
218 "cc/ndk_prebuilt.go",
Dan Albert914449f2016-06-17 16:45:24 -0700219 "cc/ndk_headers.go",
220 "cc/ndk_library.go",
221 "cc/ndk_sysroot.go",
Dan Willemsenb916b802017-03-19 13:44:32 -0700222
223 "cc/llndk_library.go",
Jiyong Parkd773eb32017-07-03 13:18:12 +0900224
225 "cc/kernel_headers.go",
Dan Willemsen3e5bdf22017-09-13 18:37:08 -0700226
227 "cc/genrule.go",
Jiyong Park374510b2018-03-19 18:23:01 +0900228
229 "cc/vendor_public_library.go",
Inseob Kimc0907f12019-02-08 21:00:45 +0900230
231 "cc/testing.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800232 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700233 testSrcs: [
234 "cc/cc_test.go",
Yi Kong950e0ba2019-10-08 02:27:17 -0700235 "cc/compiler_test.go",
Colin Crossf18e1102017-11-16 14:33:08 -0800236 "cc/gen_test.go",
Colin Crossef354482018-10-23 11:27:50 -0700237 "cc/genrule_test.go",
Paul Duffin1c6c1c72020-02-21 10:28:43 +0000238 "cc/library_headers_test.go",
Colin Crossad59e752017-11-16 14:29:11 -0800239 "cc/library_test.go",
Pete Bentley74c9bba2019-08-16 20:25:06 +0100240 "cc/object_test.go",
Colin Cross33b2fb72019-05-14 14:07:01 -0700241 "cc/prebuilt_test.go",
Colin Cross19878da2019-03-28 14:45:07 -0700242 "cc/proto_test.go",
Colin Crossfaeb7aa2017-02-01 14:12:44 -0800243 "cc/test_data_test.go",
Dan Willemsene5e20332015-06-23 19:46:20 -0700244 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700245 pluginFor: ["soong_build"],
Colin Crossba442872015-03-14 14:26:32 -0700246}
Colin Cross3f40fa42015-01-30 17:27:36 -0800247
Colin Cross5049f022015-03-18 13:28:46 -0700248bootstrap_go_package {
249 name: "soong-genrule",
250 pkgPath: "android/soong/genrule",
251 deps: [
252 "blueprint",
253 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700254 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700255 "soong-android",
Jeff Gastonefc1b412017-03-29 17:29:06 -0700256 "soong-shared",
Colin Cross5049f022015-03-18 13:28:46 -0700257 ],
258 srcs: [
259 "genrule/genrule.go",
260 ],
Colin Cross2a076922018-10-04 23:28:25 -0700261 testSrcs: [
262 "genrule/genrule_test.go",
263 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700264 pluginFor: ["soong_build"],
Colin Cross5049f022015-03-18 13:28:46 -0700265}
Colin Cross2fe66872015-03-30 17:20:39 -0700266
Colin Cross2fe66872015-03-30 17:20:39 -0700267bootstrap_go_package {
Nan Zhang6d34b302017-02-04 17:47:46 -0800268 name: "soong-phony",
269 pkgPath: "android/soong/phony",
270 deps: [
271 "blueprint",
272 "soong-android",
273 ],
274 srcs: [
275 "phony/phony.go",
276 ],
277 pluginFor: ["soong_build"],
278}
279
280bootstrap_go_package {
Colin Cross2fe66872015-03-30 17:20:39 -0700281 name: "soong-java",
282 pkgPath: "android/soong/java",
283 deps: [
284 "blueprint",
285 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700286 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700287 "soong-android",
Colin Crossa4f08812018-10-02 22:03:40 -0700288 "soong-cc",
Colin Cross43f08db2018-11-12 10:13:39 -0800289 "soong-dexpreopt",
Colin Cross0607cf72015-04-28 13:28:51 -0700290 "soong-genrule",
Colin Cross3e3e72d2017-06-22 17:20:19 -0700291 "soong-java-config",
Colin Cross303e21f2018-08-07 16:49:25 -0700292 "soong-tradefed",
Colin Cross2fe66872015-03-30 17:20:39 -0700293 ],
294 srcs: [
Colin Cross3bc7ffa2017-11-22 16:19:37 -0800295 "java/aapt2.go",
Colin Crossfabb6082018-02-20 17:22:23 -0800296 "java/aar.go",
Colin Cross31656952018-05-24 16:11:20 -0700297 "java/android_manifest.go",
Colin Crossa97c5d32018-03-28 14:58:31 -0700298 "java/android_resources.go",
Dan Willemsen218f6562015-07-08 18:13:11 -0700299 "java/androidmk.go",
Colin Cross30e076a2015-04-13 13:58:27 -0700300 "java/app_builder.go",
301 "java/app.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700302 "java/builder.go",
Colin Cross3d7c9822019-03-01 13:46:24 -0800303 "java/device_host_converter.go",
Colin Crossf0056cb2017-12-22 15:56:08 -0800304 "java/dex.go",
Colin Cross43f08db2018-11-12 10:13:39 -0800305 "java/dexpreopt.go",
Colin Cross800fe132019-02-11 14:21:24 -0800306 "java/dexpreopt_bootjars.go",
Colin Cross44df5812019-02-15 23:06:46 -0800307 "java/dexpreopt_config.go",
Nan Zhang581fd212018-01-10 16:06:12 -0800308 "java/droiddoc.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700309 "java/gen.go",
Colin Cross54250902017-12-05 09:28:08 -0800310 "java/genrule.go",
Colin Cross8faf8fc2019-01-16 15:15:52 -0800311 "java/hiddenapi.go",
Colin Crossf24a22a2019-01-31 14:12:44 -0800312 "java/hiddenapi_singleton.go",
Colin Crosscb933592017-11-22 13:49:43 -0800313 "java/jacoco.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700314 "java/java.go",
Brandon Lee5d45c6f2018-08-15 15:35:38 -0700315 "java/jdeps.go",
Colin Crossa97c5d32018-03-28 14:58:31 -0700316 "java/java_resources.go",
Colin Cross21fc9bb2019-01-18 15:05:09 -0800317 "java/kotlin.go",
atrostdb25ac02019-08-05 12:26:07 +0100318 "java/platform_compat_config.go",
Colin Crossbe9cdb82019-01-21 21:37:16 -0800319 "java/plugin.go",
Jiyong Park58c518b2018-05-12 22:29:12 +0900320 "java/prebuilt_apis.go",
Colin Cross6af17aa2017-09-20 12:59:05 -0700321 "java/proto.go",
Colin Cross0ef08162019-05-01 15:50:51 -0700322 "java/robolectric.go",
Colin Crossfb6d7812019-01-09 22:17:55 -0800323 "java/sdk.go",
Jiyong Parkc678ad32018-04-10 13:07:10 +0900324 "java/sdk_library.go",
Colin Crossb2559a02018-04-19 15:26:10 -0700325 "java/support_libraries.go",
Inseob Kimac1e9862019-12-09 18:15:47 +0900326 "java/sysprop.go",
Colin Cross1369cdb2017-09-29 17:58:17 -0700327 "java/system_modules.go",
Colin Crosse4759b92019-02-15 10:37:39 -0800328 "java/testing.go",
Colin Crossf0f2e2c2019-10-15 16:36:40 -0700329 "java/tradefed.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700330 ],
Colin Cross72bb3632017-07-13 16:23:21 -0700331 testSrcs: [
Jooyung Han12df5fb2019-07-11 16:18:47 +0900332 "java/androidmk_test.go",
Colin Cross44f06682017-11-29 00:17:36 -0800333 "java/app_test.go",
Colin Cross3d7c9822019-03-01 13:46:24 -0800334 "java/device_host_converter_test.go",
Colin Cross638149e2019-01-05 22:12:12 -0800335 "java/dexpreopt_test.go",
Colin Cross76228672019-02-25 16:40:34 -0800336 "java/dexpreopt_bootjars_test.go",
Colin Cross72bb3632017-07-13 16:23:21 -0700337 "java/java_test.go",
Brandon Lee5d45c6f2018-08-15 15:35:38 -0700338 "java/jdeps_test.go",
Colin Cross21fc9bb2019-01-18 15:05:09 -0800339 "java/kotlin_test.go",
Colin Crossbe9cdb82019-01-21 21:37:16 -0800340 "java/plugin_test.go",
Colin Crossfb6d7812019-01-09 22:17:55 -0800341 "java/sdk_test.go",
Colin Cross72bb3632017-07-13 16:23:21 -0700342 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700343 pluginFor: ["soong_build"],
Colin Cross2fe66872015-03-30 17:20:39 -0700344}
345
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800346bootstrap_go_package {
Colin Cross3e3e72d2017-06-22 17:20:19 -0700347 name: "soong-java-config",
348 pkgPath: "android/soong/java/config",
349 deps: [
350 "blueprint-proptools",
351 "soong-android",
Ramy Medhat1dcc27e2020-04-21 21:36:23 -0400352 "soong-remoteexec",
Colin Cross3e3e72d2017-06-22 17:20:19 -0700353 ],
354 srcs: [
355 "java/config/config.go",
Colin Crossfee57cb2017-09-05 13:16:45 -0700356 "java/config/error_prone.go",
Colin Cross93e85952017-08-15 13:34:18 -0700357 "java/config/kotlin.go",
Colin Cross3e3e72d2017-06-22 17:20:19 -0700358 "java/config/makevars.go",
359 ],
360}
361
362bootstrap_go_package {
Ivan Lozanoffee3342019-08-27 12:03:00 -0700363 name: "soong-rust-config",
364 pkgPath: "android/soong/rust/config",
365 deps: [
366 "soong-android",
367 "soong-cc-config",
368 ],
369 srcs: [
Ivan Lozanoe91823e2019-09-20 13:45:59 -0700370 "rust/config/arm_device.go",
Ivan Lozanof1c84332019-09-20 11:00:37 -0700371 "rust/config/arm64_device.go",
Ivan Lozanoffee3342019-08-27 12:03:00 -0700372 "rust/config/global.go",
373 "rust/config/toolchain.go",
Ivan Lozanoe169ad72019-09-18 08:42:54 -0700374 "rust/config/whitelist.go",
Ivan Lozano1c2ff862019-10-21 09:57:38 -0700375 "rust/config/x86_darwin_host.go",
Ivan Lozanoffee3342019-08-27 12:03:00 -0700376 "rust/config/x86_linux_host.go",
Chih-Hung Hsieh1f202e92019-12-11 15:25:47 -0800377 "rust/config/x86_device.go",
Ivan Lozanoffee3342019-08-27 12:03:00 -0700378 "rust/config/x86_64_device.go",
379 ],
380}
381
382bootstrap_go_package {
383 name: "soong-rust",
384 pkgPath: "android/soong/rust",
385 deps: [
386 "soong",
387 "soong-android",
388 "soong-cc",
389 "soong-rust-config",
390 ],
391 srcs: [
392 "rust/androidmk.go",
393 "rust/compiler.go",
394 "rust/binary.go",
395 "rust/builder.go",
396 "rust/library.go",
397 "rust/prebuilt.go",
398 "rust/proc_macro.go",
399 "rust/rust.go",
Chih-Hung Hsieha5f22ed2019-10-24 20:47:54 -0700400 "rust/test.go",
Ivan Lozanoffee3342019-08-27 12:03:00 -0700401 "rust/testing.go",
402 ],
403 testSrcs: [
404 "rust/binary_test.go",
405 "rust/compiler_test.go",
406 "rust/library_test.go",
407 "rust/rust_test.go",
Chih-Hung Hsieha5f22ed2019-10-24 20:47:54 -0700408 "rust/test_test.go",
Ivan Lozanoffee3342019-08-27 12:03:00 -0700409 ],
410 pluginFor: ["soong_build"],
411}
412
413bootstrap_go_package {
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800414 name: "soong-python",
415 pkgPath: "android/soong/python",
416 deps: [
417 "blueprint",
418 "soong-android",
yelinhsieh80880a32018-11-06 11:49:55 +0800419 "soong-tradefed",
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800420 ],
421 srcs: [
Nan Zhang5323f8e2017-05-10 13:37:54 -0700422 "python/androidmk.go",
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800423 "python/binary.go",
424 "python/builder.go",
Nan Zhanga3fc4ba2017-07-20 17:43:37 -0700425 "python/defaults.go",
Nan Zhang5323f8e2017-05-10 13:37:54 -0700426 "python/installer.go",
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800427 "python/library.go",
Nan Zhangb8fa1972017-12-22 16:12:00 -0800428 "python/proto.go",
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800429 "python/python.go",
Nan Zhang5323f8e2017-05-10 13:37:54 -0700430 "python/test.go",
Nan Zhangdb0b9a32017-02-27 10:12:13 -0800431 ],
432 testSrcs: [
433 "python/python_test.go",
434 ],
435 pluginFor: ["soong_build"],
436}
437
Jeff Gastonefc1b412017-03-29 17:29:06 -0700438bootstrap_go_package {
439 name: "soong-shared",
440 pkgPath: "android/soong/shared",
441 srcs: [
442 "shared/paths.go",
443 ],
444}
445
Jiyong Park5a8d1be2018-04-25 22:57:34 +0900446bootstrap_go_package {
Colin Cross303e21f2018-08-07 16:49:25 -0700447 name: "soong-tradefed",
448 pkgPath: "android/soong/tradefed",
449 deps: [
450 "blueprint",
451 "soong-android",
452 ],
453 srcs: [
454 "tradefed/autogen.go",
455 "tradefed/config.go",
456 "tradefed/makevars.go",
457 ],
458 pluginFor: ["soong_build"],
459}
460
461bootstrap_go_package {
Jiyong Park5a8d1be2018-04-25 22:57:34 +0900462 name: "soong-xml",
463 pkgPath: "android/soong/xml",
464 deps: [
465 "blueprint",
466 "blueprint-pathtools",
467 "soong",
468 "soong-android",
469 ],
470 srcs: [
471 "xml/xml.go",
472 ],
473 testSrcs: [
474 "xml/xml_test.go",
475 ],
476 pluginFor: ["soong_build"],
477}
478
Jiyong Park48ca7dc2018-10-10 14:01:00 +0900479bootstrap_go_package {
480 name: "soong-apex",
481 pkgPath: "android/soong/apex",
482 deps: [
483 "blueprint",
484 "soong",
485 "soong-android",
486 "soong-cc",
487 "soong-java",
Alex Light778127a2019-02-27 14:19:50 -0800488 "soong-python",
Jiyong Park48ca7dc2018-10-10 14:01:00 +0900489 ],
490 srcs: [
Jiyong Park09d77522019-11-18 11:16:27 +0900491 "apex/androidmk.go",
Jiyong Park48ca7dc2018-10-10 14:01:00 +0900492 "apex/apex.go",
Jiyong Park09d77522019-11-18 11:16:27 +0900493 "apex/builder.go",
Jiyong Parkff1458f2018-10-12 21:49:38 +0900494 "apex/key.go",
Jiyong Park09d77522019-11-18 11:16:27 +0900495 "apex/prebuilt.go",
496 "apex/vndk.go",
Jiyong Park48ca7dc2018-10-10 14:01:00 +0900497 ],
Jiyong Park25fc6a92018-11-18 18:02:45 +0900498 testSrcs: [
499 "apex/apex_test.go",
Jooyung Hana57af4a2020-01-23 05:36:59 +0000500 "apex/vndk_test.go",
Jiyong Park25fc6a92018-11-18 18:02:45 +0900501 ],
Jiyong Park48ca7dc2018-10-10 14:01:00 +0900502 pluginFor: ["soong_build"],
503}
504
Inseob Kimc0907f12019-02-08 21:00:45 +0900505bootstrap_go_package {
506 name: "soong-sysprop",
507 pkgPath: "android/soong/sysprop",
508 deps: [
509 "blueprint",
510 "soong",
511 "soong-android",
512 "soong-cc",
513 "soong-java",
514 ],
515 srcs: [
516 "sysprop/sysprop_library.go",
517 ],
518 testSrcs: [
519 "sysprop/sysprop_test.go",
520 ],
521 pluginFor: ["soong_build"],
522}
523
Jiyong Parkd1063c12019-07-17 20:08:41 +0900524bootstrap_go_package {
525 name: "soong-sdk",
526 pkgPath: "android/soong/sdk",
527 deps: [
528 "blueprint",
529 "soong",
530 "soong-android",
531 "soong-apex",
532 "soong-cc",
533 "soong-java",
534 ],
535 srcs: [
Paul Duffinb645ec82019-11-27 17:43:54 +0000536 "sdk/bp.go",
Paul Duffin8150da62019-12-16 17:21:27 +0000537 "sdk/exports.go",
Jiyong Parkd1063c12019-07-17 20:08:41 +0900538 "sdk/sdk.go",
Jiyong Park9b409bc2019-10-11 14:59:13 +0900539 "sdk/update.go",
Jiyong Parkd1063c12019-07-17 20:08:41 +0900540 ],
541 testSrcs: [
Paul Duffin047fdca2020-02-21 16:06:25 +0000542 "sdk/bp_test.go",
Paul Duffina80fdec2019-12-03 15:25:00 +0000543 "sdk/cc_sdk_test.go",
Paul Duffin8150da62019-12-16 17:21:27 +0000544 "sdk/exports_test.go",
Paul Duffina80fdec2019-12-03 15:25:00 +0000545 "sdk/java_sdk_test.go",
Jiyong Parkd1063c12019-07-17 20:08:41 +0900546 "sdk/sdk_test.go",
Paul Duffin82d90432019-11-30 09:24:33 +0000547 "sdk/testing.go",
Jiyong Parkd1063c12019-07-17 20:08:41 +0900548 ],
549 pluginFor: ["soong_build"],
550}
551
Ramy Medhat9a90fe52020-04-13 13:21:23 -0400552bootstrap_go_package {
553 name: "soong-remoteexec",
554 pkgPath: "android/soong/remoteexec",
555 deps: [
556 "blueprint",
557 "soong-android",
558 ],
559 srcs: [
560 "remoteexec/remoteexec.go",
561 ],
562 testSrcs: [
563 "remoteexec/remoteexec_test.go",
564 ],
565 pluginFor: ["soong_build"],
566}
567
Colin Cross80031312015-03-14 14:28:22 -0700568//
Dan Willemsen00fcbde2016-11-17 00:25:59 -0800569// Defaults to enable various configurations of host bionic
570//
571
572cc_defaults {
573 name: "linux_bionic_supported",
574 host_supported: true,
575 target: {
576 host: {
577 enabled: false,
578 },
579 linux_bionic: {
580 enabled: true,
581 },
582 },
583}
584
585//
Colin Cross80031312015-03-14 14:28:22 -0700586// C static libraries extracted from the gcc toolchain
587//
588
Colin Crossba442872015-03-14 14:26:32 -0700589toolchain_library {
590 name: "libatomic",
Dan Willemsen2e47b342016-11-17 01:02:25 -0800591 defaults: ["linux_bionic_supported"],
Dan Willemsen4416e5d2017-04-06 12:43:22 -0700592 vendor_available: true,
Yifan Hong50b36652020-01-21 16:38:29 -0800593 ramdisk_available: true,
Jiyong Parkf9332f12018-02-01 00:54:12 +0900594 recovery_available: true,
dimitry1f33e402019-03-26 12:39:31 +0100595 native_bridge_supported: true,
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700596
Dan Willemseneba363e2015-07-08 18:11:14 -0700597 arch: {
598 arm: {
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700599 src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/arm-linux-androideabi/lib/libatomic.a",
600 },
601 arm64: {
602 src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/lib64/libatomic.a",
603 },
604 x86: {
605 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/x86_64-linux-android/lib/libatomic.a",
606 },
607 x86_64: {
608 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/x86_64-linux-android/lib64/libatomic.a",
Dan Willemseneba363e2015-07-08 18:11:14 -0700609 },
610 },
Colin Crossba442872015-03-14 14:26:32 -0700611}
Colin Cross3f40fa42015-01-30 17:27:36 -0800612
Colin Crossba442872015-03-14 14:26:32 -0700613toolchain_library {
614 name: "libgcc",
Dan Willemsen2e47b342016-11-17 01:02:25 -0800615 defaults: ["linux_bionic_supported"],
Dan Willemsen4416e5d2017-04-06 12:43:22 -0700616 vendor_available: true,
Jiyong Parkf9332f12018-02-01 00:54:12 +0900617 recovery_available: true,
dimitry1f33e402019-03-26 12:39:31 +0100618 native_bridge_supported: true,
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700619
Dan Willemseneba363e2015-07-08 18:11:14 -0700620 arch: {
621 arm: {
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700622 src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a",
623 },
624 arm64: {
625 src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/lib/gcc/aarch64-linux-android/4.9.x/libgcc.a",
626 },
627 x86: {
628 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/32/libgcc.a",
629 },
630 x86_64: {
631 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/libgcc.a",
Dan Willemseneba363e2015-07-08 18:11:14 -0700632 },
633 },
Colin Crossba442872015-03-14 14:26:32 -0700634}
Colin Cross3f40fa42015-01-30 17:27:36 -0800635
Colin Crossba442872015-03-14 14:26:32 -0700636toolchain_library {
Yi Kongacee27c2019-03-29 20:05:14 -0700637 name: "libgcc_stripped",
638 defaults: ["linux_bionic_supported"],
639 vendor_available: true,
Yifan Hong50b36652020-01-21 16:38:29 -0800640 ramdisk_available: true,
Yi Kongacee27c2019-03-29 20:05:14 -0700641 recovery_available: true,
dimitry0e55ba62019-05-06 10:58:10 +0200642 native_bridge_supported: true,
Peter Collingbournee5ba2862019-12-10 18:37:45 -0800643 sdk_version: "current",
Yi Kongacee27c2019-03-29 20:05:14 -0700644
645 arch: {
646 arm: {
647 src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a",
Yi Kong14b65d12020-04-04 02:14:50 +0800648 repack_objects_to_keep: [],
649 enabled: false,
Yi Kongacee27c2019-03-29 20:05:14 -0700650 },
651 arm64: {
652 src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/lib/gcc/aarch64-linux-android/4.9.x/libgcc.a",
Yi Kongc49c3932019-10-15 02:01:19 -0700653 repack_objects_to_keep: ["unwind-dw2.o", "unwind-dw2-fde-dip.o"],
Yi Kongacee27c2019-03-29 20:05:14 -0700654 },
655 x86: {
656 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/32/libgcc.a",
Yi Kongc49c3932019-10-15 02:01:19 -0700657 repack_objects_to_keep: ["unwind-dw2.o", "unwind-dw2-fde-dip.o"],
Yi Kongacee27c2019-03-29 20:05:14 -0700658 },
659 x86_64: {
660 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/libgcc.a",
Yi Kongc49c3932019-10-15 02:01:19 -0700661 repack_objects_to_keep: ["unwind-dw2.o", "unwind-dw2-fde-dip.o"],
Yi Kongacee27c2019-03-29 20:05:14 -0700662 },
663 },
Yi Kongacee27c2019-03-29 20:05:14 -0700664}
665
666toolchain_library {
Josh Gao7bd4c5c2017-02-23 17:52:24 -0800667 name: "libwinpthread",
668 host_supported: true,
669 enabled: false,
670 target: {
671 windows: {
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700672 enabled: true,
Josh Gao7bd4c5c2017-02-23 17:52:24 -0800673 },
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700674 windows_x86: {
675 src: "prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/x86_64-w64-mingw32/lib32/libwinpthread.a",
676 },
677 windows_x86_64: {
678 src: "prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/x86_64-w64-mingw32/lib/libwinpthread.a",
679 },
Josh Gao7bd4c5c2017-02-23 17:52:24 -0800680 },
Jaewoong Jung62707f72018-11-16 13:26:43 -0800681 notice: ":mingw-libwinpthread-notice",
Josh Gao7bd4c5c2017-02-23 17:52:24 -0800682}
683
684toolchain_library {
Colin Crossba442872015-03-14 14:26:32 -0700685 name: "libgcov",
Dan Willemsen2e47b342016-11-17 01:02:25 -0800686 defaults: ["linux_bionic_supported"],
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700687
Dan Willemseneba363e2015-07-08 18:11:14 -0700688 arch: {
689 arm: {
Dan Willemsenfeea4df2018-10-07 18:16:48 -0700690 src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x/libgcov.a",
691 },
692 arm64: {
693 src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/lib/gcc/aarch64-linux-android/4.9.x/libgcov.a",
694 },
695 x86: {
696 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/32/libgcov.a",
697 },
698 x86_64: {
699 src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/libgcov.a",
Dan Willemseneba363e2015-07-08 18:11:14 -0700700 },
701 },
Colin Crossba442872015-03-14 14:26:32 -0700702}
Jiyong Parkd773eb32017-07-03 13:18:12 +0900703
704kernel_headers {
705 name: "device_kernel_headers",
706 vendor: true,
Hridya Valsarajud61df502018-08-21 15:51:20 -0700707 recovery_available: true,
Jiyong Parkd773eb32017-07-03 13:18:12 +0900708}
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700709
710cc_genrule {
711 name: "host_bionic_linker_asm",
712 host_supported: true,
713 device_supported: false,
714 target: {
715 linux_bionic: {
716 enabled: true,
717 },
Dan Willemsen9d6c6722017-10-02 10:41:07 -0700718 linux_glibc: {
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700719 enabled: false,
720 },
721 darwin: {
722 enabled: false,
723 },
724 },
725 tools: ["extract_linker"],
726 cmd: "$(location) -s $(out) $(in)",
727 srcs: [":linker"],
728 out: ["linker.s"],
729}
730
731cc_genrule {
Dan Willemsena0790e32018-10-12 00:24:23 -0700732 name: "host_bionic_linker_flags",
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700733 host_supported: true,
734 device_supported: false,
735 target: {
736 linux_bionic: {
737 enabled: true,
738 },
Dan Willemsen9d6c6722017-10-02 10:41:07 -0700739 linux_glibc: {
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700740 enabled: false,
741 },
742 darwin: {
743 enabled: false,
744 },
745 },
746 tools: ["extract_linker"],
Dan Willemsena0790e32018-10-12 00:24:23 -0700747 cmd: "$(location) -f $(out) $(in)",
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700748 srcs: [":linker"],
Dan Willemsena0790e32018-10-12 00:24:23 -0700749 out: ["linker.flags"],
Dan Willemsenc77a0b32017-09-18 23:19:12 -0700750}