blob: e1a66213a040b3de57c3af3523033a3d49d67658 [file] [log] [blame]
Colin Cross3f40fa42015-01-30 17:27:36 -08001//
2// WARNING: Modifying this file will NOT automatically regenerate build.ninja.in!
3//
4// Before modifying this file make sure minibp is up to date:
5// 1) "repo sync build/soong" to make sure you have the latest build.ninja.in
6// 2) build minibp, which builds automicatically through the normal build steps. For example:
7//
8// After modifying this file regenerate build.ninja.in and build your changes:
9// 1) In your build directory, execute "../bootstrap.bash -r" to regenerate build.ninja.in
10// 2) Build again
11//
12
Colin Crossba442872015-03-14 14:26:32 -070013bootstrap_go_binary {
14 name: "soong_build",
15 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -080016 "blueprint",
17 "blueprint-bootstrap",
Colin Cross463a90e2015-06-17 14:20:06 -070018 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -070019 "soong-android",
Colin Cross68f55102015-03-25 14:43:57 -070020 "soong-env",
Colin Cross3f40fa42015-01-30 17:27:36 -080021 ],
Colin Crossba442872015-03-14 14:26:32 -070022 srcs: [
Colin Cross3f40fa42015-01-30 17:27:36 -080023 "cmd/soong_build/main.go",
24 ],
Colin Crossba442872015-03-14 14:26:32 -070025 primaryBuilder: true,
26}
Colin Cross3f40fa42015-01-30 17:27:36 -080027
Colin Crossba442872015-03-14 14:26:32 -070028bootstrap_go_binary {
Colin Cross68f55102015-03-25 14:43:57 -070029 name: "soong_env",
30 deps: [
31 "soong-env",
32 ],
33 srcs: [
34 "cmd/soong_env/soong_env.go",
35 ],
36}
37
38bootstrap_go_package {
39 name: "soong-env",
40 pkgPath: "android/soong/env",
41 srcs: [
42 "env/env.go",
43 ],
44}
45
46
Dan Willemsenc2aa4a92016-05-26 15:13:03 -070047blueprint_go_binary {
Colin Crossba442872015-03-14 14:26:32 -070048 name: "soong_glob",
49 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -080050 "soong-glob",
51 ],
Colin Crossba442872015-03-14 14:26:32 -070052 srcs: [
Colin Cross3f40fa42015-01-30 17:27:36 -080053 "cmd/soong_glob/soong_glob.go",
54 ],
Colin Crossba442872015-03-14 14:26:32 -070055}
Colin Cross3f40fa42015-01-30 17:27:36 -080056
Colin Crossba442872015-03-14 14:26:32 -070057bootstrap_go_package {
58 name: "soong-glob",
59 pkgPath: "android/soong/glob",
60 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -080061 "blueprint-deptools",
Colin Cross6f23ef62015-04-24 15:12:39 -070062 "blueprint-pathtools",
Colin Cross3f40fa42015-01-30 17:27:36 -080063 ],
Colin Crossba442872015-03-14 14:26:32 -070064 srcs: [
Colin Cross3f40fa42015-01-30 17:27:36 -080065 "glob/glob.go",
66 ],
Colin Crossba442872015-03-14 14:26:32 -070067}
Colin Cross3f40fa42015-01-30 17:27:36 -080068
Colin Crossba442872015-03-14 14:26:32 -070069bootstrap_go_package {
Colin Cross463a90e2015-06-17 14:20:06 -070070 name: "soong",
71 pkgPath: "android/soong",
72 deps: [
73 "blueprint",
74 ],
75 srcs: [
76 "doc.go",
77 "register.go",
78 ],
79}
80
81bootstrap_go_package {
Colin Cross635c3b02016-05-18 15:37:25 -070082 name: "soong-android",
83 pkgPath: "android/soong/android",
Colin Crossba442872015-03-14 14:26:32 -070084 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -080085 "blueprint",
86 "blueprint-bootstrap",
Colin Cross463a90e2015-06-17 14:20:06 -070087 "soong",
Colin Cross68f55102015-03-25 14:43:57 -070088 "soong-env",
Colin Crossba442872015-03-14 14:26:32 -070089 "soong-glob",
Colin Cross3f40fa42015-01-30 17:27:36 -080090 ],
Colin Crossba442872015-03-14 14:26:32 -070091 srcs: [
Colin Cross635c3b02016-05-18 15:37:25 -070092 "android/androidmk.go",
93 "android/arch.go",
94 "android/config.go",
95 "android/defaults.go",
96 "android/defs.go",
97 "android/glob.go",
98 "android/makevars.go",
99 "android/module.go",
100 "android/mutator.go",
101 "android/package_ctx.go",
102 "android/paths.go",
103 "android/util.go",
104 "android/variable.go",
Dan Willemsene8b1bc02016-05-12 19:03:10 -0700105
106 // Lock down environment access last
Colin Cross635c3b02016-05-18 15:37:25 -0700107 "android/env.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800108 ],
Dan Willemsen34cc69e2015-09-23 15:26:20 -0700109 testSrcs: [
Colin Cross635c3b02016-05-18 15:37:25 -0700110 "android/paths_test.go",
Dan Willemsen34cc69e2015-09-23 15:26:20 -0700111 ],
Colin Crossba442872015-03-14 14:26:32 -0700112}
Colin Cross3f40fa42015-01-30 17:27:36 -0800113
Colin Crossba442872015-03-14 14:26:32 -0700114bootstrap_go_package {
Colin Crossb98c8b02016-07-29 13:44:28 -0700115 name: "soong-cc-config",
116 pkgPath: "android/soong/cc/config",
117 deps: [
118 "soong-android",
119 ],
120 srcs: [
121 "cc/config/clang.go",
122 "cc/config/global.go",
123 "cc/config/toolchain.go",
124
125 "cc/config/arm_device.go",
126 "cc/config/arm64_device.go",
127 "cc/config/mips_device.go",
128 "cc/config/mips64_device.go",
129 "cc/config/x86_device.go",
130 "cc/config/x86_64_device.go",
131
132 "cc/config/x86_darwin_host.go",
133 "cc/config/x86_linux_host.go",
134 "cc/config/x86_windows_host.go",
135 ],
136}
137
138bootstrap_go_package {
Colin Crossba442872015-03-14 14:26:32 -0700139 name: "soong-cc",
140 pkgPath: "android/soong/cc",
141 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -0800142 "blueprint",
143 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700144 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700145 "soong-android",
Colin Crossb98c8b02016-07-29 13:44:28 -0700146 "soong-cc-config",
Colin Cross5049f022015-03-18 13:28:46 -0700147 "soong-genrule",
Colin Cross3f40fa42015-01-30 17:27:36 -0800148 ],
Colin Crossba442872015-03-14 14:26:32 -0700149 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700150 "cc/androidmk.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800151 "cc/builder.go",
152 "cc/cc.go",
Dan Willemsen20acc5c2016-05-25 14:47:21 -0700153 "cc/check.go",
Colin Cross581c1892015-04-07 16:50:10 -0700154 "cc/gen.go",
Dan Willemsen4b7d5de2016-01-12 23:20:28 -0800155 "cc/makevars.go",
Colin Cross16b23492016-01-06 14:41:07 -0800156 "cc/sanitize.go",
Colin Crossca860ac2016-01-04 14:34:37 -0800157 "cc/stl.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700158 "cc/strip.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800159 "cc/util.go",
160
Colin Cross4d9c2d12016-07-29 12:48:20 -0700161 "cc/compiler.go",
162 "cc/installer.go",
163 "cc/linker.go",
164
165 "cc/binary.go",
166 "cc/library.go",
167 "cc/object.go",
168 "cc/test.go",
Colin Crossb916a382016-07-29 17:28:03 -0700169 "cc/toolchain_library.go",
Colin Cross4d9c2d12016-07-29 12:48:20 -0700170
171 "cc/ndk_prebuilt.go",
Dan Albert914449f2016-06-17 16:45:24 -0700172 "cc/ndk_headers.go",
173 "cc/ndk_library.go",
174 "cc/ndk_sysroot.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800175 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700176 testSrcs: [
177 "cc/cc_test.go",
178 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700179 pluginFor: ["soong_build"],
Colin Crossba442872015-03-14 14:26:32 -0700180}
Colin Cross3f40fa42015-01-30 17:27:36 -0800181
Colin Cross5049f022015-03-18 13:28:46 -0700182bootstrap_go_package {
183 name: "soong-genrule",
184 pkgPath: "android/soong/genrule",
185 deps: [
186 "blueprint",
187 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700188 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700189 "soong-android",
Colin Cross5049f022015-03-18 13:28:46 -0700190 ],
191 srcs: [
192 "genrule/genrule.go",
193 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700194 pluginFor: ["soong_build"],
Colin Cross5049f022015-03-18 13:28:46 -0700195}
Colin Cross2fe66872015-03-30 17:20:39 -0700196
Dan Willemsenc2aa4a92016-05-26 15:13:03 -0700197blueprint_go_binary {
Colin Cross2fe66872015-03-30 17:20:39 -0700198 name: "soong_jar",
199 srcs: [
200 "cmd/soong_jar/soong_jar.go",
201 ],
202}
203
204bootstrap_go_package {
205 name: "soong-java",
206 pkgPath: "android/soong/java",
207 deps: [
208 "blueprint",
209 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700210 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700211 "soong-android",
Colin Cross0607cf72015-04-28 13:28:51 -0700212 "soong-genrule",
Colin Cross2fe66872015-03-30 17:20:39 -0700213 ],
214 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700215 "java/androidmk.go",
Colin Cross30e076a2015-04-13 13:58:27 -0700216 "java/app_builder.go",
217 "java/app.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700218 "java/builder.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700219 "java/gen.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700220 "java/java.go",
221 "java/resources.go",
222 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700223 pluginFor: ["soong_build"],
Colin Cross2fe66872015-03-30 17:20:39 -0700224}
225
Colin Cross80031312015-03-14 14:28:22 -0700226//
227// androidmk Android.mk to Blueprints translator
228//
229
Dan Willemsenc2aa4a92016-05-26 15:13:03 -0700230blueprint_go_binary {
Colin Cross80031312015-03-14 14:28:22 -0700231 name: "androidmk",
232 srcs: [
233 "androidmk/cmd/androidmk/android.go",
234 "androidmk/cmd/androidmk/androidmk.go",
235 "androidmk/cmd/androidmk/values.go",
236 ],
Dan Willemsen6c2ac062016-06-01 21:37:40 -0700237 testSrcs: [
Colin Crossa43f9b32016-06-07 15:34:59 -0700238 "androidmk/cmd/androidmk/androidmk_test.go",
Dan Willemsen6c2ac062016-06-01 21:37:40 -0700239 ],
Colin Cross80031312015-03-14 14:28:22 -0700240 deps: [
241 "androidmk-parser",
242 "blueprint-parser",
243 ],
244}
245
246bootstrap_go_package {
247 name: "androidmk-parser",
248 pkgPath: "android/soong/androidmk/parser",
249 srcs: [
Colin Cross08693d22016-05-25 17:25:40 -0700250 "androidmk/parser/ast.go",
Colin Cross80031312015-03-14 14:28:22 -0700251 "androidmk/parser/make_strings.go",
Colin Cross80031312015-03-14 14:28:22 -0700252 "androidmk/parser/parser.go",
253 "androidmk/parser/scope.go",
254 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700255 testSrcs: [
256 "androidmk/parser/make_strings_test.go",
257 ],
Colin Cross80031312015-03-14 14:28:22 -0700258}
259
260//
261// C static libraries extracted from the gcc toolchain
262//
263
Colin Crossba442872015-03-14 14:26:32 -0700264toolchain_library {
265 name: "libatomic",
Dan Willemseneba363e2015-07-08 18:11:14 -0700266 arch: {
267 arm: {
268 instruction_set: "arm",
269 },
270 },
Colin Crossba442872015-03-14 14:26:32 -0700271}
Colin Cross3f40fa42015-01-30 17:27:36 -0800272
Colin Crossba442872015-03-14 14:26:32 -0700273toolchain_library {
274 name: "libgcc",
Dan Willemseneba363e2015-07-08 18:11:14 -0700275 arch: {
276 arm: {
277 instruction_set: "arm",
278 },
279 },
Colin Crossba442872015-03-14 14:26:32 -0700280}
Colin Cross3f40fa42015-01-30 17:27:36 -0800281
Colin Crossba442872015-03-14 14:26:32 -0700282toolchain_library {
283 name: "libgcov",
Dan Willemseneba363e2015-07-08 18:11:14 -0700284 arch: {
285 arm: {
286 instruction_set: "arm",
287 },
288 },
Colin Crossba442872015-03-14 14:26:32 -0700289}