platform_build_soong/Android.bp
Colin Cross 5b588dda7f Tweak linux_glibc properties for musl builds in build/soong
For convenience, builds against musl libc currently use the
linux_glibc properties because they are almost always linux-specific
and not glibc-specific.  In preparation for removing this hack,
tweak the linux_glibc properties by either moving them to host_linux,
which will apply to linux_glibc, linux_musl and linux_bionic, or
by setting appropriate musl or linux_musl properties.  Properties
that must not be repeated while musl uses linux_musl and also still
uses the linux_glibc properties are moved to glibc properties, which
don't apply to musl.  Whether these stay as glibc properties or get
moved back to linux_glibc later once the musl hack is removed is TBD.

Bug: 223257095
Test: m checkbuild
Test: m USE_HOST_MUSL=true host-native
Change-Id: I04833c36fe267d218257c8910056ed4106ca8f3b
2022-03-29 22:42:11 -07:00

121 lines
2.3 KiB
Text

package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
subdirs = [
"androidmk",
"bpfix",
"cmd/*",
"fs",
"finder",
"jar",
"zip",
"third_party/zip",
"ui/*",
]
bootstrap_go_package {
name: "soong",
pkgPath: "android/soong",
deps: [
"blueprint",
],
srcs: [
"doc.go",
],
}
//
// Defaults to enable various configurations of host bionic
//
cc_defaults {
name: "linux_bionic_supported",
host_supported: true,
target: {
host: {
enabled: false,
},
linux_bionic: {
enabled: true,
},
},
}
//
// C static libraries extracted from the gcc toolchain
//
kernel_headers {
name: "device_kernel_headers",
vendor: true,
recovery_available: true,
min_sdk_version: "apex_inherit",
}
cc_genrule {
name: "host_bionic_linker_asm",
host_supported: true,
device_supported: false,
target: {
linux_bionic: {
enabled: true,
},
linux_musl: {
enabled: false,
},
linux_glibc: {
enabled: false,
},
darwin: {
enabled: false,
},
},
tools: ["extract_linker"],
cmd: "$(location) -s $(out) $(in)",
srcs: [":linker"],
out: ["linker.s"],
}
cc_genrule {
name: "host_bionic_linker_script",
host_supported: true,
device_supported: false,
target: {
linux_bionic: {
enabled: true,
},
linux_musl: {
enabled: false,
},
linux_glibc: {
enabled: false,
},
darwin: {
enabled: false,
},
},
tools: ["extract_linker"],
cmd: "$(location) -T $(out) $(in)",
srcs: [":linker"],
out: ["linker.script"],
}
// Instantiate the dex_bootjars singleton module.
dex_bootjars {
name: "dex_bootjars",
}
// Pseudo-test that's run on checkbuilds to ensure that get_clang_version can
// parse cc/config/global.go.
genrule {
name: "get_clang_version_test",
cmd: "$(location get_clang_version) > $(out)",
tools: ["get_clang_version"],
srcs: ["cc/config/global.go"],
out: ["clang-prebuilts-version.txt"],
}
dexpreopt_systemserver_check {
name: "dexpreopt_systemserver_check",
}