blob: c1d664f4c6e3bcab3b7821e4d9fa47c0fc95046e [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",
Dan Willemsen4b7d5de2016-01-12 23:20:28 -080099 "common/makevars.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800100 "common/module.go",
Colin Cross6362e272015-10-29 15:25:03 -0700101 "common/mutator.go",
Dan Willemsen34cc69e2015-09-23 15:26:20 -0700102 "common/package_ctx.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800103 "common/paths.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700104 "common/util.go",
Colin Cross7f64b6d2015-07-09 13:57:48 -0700105 "common/variable.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800106 ],
Dan Willemsen34cc69e2015-09-23 15:26:20 -0700107 testSrcs: [
108 "common/paths_test.go",
109 ],
Colin Crossba442872015-03-14 14:26:32 -0700110}
Colin Cross3f40fa42015-01-30 17:27:36 -0800111
Colin Crossba442872015-03-14 14:26:32 -0700112bootstrap_go_package {
Colin Crossba442872015-03-14 14:26:32 -0700113 name: "soong-cc",
114 pkgPath: "android/soong/cc",
115 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -0800116 "blueprint",
117 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700118 "soong",
Colin Cross3f40fa42015-01-30 17:27:36 -0800119 "soong-common",
Colin Cross5049f022015-03-18 13:28:46 -0700120 "soong-genrule",
Colin Cross3f40fa42015-01-30 17:27:36 -0800121 ],
Colin Crossba442872015-03-14 14:26:32 -0700122 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700123 "cc/androidmk.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800124 "cc/builder.go",
125 "cc/cc.go",
126 "cc/clang.go",
Colin Cross581c1892015-04-07 16:50:10 -0700127 "cc/gen.go",
Dan Willemsen4b7d5de2016-01-12 23:20:28 -0800128 "cc/makevars.go",
Colin Cross16b23492016-01-06 14:41:07 -0800129 "cc/sanitize.go",
Colin Crossca860ac2016-01-04 14:34:37 -0800130 "cc/stl.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800131 "cc/toolchain.go",
132 "cc/util.go",
133
134 "cc/arm_device.go",
135 "cc/arm64_device.go",
Colin Cross023f1e82015-11-23 16:15:10 -0800136 "cc/mips_device.go",
Colin Cross3b336c22015-11-23 16:28:31 -0800137 "cc/mips64_device.go",
Colin Crossb0cba6a2015-11-20 15:35:26 -0800138 "cc/x86_device.go",
Colin Cross6371b382015-11-23 14:53:57 -0800139 "cc/x86_64_device.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800140
Colin Cross0af4b842015-04-30 16:36:18 -0700141 "cc/x86_darwin_host.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800142 "cc/x86_linux_host.go",
Dan Willemsen490fd492015-11-24 17:53:15 -0800143 "cc/x86_windows_host.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800144 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700145 testSrcs: [
146 "cc/cc_test.go",
147 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700148 pluginFor: ["soong_build"],
Colin Crossba442872015-03-14 14:26:32 -0700149}
Colin Cross3f40fa42015-01-30 17:27:36 -0800150
Colin Cross5049f022015-03-18 13:28:46 -0700151bootstrap_go_package {
152 name: "soong-genrule",
153 pkgPath: "android/soong/genrule",
154 deps: [
155 "blueprint",
156 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700157 "soong",
Colin Cross5049f022015-03-18 13:28:46 -0700158 "soong-common",
Colin Cross5049f022015-03-18 13:28:46 -0700159 ],
160 srcs: [
161 "genrule/genrule.go",
162 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700163 pluginFor: ["soong_build"],
Colin Cross5049f022015-03-18 13:28:46 -0700164}
Colin Cross2fe66872015-03-30 17:20:39 -0700165
166bootstrap_go_binary {
167 name: "soong_jar",
168 srcs: [
169 "cmd/soong_jar/soong_jar.go",
170 ],
171}
172
173bootstrap_go_package {
174 name: "soong-java",
175 pkgPath: "android/soong/java",
176 deps: [
177 "blueprint",
178 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700179 "soong",
Colin Cross2fe66872015-03-30 17:20:39 -0700180 "soong-common",
Colin Cross0607cf72015-04-28 13:28:51 -0700181 "soong-genrule",
Colin Cross2fe66872015-03-30 17:20:39 -0700182 ],
183 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700184 "java/androidmk.go",
Colin Cross30e076a2015-04-13 13:58:27 -0700185 "java/app_builder.go",
186 "java/app.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700187 "java/builder.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700188 "java/gen.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700189 "java/java.go",
190 "java/resources.go",
191 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700192 pluginFor: ["soong_build"],
Colin Cross2fe66872015-03-30 17:20:39 -0700193}
194
Colin Cross80031312015-03-14 14:28:22 -0700195//
196// androidmk Android.mk to Blueprints translator
197//
198
199bootstrap_go_binary {
200 name: "androidmk",
201 srcs: [
202 "androidmk/cmd/androidmk/android.go",
203 "androidmk/cmd/androidmk/androidmk.go",
204 "androidmk/cmd/androidmk/values.go",
205 ],
206 deps: [
207 "androidmk-parser",
208 "blueprint-parser",
209 ],
210}
211
212bootstrap_go_package {
213 name: "androidmk-parser",
214 pkgPath: "android/soong/androidmk/parser",
215 srcs: [
216 "androidmk/parser/make_strings.go",
217 "androidmk/parser/makething.go",
218 "androidmk/parser/parser.go",
219 "androidmk/parser/scope.go",
220 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700221 testSrcs: [
222 "androidmk/parser/make_strings_test.go",
223 ],
Colin Cross80031312015-03-14 14:28:22 -0700224}
225
226//
227// C static libraries extracted from the gcc toolchain
228//
229
Colin Crossba442872015-03-14 14:26:32 -0700230toolchain_library {
231 name: "libatomic",
Dan Willemseneba363e2015-07-08 18:11:14 -0700232 arch: {
233 arm: {
234 instruction_set: "arm",
235 },
236 },
Colin Crossba442872015-03-14 14:26:32 -0700237}
Colin Cross3f40fa42015-01-30 17:27:36 -0800238
Colin Crossba442872015-03-14 14:26:32 -0700239toolchain_library {
240 name: "libgcc",
Dan Willemseneba363e2015-07-08 18:11:14 -0700241 arch: {
242 arm: {
243 instruction_set: "arm",
244 },
245 },
Colin Crossba442872015-03-14 14:26:32 -0700246}
Colin Cross3f40fa42015-01-30 17:27:36 -0800247
Colin Crossba442872015-03-14 14:26:32 -0700248toolchain_library {
249 name: "libgcov",
Dan Willemseneba363e2015-07-08 18:11:14 -0700250 arch: {
251 arm: {
252 instruction_set: "arm",
253 },
254 },
Colin Crossba442872015-03-14 14:26:32 -0700255}