Merge "Fix prebuilts of overridden apps"
This commit is contained in:
@@ -324,7 +324,7 @@ func (binary *Binary) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
}
|
||||
|
||||
func (app *AndroidApp) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
if app.hideApexVariantFromMake || app.appProperties.HideFromMake {
|
||||
if app.hideApexVariantFromMake || app.IsHideFromMake() {
|
||||
return []android.AndroidMkEntries{android.AndroidMkEntries{
|
||||
Disabled: true,
|
||||
}}
|
||||
|
@@ -99,7 +99,6 @@ type appProperties struct {
|
||||
|
||||
// cc.Coverage related properties
|
||||
PreventInstall bool `blueprint:"mutated"`
|
||||
HideFromMake bool `blueprint:"mutated"`
|
||||
IsCoverageVariant bool `blueprint:"mutated"`
|
||||
|
||||
// Whether this app is considered mainline updatable or not. When set to true, this will enforce
|
||||
@@ -880,10 +879,6 @@ func (a *AndroidApp) SetPreventInstall() {
|
||||
a.appProperties.PreventInstall = true
|
||||
}
|
||||
|
||||
func (a *AndroidApp) HideFromMake() {
|
||||
a.appProperties.HideFromMake = true
|
||||
}
|
||||
|
||||
func (a *AndroidApp) MarkAsCoverageVariant(coverage bool) {
|
||||
a.appProperties.IsCoverageVariant = coverage
|
||||
}
|
||||
|
@@ -2042,6 +2042,41 @@ func TestOverrideAndroidAppOverrides(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestOverrideAndroidAppWithPrebuilt(t *testing.T) {
|
||||
result := PrepareForTestWithJavaDefaultModules.RunTestWithBp(
|
||||
t, `
|
||||
android_app {
|
||||
name: "foo",
|
||||
srcs: ["a.java"],
|
||||
sdk_version: "current",
|
||||
}
|
||||
|
||||
override_android_app {
|
||||
name: "bar",
|
||||
base: "foo",
|
||||
}
|
||||
|
||||
android_app_import {
|
||||
name: "bar",
|
||||
prefer: true,
|
||||
apk: "bar.apk",
|
||||
presigned: true,
|
||||
}
|
||||
`)
|
||||
|
||||
// An app that has an override that also has a prebuilt should not be hidden.
|
||||
foo := result.ModuleForTests("foo", "android_common")
|
||||
if foo.Module().IsHideFromMake() {
|
||||
t.Errorf("expected foo to have HideFromMake false")
|
||||
}
|
||||
|
||||
// An override that also has a prebuilt should be hidden.
|
||||
barOverride := result.ModuleForTests("foo", "android_common_bar")
|
||||
if !barOverride.Module().IsHideFromMake() {
|
||||
t.Errorf("expected bar override variant of foo to have HideFromMake true")
|
||||
}
|
||||
}
|
||||
|
||||
func TestOverrideAndroidAppStem(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
android_app {
|
||||
|
Reference in New Issue
Block a user