Handle target.bionic in bp2build.
Soong supports some hand-crafted target.<type> that match multiple os or arch types to simplify configuring for similar targets. target.bionic is used to match on both android and linux_bionic OSes for cases where they should be handled the same way. Test: build/bazel/ci/bp2build.sh Change-Id: I47b6aaf3279e4d242c4fd0e12f24117eb98e0665
This commit is contained in:
@@ -91,6 +91,11 @@ var (
|
||||
conditionsDefault: ConditionsDefaultSelectKey, // The default condition of an os select map.
|
||||
}
|
||||
|
||||
platformBionicMap = map[string]string{
|
||||
"bionic": "//build/bazel/platforms/os:bionic",
|
||||
conditionsDefault: ConditionsDefaultSelectKey, // The default condition of an os select map.
|
||||
}
|
||||
|
||||
platformOsArchMap = map[string]string{
|
||||
osArchAndroidArm: "//build/bazel/platforms/os_arch:android_arm",
|
||||
osArchAndroidArm64: "//build/bazel/platforms/os_arch:android_arm64",
|
||||
@@ -117,6 +122,7 @@ const (
|
||||
arch
|
||||
os
|
||||
osArch
|
||||
bionic
|
||||
productVariables
|
||||
)
|
||||
|
||||
@@ -126,6 +132,7 @@ func (ct configurationType) String() string {
|
||||
arch: "arch",
|
||||
os: "os",
|
||||
osArch: "arch_os",
|
||||
bionic: "bionic",
|
||||
productVariables: "product_variables",
|
||||
}[ct]
|
||||
}
|
||||
@@ -148,6 +155,10 @@ func (ct configurationType) validateConfig(config string) {
|
||||
if _, ok := platformOsArchMap[config]; !ok {
|
||||
panic(fmt.Errorf("Unknown os+arch: %s", config))
|
||||
}
|
||||
case bionic:
|
||||
if _, ok := platformBionicMap[config]; !ok {
|
||||
panic(fmt.Errorf("Unknown for %s: %s", ct.String(), config))
|
||||
}
|
||||
case productVariables:
|
||||
// do nothing
|
||||
default:
|
||||
@@ -167,6 +178,8 @@ func (ct configurationType) SelectKey(config string) string {
|
||||
return platformOsMap[config]
|
||||
case osArch:
|
||||
return platformOsArchMap[config]
|
||||
case bionic:
|
||||
return platformBionicMap[config]
|
||||
case productVariables:
|
||||
if config == conditionsDefault {
|
||||
return ConditionsDefaultSelectKey
|
||||
@@ -186,6 +199,8 @@ var (
|
||||
OsConfigurationAxis = ConfigurationAxis{configurationType: os}
|
||||
// An axis for arch+os-specific configurations
|
||||
OsArchConfigurationAxis = ConfigurationAxis{configurationType: osArch}
|
||||
// An axis for bionic os-specific configurations
|
||||
BionicConfigurationAxis = ConfigurationAxis{configurationType: bionic}
|
||||
)
|
||||
|
||||
// ProductVariableConfigurationAxis returns an axis for the given product variable
|
||||
|
Reference in New Issue
Block a user