diff options
| author | Jaewoong Jung <jungjw@google.com> | 2019-09-27 17:13:15 -0700 |
|---|---|---|
| committer | Rashed Abdel-Tawab <rashed@linux.com> | 2019-10-06 07:14:51 -0700 |
| commit | 2f46533cf13c11c9e640a52c04adffd0df5d868a (patch) | |
| tree | c1052feae4128d3871df1b6d5431a004a3303fe1 | |
| parent | ab4d3e54a8f9386a984aa3193e563e4b4fd6f562 (diff) | |
| download | build_soong-2f46533cf13c11c9e640a52c04adffd0df5d868a.tar.gz build_soong-2f46533cf13c11c9e640a52c04adffd0df5d868a.tar.bz2 build_soong-2f46533cf13c11c9e640a52c04adffd0df5d868a.zip | |
Fix split apk paths.
Soong has been outputting incorrect Android.mk entries for split apks.
soong_app_prebuilt.mk expects LOCAL_SOONG_BUILT_INSTALLED to contain a
list of <split apk path>:<on device install path> pairs whereas Soong
outputs <split apk path>:$(LOCAL_MODULE_PATH)/<split apk filename> pairs.
This also adds a missing underscore in split apk filenames.
Test: m Split
Bug: 140795853
Change-Id: I3d6506f5e12106174fbbaef34749a272b5e1b90c
| -rw-r--r-- | java/androidmk.go | 3 | ||||
| -rw-r--r-- | java/app.go | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/java/androidmk.go b/java/androidmk.go index c7f08709..9c7f7216 100644 --- a/java/androidmk.go +++ b/java/androidmk.go @@ -320,7 +320,8 @@ func (app *AndroidApp) AndroidMk() android.AndroidMkData { fmt.Fprintln(w, "LOCAL_SOONG_BUILT_INSTALLED :=", app.dexpreopter.builtInstalled) } for _, split := range app.aapt.splits { - install := "$(LOCAL_MODULE_PATH)/" + strings.TrimSuffix(app.installApkName, ".apk") + split.suffix + ".apk" + install := app.onDeviceDir + "/" + + strings.TrimSuffix(app.installApkName, ".apk") + "_" + split.suffix + ".apk" fmt.Fprintln(w, "LOCAL_SOONG_BUILT_INSTALLED +=", split.path.String()+":"+install) } }, diff --git a/java/app.go b/java/app.go index f7cf8a5d..7e38f877 100644 --- a/java/app.go +++ b/java/app.go @@ -121,6 +121,8 @@ type AndroidApp struct { installDir android.OutputPath + onDeviceDir string + additionalAaptFlags []string } @@ -410,6 +412,7 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) { } else { a.installDir = android.PathForModuleInstall(ctx, "app", a.installApkName) } + a.onDeviceDir = android.InstallPathToOnDevicePath(ctx, a.installDir) a.aapt.noticeFile = a.noticeBuildActions(ctx) |
