blob: 4b56ac0d55719ffb80f8192997daa25d2e39d493 [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",
169
170 "cc/ndk_prebuilt.go",
Dan Albert914449f2016-06-17 16:45:24 -0700171 "cc/ndk_headers.go",
172 "cc/ndk_library.go",
173 "cc/ndk_sysroot.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800174 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700175 testSrcs: [
176 "cc/cc_test.go",
177 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700178 pluginFor: ["soong_build"],
Colin Crossba442872015-03-14 14:26:32 -0700179}
Colin Cross3f40fa42015-01-30 17:27:36 -0800180
Colin Cross5049f022015-03-18 13:28:46 -0700181bootstrap_go_package {
182 name: "soong-genrule",
183 pkgPath: "android/soong/genrule",
184 deps: [
185 "blueprint",
186 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700187 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700188 "soong-android",
Colin Cross5049f022015-03-18 13:28:46 -0700189 ],
190 srcs: [
191 "genrule/genrule.go",
192 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700193 pluginFor: ["soong_build"],
Colin Cross5049f022015-03-18 13:28:46 -0700194}
Colin Cross2fe66872015-03-30 17:20:39 -0700195
Dan Willemsenc2aa4a92016-05-26 15:13:03 -0700196blueprint_go_binary {
Colin Cross2fe66872015-03-30 17:20:39 -0700197 name: "soong_jar",
198 srcs: [
199 "cmd/soong_jar/soong_jar.go",
200 ],
201}
202
203bootstrap_go_package {
204 name: "soong-java",
205 pkgPath: "android/soong/java",
206 deps: [
207 "blueprint",
208 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700209 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700210 "soong-android",
Colin Cross0607cf72015-04-28 13:28:51 -0700211 "soong-genrule",
Colin Cross2fe66872015-03-30 17:20:39 -0700212 ],
213 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700214 "java/androidmk.go",
Colin Cross30e076a2015-04-13 13:58:27 -0700215 "java/app_builder.go",
216 "java/app.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700217 "java/builder.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700218 "java/gen.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700219 "java/java.go",
220 "java/resources.go",
221 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700222 pluginFor: ["soong_build"],
Colin Cross2fe66872015-03-30 17:20:39 -0700223}
224
Colin Cross80031312015-03-14 14:28:22 -0700225//
226// androidmk Android.mk to Blueprints translator
227//
228
Dan Willemsenc2aa4a92016-05-26 15:13:03 -0700229blueprint_go_binary {
Colin Cross80031312015-03-14 14:28:22 -0700230 name: "androidmk",
231 srcs: [
232 "androidmk/cmd/androidmk/android.go",
233 "androidmk/cmd/androidmk/androidmk.go",
234 "androidmk/cmd/androidmk/values.go",
235 ],
Dan Willemsen6c2ac062016-06-01 21:37:40 -0700236 testSrcs: [
Colin Crossa43f9b32016-06-07 15:34:59 -0700237 "androidmk/cmd/androidmk/androidmk_test.go",
Dan Willemsen6c2ac062016-06-01 21:37:40 -0700238 ],
Colin Cross80031312015-03-14 14:28:22 -0700239 deps: [
240 "androidmk-parser",
241 "blueprint-parser",
242 ],
243}
244
245bootstrap_go_package {
246 name: "androidmk-parser",
247 pkgPath: "android/soong/androidmk/parser",
248 srcs: [
Colin Cross08693d22016-05-25 17:25:40 -0700249 "androidmk/parser/ast.go",
Colin Cross80031312015-03-14 14:28:22 -0700250 "androidmk/parser/make_strings.go",
Colin Cross80031312015-03-14 14:28:22 -0700251 "androidmk/parser/parser.go",
252 "androidmk/parser/scope.go",
253 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700254 testSrcs: [
255 "androidmk/parser/make_strings_test.go",
256 ],
Colin Cross80031312015-03-14 14:28:22 -0700257}
258
259//
260// C static libraries extracted from the gcc toolchain
261//
262
Colin Crossba442872015-03-14 14:26:32 -0700263toolchain_library {
264 name: "libatomic",
Dan Willemseneba363e2015-07-08 18:11:14 -0700265 arch: {
266 arm: {
267 instruction_set: "arm",
268 },
269 },
Colin Crossba442872015-03-14 14:26:32 -0700270}
Colin Cross3f40fa42015-01-30 17:27:36 -0800271
Colin Crossba442872015-03-14 14:26:32 -0700272toolchain_library {
273 name: "libgcc",
Dan Willemseneba363e2015-07-08 18:11:14 -0700274 arch: {
275 arm: {
276 instruction_set: "arm",
277 },
278 },
Colin Crossba442872015-03-14 14:26:32 -0700279}
Colin Cross3f40fa42015-01-30 17:27:36 -0800280
Colin Crossba442872015-03-14 14:26:32 -0700281toolchain_library {
282 name: "libgcov",
Dan Willemseneba363e2015-07-08 18:11:14 -0700283 arch: {
284 arm: {
285 instruction_set: "arm",
286 },
287 },
Colin Crossba442872015-03-14 14:26:32 -0700288}