Merge "Add Android.mk lines for package name overriding." am: ea66057a50

am: 9b3e4cc3af

Change-Id: I7e78ebef525e27a1d1e92edbb75ce7152cac026e
This commit is contained in:
Jaewoong Jung 2019-02-08 13:22:41 -08:00 committed by android-build-merger
commit afe716dcdb
1 changed files with 18 additions and 2 deletions

View File

@ -203,6 +203,11 @@ func (app *AndroidApp) AndroidMk() android.AndroidMkData {
Include: "$(BUILD_SYSTEM)/soong_app_prebuilt.mk",
Extra: []android.AndroidMkExtraFunc{
func(w io.Writer, outputFile android.Path) {
// TODO(jungjw): This, outputting two LOCAL_MODULE lines, works, but is not ideal. Find a better solution.
if app.Name() != app.installApkName {
fmt.Fprintln(w, "# Overridden by PRODUCT_PACKAGE_NAME_OVERRIDES")
fmt.Fprintln(w, "LOCAL_MODULE :=", app.installApkName)
}
fmt.Fprintln(w, "LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE :=", app.exportPackage.String())
if app.dexJarFile != nil {
fmt.Fprintln(w, "LOCAL_SOONG_DEX_JAR :=", app.dexJarFile.String())
@ -247,8 +252,8 @@ func (app *AndroidApp) AndroidMk() android.AndroidMkData {
}
fmt.Fprintln(w, "LOCAL_CERTIFICATE :=", app.certificate.Pem.String())
if len(app.appProperties.Overrides) > 0 {
fmt.Fprintln(w, "LOCAL_OVERRIDES_PACKAGES := "+strings.Join(app.appProperties.Overrides, " "))
if overriddenPkgs := app.getOverriddenPackages(); len(overriddenPkgs) > 0 {
fmt.Fprintln(w, "LOCAL_OVERRIDES_PACKAGES :=", strings.Join(overriddenPkgs, " "))
}
for _, jniLib := range app.installJniLibs {
@ -262,6 +267,17 @@ func (app *AndroidApp) AndroidMk() android.AndroidMkData {
}
}
func (a *AndroidApp) getOverriddenPackages() []string {
var overridden []string
if len(a.appProperties.Overrides) > 0 {
overridden = append(overridden, a.appProperties.Overrides...)
}
if a.Name() != a.installApkName {
overridden = append(overridden, a.Name())
}
return overridden
}
func (a *AndroidTest) AndroidMk() android.AndroidMkData {
data := a.AndroidApp.AndroidMk()
data.Extra = append(data.Extra, func(w io.Writer, outputFile android.Path) {