blob: 5b2eeecd41fc2e5f7c6bb6f50b38b667daa0ff37 [file] [log] [blame]
load("//build/bazel/rules/apex:apex_aab.bzl", "apex_aab")
package(default_visibility = ["//build/bazel/tests/apex:__subpackages__"])
# This package contains the multi-architecture aab and apks packages of
# Bazel-buildable Mainline modules. These are exclusively used for development
# and testing purposes and not for distribution.
#
# We have added testonly and visibility guardrails to ensure that these do not
# get used unintentionally.
modules = [
"//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal",
"//frameworks/av/apex:com.android.media.swcodec",
"//packages/modules/NeuralNetworks/apex:com.android.neuralnetworks",
"//packages/modules/adb/apex:com.android.adbd",
"//system/timezone/apex:com.android.tzdata",
]
name_label_map = {module[module.index(":") + 1:]: module for module in modules}
[
(
apex_aab(
name = "%s_apex_aab" % name,
testonly = True,
mainline_module = label,
),
genrule(
name = "%s_apks" % name,
testonly = True,
srcs = ["%s_apex_aab" % name],
outs = ["%s.apks" % name],
cmd = "$(location //prebuilts/bundletool) build-apks --bundle $(location %s_apex_aab) --output $@" % name,
tools = ["//prebuilts/bundletool"],
),
)
for name, label in name_label_map.items()
]
filegroup(
name = "mainline_modules",
testonly = True,
srcs = ["%s_apex_aab" % name for name, label in name_label_map.items()],
)