1 // 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 13 bootstrap_go_binary { 14 name: "soong_build", 15 deps: [ 16 "blueprint", 17 "blueprint-bootstrap", 18 "soong", 19 "soong-common", 20 "soong-env", 21 ], 22 srcs: [ 23 "cmd/soong_build/main.go", 24 ], 25 primaryBuilder: true, 26 } 27 28 bootstrap_go_binary { 29 name: "soong_env", 30 deps: [ 31 "soong-env", 32 ], 33 srcs: [ 34 "cmd/soong_env/soong_env.go", 35 ], 36 } 37 38 bootstrap_go_package { 39 name: "soong-env", 40 pkgPath: "android/soong/env", 41 srcs: [ 42 "env/env.go", 43 ], 44 } 45 46 47 bootstrap_go_binary { 48 name: "soong_glob", 49 deps: [ 50 "soong-glob", 51 ], 52 srcs: [ 53 "cmd/soong_glob/soong_glob.go", 54 ], 55 } 56 57 bootstrap_go_package { 58 name: "soong-glob", 59 pkgPath: "android/soong/glob", 60 deps: [ 61 "blueprint-deptools", 62 "blueprint-pathtools", 63 ], 64 srcs: [ 65 "glob/glob.go", 66 ], 67 } 68 69 bootstrap_go_package { 70 name: "soong", 71 pkgPath: "android/soong", 72 deps: [ 73 "blueprint", 74 ], 75 srcs: [ 76 "doc.go", 77 "register.go", 78 ], 79 } 80 81 bootstrap_go_package { 82 name: "soong-common", 83 pkgPath: "android/soong/common", 84 deps: [ 85 "blueprint", 86 "blueprint-bootstrap", 87 "soong", 88 "soong-env", 89 "soong-glob", 90 ], 91 srcs: [ 92 "common/androidmk.go", 93 "common/arch.go", 94 "common/config.go", 95 "common/defaults.go", 96 "common/defs.go", 97 "common/env.go", 98 "common/glob.go", 99 "common/module.go", 100 "common/mutator.go", 101 "common/package_ctx.go", 102 "common/paths.go", 103 "common/util.go", 104 "common/variable.go", 105 ], 106 testSrcs: [ 107 "common/paths_test.go", 108 ], 109 } 110 111 bootstrap_go_package { 112 name: "soong-cc", 113 pkgPath: "android/soong/cc", 114 deps: [ 115 "blueprint", 116 "blueprint-pathtools", 117 "soong", 118 "soong-common", 119 "soong-genrule", 120 ], 121 srcs: [ 122 "cc/androidmk.go", 123 "cc/builder.go", 124 "cc/cc.go", 125 "cc/clang.go", 126 "cc/gen.go", 127 "cc/stl.go", 128 "cc/toolchain.go", 129 "cc/util.go", 130 131 "cc/arm_device.go", 132 "cc/arm64_device.go", 133 "cc/mips_device.go", 134 "cc/mips64_device.go", 135 "cc/x86_device.go", 136 "cc/x86_64_device.go", 137 138 "cc/x86_darwin_host.go", 139 "cc/x86_linux_host.go", 140 "cc/x86_windows_host.go", 141 ], 142 testSrcs: [ 143 "cc/cc_test.go", 144 ], 145 pluginFor: ["soong_build"], 146 } 147 148 bootstrap_go_package { 149 name: "soong-genrule", 150 pkgPath: "android/soong/genrule", 151 deps: [ 152 "blueprint", 153 "blueprint-pathtools", 154 "soong", 155 "soong-common", 156 ], 157 srcs: [ 158 "genrule/genrule.go", 159 ], 160 pluginFor: ["soong_build"], 161 } 162 163 bootstrap_go_binary { 164 name: "soong_jar", 165 srcs: [ 166 "cmd/soong_jar/soong_jar.go", 167 ], 168 } 169 170 bootstrap_go_package { 171 name: "soong-java", 172 pkgPath: "android/soong/java", 173 deps: [ 174 "blueprint", 175 "blueprint-pathtools", 176 "soong", 177 "soong-common", 178 "soong-genrule", 179 ], 180 srcs: [ 181 "java/androidmk.go", 182 "java/app_builder.go", 183 "java/app.go", 184 "java/builder.go", 185 "java/gen.go", 186 "java/java.go", 187 "java/resources.go", 188 ], 189 pluginFor: ["soong_build"], 190 } 191 192 // 193 // androidmk Android.mk to Blueprints translator 194 // 195 196 bootstrap_go_binary { 197 name: "androidmk", 198 srcs: [ 199 "androidmk/cmd/androidmk/android.go", 200 "androidmk/cmd/androidmk/androidmk.go", 201 "androidmk/cmd/androidmk/values.go", 202 ], 203 deps: [ 204 "androidmk-parser", 205 "blueprint-parser", 206 ], 207 } 208 209 bootstrap_go_package { 210 name: "androidmk-parser", 211 pkgPath: "android/soong/androidmk/parser", 212 srcs: [ 213 "androidmk/parser/make_strings.go", 214 "androidmk/parser/makething.go", 215 "androidmk/parser/parser.go", 216 "androidmk/parser/scope.go", 217 ], 218 testSrcs: [ 219 "androidmk/parser/make_strings_test.go", 220 ], 221 } 222 223 // 224 // C static libraries extracted from the gcc toolchain 225 // 226 227 toolchain_library { 228 name: "libatomic", 229 arch: { 230 arm: { 231 instruction_set: "arm", 232 }, 233 }, 234 } 235 236 toolchain_library { 237 name: "libgcc", 238 arch: { 239 arm: { 240 instruction_set: "arm", 241 }, 242 }, 243 } 244 245 toolchain_library { 246 name: "libgcov", 247 arch: { 248 arm: { 249 instruction_set: "arm", 250 }, 251 }, 252 } 253