summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2021-08-13 05:36:10 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-08-13 05:36:10 +0000
commit710285bc0fbd2513dc1388d940ba30958c9973de (patch)
treecbb3546d5c6eb60c2856d199f348b73c8b223fc0
parent246a82211556d1c4944ea1fda52afd71e29d6d99 (diff)
parenta9efb9b713b246f8a64880dd6342fcf1c29754d4 (diff)
downloadMusic-710285bc0fbd2513dc1388d940ba30958c9973de.tar.gz
Merge "Declare resources in a library under kotlin/ for Music app Bazel build." am: ca7f4e1cb7 am: 7695928d87 am: 17ea98281b am: 3a9c8f161d am: a9efb9b713
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Music/+/1794547 Change-Id: Iaa0d9696cad8be300bdebb5eb0acefbb16663a4f
-rw-r--r--BUILD2
-rw-r--r--kotlin/BUILD31
2 files changed, 32 insertions, 1 deletions
diff --git a/BUILD b/BUILD
index 897af5c..bb1e5f0 100644
--- a/BUILD
+++ b/BUILD
@@ -5,5 +5,5 @@ android_binary(
srcs = glob(["src/**/*.java"]),
custom_package = "com.android.music",
manifest = "AndroidManifest.xml",
- resource_files = glob(["kotlin/res/**"]),
+ deps = ["//packages/apps/Music/kotlin:MusicResources"],
)
diff --git a/kotlin/BUILD b/kotlin/BUILD
new file mode 100644
index 0000000..ab0691c
--- /dev/null
+++ b/kotlin/BUILD
@@ -0,0 +1,31 @@
+load("@rules_android//rules:rules.bzl", "android_binary", "android_library")
+
+# Placeholder manifest is required to build the android library below.
+genrule(
+ name = "gen_placeholdermanifest",
+ outs = ["AndroidManifest.xml"],
+ cmd = """
+echo '<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="com.android.Music"
+ android:versionCode="1"
+ android:versionName="1.0" >
+
+ <uses-sdk
+ android:minSdkVersion="21"
+ android:targetSdkVersion="21" />
+</manifest>
+
+' > $@""",
+)
+
+# Workaround a bug where including resources at the top-level android_binary fails,
+# it seems due to the resource folder being nested. Instead, we create this
+# library to hold the resources and make the android_binary target depend on it.
+android_library(
+ name = "MusicResources",
+ srcs = [],
+ custom_package = "com.android.music",
+ manifest = "AndroidManifest.xml",
+ resource_files = glob(["res/**"]),
+ visibility = ["//visibility:public"],
+)