From b9a11518bc6a47a9388a24a8d1b682b65d9bf378 Mon Sep 17 00:00:00 2001 From: Jaewoong Jung Date: Tue, 15 Jan 2019 10:47:05 -0800 Subject: [PATCH] Enable arch variant properties in prebuilt_etc. Bug: 122332178 Test: Soong unit tests + TreeHugger. Change-Id: Ia8fab0add09478599398e8cbb703debc39f658f6 --- android/prebuilt_etc.go | 2 +- android/prebuilt_etc_test.go | 6 +++--- apex/apex.go | 9 +++++---- java/java_test.go | 2 +- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/android/prebuilt_etc.go b/android/prebuilt_etc.go index 40da653c5..46d128eba 100644 --- a/android/prebuilt_etc.go +++ b/android/prebuilt_etc.go @@ -170,7 +170,7 @@ func PrebuiltEtcFactory() Module { 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 27736ba58..8ab978b88 100644 --- a/android/prebuilt_etc_test.go +++ b/android/prebuilt_etc_test.go @@ -101,7 +101,7 @@ func TestPrebuiltEtcOutputPath(t *testing.T) { } `) - 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 @@ func TestPrebuiltEtcGlob(t *testing.T) { } `) - 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 62698681b..f6cfc26d3 100644 --- a/apex/apex.go +++ b/apex/apex.go @@ -409,6 +409,11 @@ func (a *apexBundle) DepsMutator(ctx android.BottomUpMutatorContext) { 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 @@ func (a *apexBundle) DepsMutator(ctx android.BottomUpMutatorContext) { {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 7a37b7b93..6437c0c7a 100644 --- a/java/java_test.go +++ b/java/java_test.go @@ -861,7 +861,7 @@ func TestJavaSdkLibrary(t *testing.T) { 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", "")