blob: 805346fe8c4c38dcc508d381c934893ea195bd80 [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
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 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 Crossba442872015-03-14 14:26:32 -0700115 name: "soong-cc",
116 pkgPath: "android/soong/cc",
117 deps: [
Colin Cross3f40fa42015-01-30 17:27:36 -0800118 "blueprint",
119 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700120 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700121 "soong-android",
Colin Cross5049f022015-03-18 13:28:46 -0700122 "soong-genrule",
Colin Cross3f40fa42015-01-30 17:27:36 -0800123 ],
Colin Crossba442872015-03-14 14:26:32 -0700124 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700125 "cc/androidmk.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800126 "cc/builder.go",
127 "cc/cc.go",
128 "cc/clang.go",
Colin Cross581c1892015-04-07 16:50:10 -0700129 "cc/gen.go",
Dan Willemsen4b7d5de2016-01-12 23:20:28 -0800130 "cc/makevars.go",
Colin Cross16b23492016-01-06 14:41:07 -0800131 "cc/sanitize.go",
Colin Crossca860ac2016-01-04 14:34:37 -0800132 "cc/stl.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800133 "cc/toolchain.go",
134 "cc/util.go",
135
136 "cc/arm_device.go",
137 "cc/arm64_device.go",
Colin Cross023f1e82015-11-23 16:15:10 -0800138 "cc/mips_device.go",
Colin Cross3b336c22015-11-23 16:28:31 -0800139 "cc/mips64_device.go",
Colin Crossb0cba6a2015-11-20 15:35:26 -0800140 "cc/x86_device.go",
Colin Cross6371b382015-11-23 14:53:57 -0800141 "cc/x86_64_device.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800142
Colin Cross0af4b842015-04-30 16:36:18 -0700143 "cc/x86_darwin_host.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800144 "cc/x86_linux_host.go",
Dan Willemsen490fd492015-11-24 17:53:15 -0800145 "cc/x86_windows_host.go",
Colin Cross3f40fa42015-01-30 17:27:36 -0800146 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700147 testSrcs: [
148 "cc/cc_test.go",
149 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700150 pluginFor: ["soong_build"],
Colin Crossba442872015-03-14 14:26:32 -0700151}
Colin Cross3f40fa42015-01-30 17:27:36 -0800152
Colin Cross5049f022015-03-18 13:28:46 -0700153bootstrap_go_package {
154 name: "soong-genrule",
155 pkgPath: "android/soong/genrule",
156 deps: [
157 "blueprint",
158 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700159 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700160 "soong-android",
Colin Cross5049f022015-03-18 13:28:46 -0700161 ],
162 srcs: [
163 "genrule/genrule.go",
164 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700165 pluginFor: ["soong_build"],
Colin Cross5049f022015-03-18 13:28:46 -0700166}
Colin Cross2fe66872015-03-30 17:20:39 -0700167
168bootstrap_go_binary {
169 name: "soong_jar",
170 srcs: [
171 "cmd/soong_jar/soong_jar.go",
172 ],
173}
174
175bootstrap_go_package {
176 name: "soong-java",
177 pkgPath: "android/soong/java",
178 deps: [
179 "blueprint",
180 "blueprint-pathtools",
Colin Cross463a90e2015-06-17 14:20:06 -0700181 "soong",
Colin Cross635c3b02016-05-18 15:37:25 -0700182 "soong-android",
Colin Cross0607cf72015-04-28 13:28:51 -0700183 "soong-genrule",
Colin Cross2fe66872015-03-30 17:20:39 -0700184 ],
185 srcs: [
Dan Willemsen218f6562015-07-08 18:13:11 -0700186 "java/androidmk.go",
Colin Cross30e076a2015-04-13 13:58:27 -0700187 "java/app_builder.go",
188 "java/app.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700189 "java/builder.go",
Colin Crossc0b06f12015-04-08 13:03:43 -0700190 "java/gen.go",
Colin Cross2fe66872015-03-30 17:20:39 -0700191 "java/java.go",
192 "java/resources.go",
193 ],
Dan Willemsen98b26c52015-07-27 15:08:24 -0700194 pluginFor: ["soong_build"],
Colin Cross2fe66872015-03-30 17:20:39 -0700195}
196
Colin Cross80031312015-03-14 14:28:22 -0700197//
198// androidmk Android.mk to Blueprints translator
199//
200
201bootstrap_go_binary {
202 name: "androidmk",
203 srcs: [
204 "androidmk/cmd/androidmk/android.go",
205 "androidmk/cmd/androidmk/androidmk.go",
206 "androidmk/cmd/androidmk/values.go",
207 ],
208 deps: [
209 "androidmk-parser",
210 "blueprint-parser",
211 ],
212}
213
214bootstrap_go_package {
215 name: "androidmk-parser",
216 pkgPath: "android/soong/androidmk/parser",
217 srcs: [
218 "androidmk/parser/make_strings.go",
219 "androidmk/parser/makething.go",
220 "androidmk/parser/parser.go",
221 "androidmk/parser/scope.go",
222 ],
Dan Willemsene5e20332015-06-23 19:46:20 -0700223 testSrcs: [
224 "androidmk/parser/make_strings_test.go",
225 ],
Colin Cross80031312015-03-14 14:28:22 -0700226}
227
228//
229// C static libraries extracted from the gcc toolchain
230//
231
Colin Crossba442872015-03-14 14:26:32 -0700232toolchain_library {
233 name: "libatomic",
Dan Willemseneba363e2015-07-08 18:11:14 -0700234 arch: {
235 arm: {
236 instruction_set: "arm",
237 },
238 },
Colin Crossba442872015-03-14 14:26:32 -0700239}
Colin Cross3f40fa42015-01-30 17:27:36 -0800240
Colin Crossba442872015-03-14 14:26:32 -0700241toolchain_library {
242 name: "libgcc",
Dan Willemseneba363e2015-07-08 18:11:14 -0700243 arch: {
244 arm: {
245 instruction_set: "arm",
246 },
247 },
Colin Crossba442872015-03-14 14:26:32 -0700248}
Colin Cross3f40fa42015-01-30 17:27:36 -0800249
Colin Crossba442872015-03-14 14:26:32 -0700250toolchain_library {
251 name: "libgcov",
Dan Willemseneba363e2015-07-08 18:11:14 -0700252 arch: {
253 arm: {
254 instruction_set: "arm",
255 },
256 },
Colin Crossba442872015-03-14 14:26:32 -0700257}