Use musl rust prebuilts for USE_HOST_MUSL=true
Building rust code with musl enabled can load proc macro crates built against musl into rustc, so we have to use a version of rustc also built against musl. Bug: 216192129 Test: m USE_HOST_MUSL=true host-native Change-Id: Icd23b542a4b64a975850a8a4bb4b69183cc6c2c6
This commit is contained in:
@@ -41,10 +41,25 @@ var (
|
||||
|
||||
//TODO(b/160803703) Use a prebuilt bindgen instead of the built bindgen.
|
||||
_ = pctx.HostBinToolVariable("bindgenCmd", "bindgen")
|
||||
_ = pctx.VariableFunc("bindgenHostPrebuiltTag", func(ctx android.PackageVarContext) string {
|
||||
if ctx.Config().UseHostMusl() {
|
||||
// This is a hack to use the glibc bindgen binary until we have a musl version checked in.
|
||||
return "linux-x86"
|
||||
} else {
|
||||
return "${config.HostPrebuiltTag}"
|
||||
}
|
||||
})
|
||||
_ = pctx.VariableFunc("bindgenClangLibdir", func(ctx android.PackageVarContext) string {
|
||||
if ctx.Config().UseHostMusl() {
|
||||
return "musl/lib64/"
|
||||
} else {
|
||||
return "lib64/"
|
||||
}
|
||||
})
|
||||
_ = pctx.SourcePathVariable("bindgenClang",
|
||||
"${cc_config.ClangBase}/${config.HostPrebuiltTag}/${bindgenClangVersion}/bin/clang")
|
||||
"${cc_config.ClangBase}/${bindgenHostPrebuiltTag}/${bindgenClangVersion}/bin/clang")
|
||||
_ = pctx.SourcePathVariable("bindgenLibClang",
|
||||
"${cc_config.ClangBase}/${config.HostPrebuiltTag}/${bindgenClangVersion}/lib64/")
|
||||
"${cc_config.ClangBase}/${bindgenHostPrebuiltTag}/${bindgenClangVersion}/${bindgenClangLibdir}")
|
||||
|
||||
//TODO(ivanlozano) Switch this to RuleBuilder
|
||||
bindgen = pctx.AndroidStaticRule("bindgen",
|
||||
|
Reference in New Issue
Block a user