Enable arch variant properties in prebuilt_etc.
Bug: 122332178
Test: Soong unit tests + TreeHugger.
Change-Id: Ia8fab0add09478599398e8cbb703debc39f658f6
diff --git a/android/prebuilt_etc.go b/android/prebuilt_etc.go
index 40da653..46d128e 100644
--- a/android/prebuilt_etc.go
+++ b/android/prebuilt_etc.go
@@ -170,7 +170,7 @@
module := &PrebuiltEtc{}
InitPrebuiltEtcModule(module)
// This module is device-only
- InitAndroidArchModule(module, DeviceSupported, MultilibCommon)
+ InitAndroidArchModule(module, DeviceSupported, MultilibFirst)
return module
}
diff --git a/android/prebuilt_etc_test.go b/android/prebuilt_etc_test.go
index 27736ba..8ab978b 100644
--- a/android/prebuilt_etc_test.go
+++ b/android/prebuilt_etc_test.go
@@ -101,7 +101,7 @@
}
`)
- p := ctx.ModuleForTests("foo.conf", "android_common_core").Module().(*PrebuiltEtc)
+ p := ctx.ModuleForTests("foo.conf", "android_arm64_armv8-a_core").Module().(*PrebuiltEtc)
if p.outputFilePath.Base() != "foo.installed.conf" {
t.Errorf("expected foo.installed.conf, got %q", p.outputFilePath.Base())
}
@@ -120,12 +120,12 @@
}
`)
- p := ctx.ModuleForTests("my_foo", "android_common_core").Module().(*PrebuiltEtc)
+ p := ctx.ModuleForTests("my_foo", "android_arm64_armv8-a_core").Module().(*PrebuiltEtc)
if p.outputFilePath.Base() != "my_foo" {
t.Errorf("expected my_foo, got %q", p.outputFilePath.Base())
}
- p = ctx.ModuleForTests("my_bar", "android_common_core").Module().(*PrebuiltEtc)
+ p = ctx.ModuleForTests("my_bar", "android_arm64_armv8-a_core").Module().(*PrebuiltEtc)
if p.outputFilePath.Base() != "bar.conf" {
t.Errorf("expected bar.conf, got %q", p.outputFilePath.Base())
}
diff --git a/apex/apex.go b/apex/apex.go
index 6269868..f6cfc26 100644
--- a/apex/apex.go
+++ b/apex/apex.go
@@ -409,6 +409,11 @@
a.properties.Multilib.First.Native_shared_libs,
a.properties.Multilib.First.Binaries, target.String(),
a.getImageVariation(config))
+
+ // When multilib.* is omitted for prebuilts, it implies multilib.first.
+ ctx.AddFarVariationDependencies([]blueprint.Variation{
+ {Mutator: "arch", Variation: target.String()},
+ }, prebuiltTag, a.properties.Prebuilts...)
}
switch target.Arch.ArchType.Multilib {
@@ -444,10 +449,6 @@
{Mutator: "arch", Variation: "android_common"},
}, javaLibTag, a.properties.Java_libs...)
- ctx.AddFarVariationDependencies([]blueprint.Variation{
- {Mutator: "arch", Variation: "android_common"},
- }, prebuiltTag, a.properties.Prebuilts...)
-
if !ctx.Config().FlattenApex() || ctx.Config().UnbundledBuild() {
if String(a.properties.Key) == "" {
ctx.ModuleErrorf("key is missing")
diff --git a/java/java_test.go b/java/java_test.go
index 7a37b7b..6437c0c 100644
--- a/java/java_test.go
+++ b/java/java_test.go
@@ -861,7 +861,7 @@
ctx.ModuleForTests("foo"+sdkDocsSuffix, "android_common")
ctx.ModuleForTests("foo"+sdkDocsSuffix+sdkSystemApiSuffix, "android_common")
ctx.ModuleForTests("foo"+sdkDocsSuffix+sdkTestApiSuffix, "android_common")
- ctx.ModuleForTests("foo"+sdkXmlFileSuffix, "android_common")
+ ctx.ModuleForTests("foo"+sdkXmlFileSuffix, "android_arm64_armv8-a")
ctx.ModuleForTests("foo.api.public.28", "")
ctx.ModuleForTests("foo.api.system.28", "")
ctx.ModuleForTests("foo.api.test.28", "")