Export RustDefaultVersion to Bazel
The config constant is consumed by rust toolchain implemented in aosp/2709668.
Bug: 295918553
Test: go test
Change-Id: I0a28a802ad28f6ee24dfb1b5bdab72094534ae04
diff --git a/bp2build/conversion.go b/bp2build/conversion.go
index f280924..7791419 100644
--- a/bp2build/conversion.go
+++ b/bp2build/conversion.go
@@ -12,6 +12,7 @@
"android/soong/cc"
cc_config "android/soong/cc/config"
java_config "android/soong/java/config"
+ rust_config "android/soong/rust/config"
"android/soong/starlark_fmt"
"github.com/google/blueprint/proptools"
@@ -37,6 +38,9 @@
files = append(files, newFile("java_toolchain", GeneratedBuildFileName, "")) // Creates a //java_toolchain package.
files = append(files, newFile("java_toolchain", "constants.bzl", java_config.BazelJavaToolchainVars(cfg)))
+ files = append(files, newFile("rust_toolchain", GeneratedBuildFileName, "")) // Creates a //rust_toolchain package.
+ files = append(files, newFile("rust_toolchain", "constants.bzl", rust_config.BazelRustToolchainVars(cfg)))
+
files = append(files, newFile("apex_toolchain", GeneratedBuildFileName, "")) // Creates a //apex_toolchain package.
apexToolchainVars, err := apex.BazelApexToolchainVars()
if err != nil {
diff --git a/bp2build/conversion_test.go b/bp2build/conversion_test.go
index 15284ce..cbffaa0 100644
--- a/bp2build/conversion_test.go
+++ b/bp2build/conversion_test.go
@@ -117,6 +117,14 @@
basename: "constants.bzl",
},
{
+ dir: "rust_toolchain",
+ basename: GeneratedBuildFileName,
+ },
+ {
+ dir: "rust_toolchain",
+ basename: "constants.bzl",
+ },
+ {
dir: "apex_toolchain",
basename: GeneratedBuildFileName,
},
diff --git a/rust/config/global.go b/rust/config/global.go
index 86eb2d1..ca2c9af 100644
--- a/rust/config/global.go
+++ b/rust/config/global.go
@@ -21,9 +21,10 @@
_ "android/soong/cc/config"
)
-var pctx = android.NewPackageContext("android/soong/rust/config")
-
var (
+ pctx = android.NewPackageContext("android/soong/rust/config")
+ exportedVars = android.NewExportedVariables(pctx)
+
RustDefaultVersion = "1.71.0"
RustDefaultBase = "prebuilts/rust/"
DefaultEdition = "2021"
@@ -105,6 +106,7 @@
pctx.StaticVariable("DeviceGlobalLinkFlags", strings.Join(deviceGlobalLinkFlags, " "))
+ exportedVars.ExportStringStaticVariable("RUST_DEFAULT_VERSION", RustDefaultVersion)
}
func getRustVersionPctx(ctx android.PackageVarContext) string {
@@ -117,3 +119,8 @@
}
return RustDefaultVersion
}
+
+// BazelRustToolchainVars returns a string with
+func BazelRustToolchainVars(config android.Config) string {
+ return android.BazelToolchainVars(config, exportedVars)
+}