platform_build_soong/Android.bp
Dan Willemsen 4b7d5deb84 Publish Soong configuration to Make variables
For configuration like TARGET_GLOBAL_CFLAGS, it would be good to have
Make and Soong use the same values. This change adds an interface for
packages like cc to verify the current value of make variables match the
Soong equivalents, and once they're satisfied with the results, remove
the make definition and use the value from Soong.

The cc implementation exports a few variables currently that I expect to
match between both implementations in all cases. It also checks
{CLANG,}{HOST,TARGET}_GLOBAL_{C,LD}FLAGS, which should be mostly similar
between make and soong now.

Bug: 23566674
Change-Id: Idc8582ef31ace11a8baefcf525c3683f08a573aa
2016-05-12 13:36:55 -07:00

255 lines
5 KiB
Text

//
// WARNING: Modifying this file will NOT automatically regenerate build.ninja.in!
//
// Before modifying this file make sure minibp is up to date:
// 1) "repo sync build/soong" to make sure you have the latest build.ninja.in
// 2) build minibp, which builds automicatically through the normal build steps. For example:
//
// After modifying this file regenerate build.ninja.in and build your changes:
// 1) In your build directory, execute "../bootstrap.bash -r" to regenerate build.ninja.in
// 2) Build again
//
bootstrap_go_binary {
name: "soong_build",
deps: [
"blueprint",
"blueprint-bootstrap",
"soong",
"soong-common",
"soong-env",
],
srcs: [
"cmd/soong_build/main.go",
],
primaryBuilder: true,
}
bootstrap_go_binary {
name: "soong_env",
deps: [
"soong-env",
],
srcs: [
"cmd/soong_env/soong_env.go",
],
}
bootstrap_go_package {
name: "soong-env",
pkgPath: "android/soong/env",
srcs: [
"env/env.go",
],
}
bootstrap_go_binary {
name: "soong_glob",
deps: [
"soong-glob",
],
srcs: [
"cmd/soong_glob/soong_glob.go",
],
}
bootstrap_go_package {
name: "soong-glob",
pkgPath: "android/soong/glob",
deps: [
"blueprint-deptools",
"blueprint-pathtools",
],
srcs: [
"glob/glob.go",
],
}
bootstrap_go_package {
name: "soong",
pkgPath: "android/soong",
deps: [
"blueprint",
],
srcs: [
"doc.go",
"register.go",
],
}
bootstrap_go_package {
name: "soong-common",
pkgPath: "android/soong/common",
deps: [
"blueprint",
"blueprint-bootstrap",
"soong",
"soong-env",
"soong-glob",
],
srcs: [
"common/androidmk.go",
"common/arch.go",
"common/config.go",
"common/defaults.go",
"common/defs.go",
"common/env.go",
"common/glob.go",
"common/makevars.go",
"common/module.go",
"common/mutator.go",
"common/package_ctx.go",
"common/paths.go",
"common/util.go",
"common/variable.go",
],
testSrcs: [
"common/paths_test.go",
],
}
bootstrap_go_package {
name: "soong-cc",
pkgPath: "android/soong/cc",
deps: [
"blueprint",
"blueprint-pathtools",
"soong",
"soong-common",
"soong-genrule",
],
srcs: [
"cc/androidmk.go",
"cc/builder.go",
"cc/cc.go",
"cc/clang.go",
"cc/gen.go",
"cc/makevars.go",
"cc/sanitize.go",
"cc/stl.go",
"cc/toolchain.go",
"cc/util.go",
"cc/arm_device.go",
"cc/arm64_device.go",
"cc/mips_device.go",
"cc/mips64_device.go",
"cc/x86_device.go",
"cc/x86_64_device.go",
"cc/x86_darwin_host.go",
"cc/x86_linux_host.go",
"cc/x86_windows_host.go",
],
testSrcs: [
"cc/cc_test.go",
],
pluginFor: ["soong_build"],
}
bootstrap_go_package {
name: "soong-genrule",
pkgPath: "android/soong/genrule",
deps: [
"blueprint",
"blueprint-pathtools",
"soong",
"soong-common",
],
srcs: [
"genrule/genrule.go",
],
pluginFor: ["soong_build"],
}
bootstrap_go_binary {
name: "soong_jar",
srcs: [
"cmd/soong_jar/soong_jar.go",
],
}
bootstrap_go_package {
name: "soong-java",
pkgPath: "android/soong/java",
deps: [
"blueprint",
"blueprint-pathtools",
"soong",
"soong-common",
"soong-genrule",
],
srcs: [
"java/androidmk.go",
"java/app_builder.go",
"java/app.go",
"java/builder.go",
"java/gen.go",
"java/java.go",
"java/resources.go",
],
pluginFor: ["soong_build"],
}
//
// androidmk Android.mk to Blueprints translator
//
bootstrap_go_binary {
name: "androidmk",
srcs: [
"androidmk/cmd/androidmk/android.go",
"androidmk/cmd/androidmk/androidmk.go",
"androidmk/cmd/androidmk/values.go",
],
deps: [
"androidmk-parser",
"blueprint-parser",
],
}
bootstrap_go_package {
name: "androidmk-parser",
pkgPath: "android/soong/androidmk/parser",
srcs: [
"androidmk/parser/make_strings.go",
"androidmk/parser/makething.go",
"androidmk/parser/parser.go",
"androidmk/parser/scope.go",
],
testSrcs: [
"androidmk/parser/make_strings_test.go",
],
}
//
// C static libraries extracted from the gcc toolchain
//
toolchain_library {
name: "libatomic",
arch: {
arm: {
instruction_set: "arm",
},
},
}
toolchain_library {
name: "libgcc",
arch: {
arm: {
instruction_set: "arm",
},
},
}
toolchain_library {
name: "libgcov",
arch: {
arm: {
instruction_set: "arm",
},
},
}