aboutsummaryrefslogtreecommitdiffstats
path: root/java/androidmk.go
diff options
context:
space:
mode:
authorAnton Hansson <hansson@google.com>2019-03-18 15:53:16 +0000
committerAnton Hansson <hansson@google.com>2019-03-21 11:25:46 +0000
commit53c88448fd2497023cd6403a7aa72a3f763f3e3a (patch)
tree1300b4096f4c20ba8ac4f67a9dd60554882ff739 /java/androidmk.go
parent21c81326ff4ee6420e73077ce0f05e3cf5565e29 (diff)
downloadandroid_build_soong-53c88448fd2497023cd6403a7aa72a3f763f3e3a.tar.gz
android_build_soong-53c88448fd2497023cd6403a7aa72a3f763f3e3a.tar.bz2
android_build_soong-53c88448fd2497023cd6403a7aa72a3f763f3e3a.zip
Separate device and product overlays
This change adds book-keeping of whether an overlay came from DEVICE_PACKAGE_OVERLAYS or PRODUCT_PACKAGE_OVERLAYS. This is later used when writing the output to soong_app_prebuilt.mk, to use either LOCAL_SOONG_[DEVICE|PRODUCT]_RRO_PACKAGES depending on the original source. This change is intended to be a noop on its own, but allows a follow-up make change to customize the location of the auto-generated RRO packages. Bug: 127758779 Test: verify noop on presubmit targets Change-Id: Ib24fe1d05be132c360dd6966f7c83968c9939f77
Diffstat (limited to 'java/androidmk.go')
-rw-r--r--java/androidmk.go18
1 files changed, 16 insertions, 2 deletions
diff --git a/java/androidmk.go b/java/androidmk.go
index 0c3b1c76..5b4f738a 100644
--- a/java/androidmk.go
+++ b/java/androidmk.go
@@ -257,10 +257,24 @@ func (app *AndroidApp) AndroidMk() android.AndroidMkData {
fmt.Fprintln(w, "LOCAL_NO_STANDARD_LIBRARIES := true")
}
- if len(app.rroDirs) > 0 {
+ filterRRO := func(filter overlayType) android.Paths {
+ var paths android.Paths
+ for _, d := range app.rroDirs {
+ if d.overlayType == filter {
+ paths = append(paths, d.path)
+ }
+ }
// Reverse the order, Soong stores rroDirs in aapt2 order (low to high priority), but Make
// expects it in LOCAL_RESOURCE_DIRS order (high to low priority).
- fmt.Fprintln(w, "LOCAL_SOONG_RRO_DIRS :=", strings.Join(android.ReversePaths(app.rroDirs).Strings(), " "))
+ return android.ReversePaths(paths)
+ }
+ deviceRRODirs := filterRRO(device)
+ if len(deviceRRODirs) > 0 {
+ fmt.Fprintln(w, "LOCAL_SOONG_DEVICE_RRO_DIRS :=", strings.Join(deviceRRODirs.Strings(), " "))
+ }
+ productRRODirs := filterRRO(product)
+ if len(productRRODirs) > 0 {
+ fmt.Fprintln(w, "LOCAL_SOONG_PRODUCT_RRO_DIRS :=", strings.Join(productRRODirs.Strings(), " "))
}
if Bool(app.appProperties.Export_package_resources) {