blob: 52bdc7ccf4a65e477a0bd4e60d12b1fddb4fad1c [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 Cross3f40fa42015-01-30 17:27:36 -080019 "soong-common",
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
47bootstrap_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 Crossba442872015-03-14 14:26:32 -070082 name: "soong-common",
83 pkgPath: "android/soong/common",
84 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: [
Dan Willemsen218f6562015-07-08 18:13:11 -070092 "common/androidmk.go",
Colin Cross3f40fa42015-01-30 17:27:36 -080093 "common/arch.go",
Colin Cross1332b002015-04-07 17:11:30 -070094 "common/config.go",
Colin Crosscfad1192015-11-02 16:43:11 -080095 "common/defaults.go",
Colin Cross3f40fa42015-01-30 17:27:36 -080096 "common/defs.go",
Colin Cross68f55102015-03-25 14:43:57 -070097 "common/env.go",
Colin Cross3f40fa42015-01-30 17:27:36 -080098 "common/glob.go",
99 "common/module.go",
Colin Cross6362e272015-10-29 15:25:03 -0700100 "common/mutator.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800101 "common/paths.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700102 "common/util.go",
Colin Cross7f64b6d2015-07-09 13:57:48 -0700103 "common/variable.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800104 ],
Colin Crossba442872015-03-14 14:26:32 -0700105}
Colin Cross3f40fa42015-01-30 17:27:36 -0800106
Colin Crossba442872015-03-14 14:26:32 -0700107bootstrap_go_package {
Colin Crossba442872015-03-14 14:26:32 -0700108 name: "soong-cc",
109 pkgPath: "android/soong/cc",
110 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -0800111 "blueprint",
112 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700113 "soong",
Colin Cross3f40fa42015-01-30 17:27:36 -0800114 "soong-common",
Colin Cross5049f022015-03-18 13:28:46 -0700115 "soong-genrule",
Colin Cross3f40fa42015-01-30 17:27:36 -0800116 ],
Colin Crossba442872015-03-14 14:26:32 -0700117 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700118 "cc/androidmk.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800119 "cc/builder.go",
120 "cc/cc.go",
121 "cc/clang.go",
Colin Cross581c1892015-04-07 16:50:10 -0700122 "cc/gen.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800123 "cc/toolchain.go",
124 "cc/util.go",
125
126 "cc/arm_device.go",
127 "cc/arm64_device.go",
Colin Cross023f1e82015-11-23 16:15:10 -0800128 "cc/mips_device.go",
Colin Cross3b336c22015-11-23 16:28:31 -0800129 "cc/mips64_device.go",
Colin Crossb0cba6a2015-11-20 15:35:26 -0800130 "cc/x86_device.go",
Colin Cross6371b382015-11-23 14:53:57 -0800131 "cc/x86_64_device.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800132
Colin Cross0af4b842015-04-30 16:36:18 -0700133 "cc/x86_darwin_host.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800134 "cc/x86_linux_host.go",
Dan Willemsen490fd492015-11-24 17:53:15 -0800135 "cc/x86_windows_host.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800136 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700137 testSrcs: [
138 "cc/cc_test.go",
139 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700140 pluginFor: ["soong_build"],
Colin Crossba442872015-03-14 14:26:32 -0700141}
Colin Cross3f40fa42015-01-30 17:27:36 -0800142
Colin Cross5049f022015-03-18 13:28:46 -0700143bootstrap_go_package {
144 name: "soong-genrule",
145 pkgPath: "android/soong/genrule",
146 deps: [
147 "blueprint",
148 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700149 "soong",
Colin Cross5049f022015-03-18 13:28:46 -0700150 "soong-common",
Colin Cross5049f022015-03-18 13:28:46 -0700151 ],
152 srcs: [
153 "genrule/genrule.go",
154 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700155 pluginFor: ["soong_build"],
Colin Cross5049f022015-03-18 13:28:46 -0700156}
Colin Cross2fe66872015-03-30 17:20:39 -0700157
158bootstrap_go_binary {
159 name: "soong_jar",
160 srcs: [
161 "cmd/soong_jar/soong_jar.go",
162 ],
163}
164
165bootstrap_go_package {
166 name: "soong-java",
167 pkgPath: "android/soong/java",
168 deps: [
169 "blueprint",
170 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700171 "soong",
Colin Cross2fe66872015-03-30 17:20:39 -0700172 "soong-common",
Colin Cross0607cf72015-04-28 13:28:51 -0700173 "soong-genrule",
Colin Cross2fe66872015-03-30 17:20:39 -0700174 ],
175 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700176 "java/androidmk.go",
Colin Cross30e076a2015-04-13 13:58:27 -0700177 "java/app_builder.go",
178 "java/app.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700179 "java/builder.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700180 "java/gen.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700181 "java/java.go",
182 "java/resources.go",
183 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700184 pluginFor: ["soong_build"],
Colin Cross2fe66872015-03-30 17:20:39 -0700185}
186
Colin Cross80031312015-03-14 14:28:22 -0700187//
188// androidmk Android.mk to Blueprints translator
189//
190
191bootstrap_go_binary {
192 name: "androidmk",
193 srcs: [
194 "androidmk/cmd/androidmk/android.go",
195 "androidmk/cmd/androidmk/androidmk.go",
196 "androidmk/cmd/androidmk/values.go",
197 ],
198 deps: [
199 "androidmk-parser",
200 "blueprint-parser",
201 ],
202}
203
204bootstrap_go_package {
205 name: "androidmk-parser",
206 pkgPath: "android/soong/androidmk/parser",
207 srcs: [
208 "androidmk/parser/make_strings.go",
209 "androidmk/parser/makething.go",
210 "androidmk/parser/parser.go",
211 "androidmk/parser/scope.go",
212 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700213 testSrcs: [
214 "androidmk/parser/make_strings_test.go",
215 ],
Colin Cross80031312015-03-14 14:28:22 -0700216}
217
218//
219// C static libraries extracted from the gcc toolchain
220//
221
Colin Crossba442872015-03-14 14:26:32 -0700222toolchain_library {
223 name: "libatomic",
Dan Willemseneba363e2015-07-08 18:11:14 -0700224 arch: {
225 arm: {
226 instruction_set: "arm",
227 },
228 },
Colin Crossba442872015-03-14 14:26:32 -0700229}
Colin Cross3f40fa42015-01-30 17:27:36 -0800230
Colin Crossba442872015-03-14 14:26:32 -0700231toolchain_library {
232 name: "libgcc",
Dan Willemseneba363e2015-07-08 18:11:14 -0700233 arch: {
234 arm: {
235 instruction_set: "arm",
236 },
237 },
Colin Crossba442872015-03-14 14:26:32 -0700238}
Colin Cross3f40fa42015-01-30 17:27:36 -0800239
Colin Crossba442872015-03-14 14:26:32 -0700240toolchain_library {
241 name: "libgcov",
Dan Willemseneba363e2015-07-08 18:11:14 -0700242 arch: {
243 arm: {
244 instruction_set: "arm",
245 },
246 },
Colin Crossba442872015-03-14 14:26:32 -0700247}