1*7594170eSAndroid Build Coastguard Workerload("//build/bazel/rules/apex:apex_aab.bzl", "apex_aab") 2*7594170eSAndroid Build Coastguard Worker 3*7594170eSAndroid Build Coastguard Workerpackage(default_visibility = ["//build/bazel/tests/apex:__subpackages__"]) 4*7594170eSAndroid Build Coastguard Worker 5*7594170eSAndroid Build Coastguard Worker# This package contains the multi-architecture aab and apks packages of 6*7594170eSAndroid Build Coastguard Worker# Bazel-buildable Mainline modules. These are exclusively used for development 7*7594170eSAndroid Build Coastguard Worker# and testing purposes and not for distribution. 8*7594170eSAndroid Build Coastguard Worker# 9*7594170eSAndroid Build Coastguard Worker# We have added testonly and visibility guardrails to ensure that these do not 10*7594170eSAndroid Build Coastguard Worker# get used unintentionally. 11*7594170eSAndroid Build Coastguard Worker 12*7594170eSAndroid Build Coastguard Workermodules = [ 13*7594170eSAndroid Build Coastguard Worker "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal", 14*7594170eSAndroid Build Coastguard Worker "//frameworks/av/apex:com.android.media.swcodec", 15*7594170eSAndroid Build Coastguard Worker "//packages/modules/NeuralNetworks/apex:com.android.neuralnetworks", 16*7594170eSAndroid Build Coastguard Worker "//packages/modules/adb/apex:com.android.adbd", 17*7594170eSAndroid Build Coastguard Worker "//system/timezone/apex:com.android.tzdata", 18*7594170eSAndroid Build Coastguard Worker] 19*7594170eSAndroid Build Coastguard Worker 20*7594170eSAndroid Build Coastguard Workername_label_map = {module[module.index(":") + 1:]: module for module in modules} 21*7594170eSAndroid Build Coastguard Worker 22*7594170eSAndroid Build Coastguard Worker[ 23*7594170eSAndroid Build Coastguard Worker ( 24*7594170eSAndroid Build Coastguard Worker apex_aab( 25*7594170eSAndroid Build Coastguard Worker name = "%s_apex_aab" % name, 26*7594170eSAndroid Build Coastguard Worker testonly = True, 27*7594170eSAndroid Build Coastguard Worker mainline_module = label, 28*7594170eSAndroid Build Coastguard Worker ), 29*7594170eSAndroid Build Coastguard Worker genrule( 30*7594170eSAndroid Build Coastguard Worker name = "%s_apks" % name, 31*7594170eSAndroid Build Coastguard Worker testonly = True, 32*7594170eSAndroid Build Coastguard Worker srcs = ["%s_apex_aab" % name], 33*7594170eSAndroid Build Coastguard Worker outs = ["%s.apks" % name], 34*7594170eSAndroid Build Coastguard Worker cmd = "$(location //prebuilts/bundletool) build-apks --bundle $(location %s_apex_aab) --output $@" % name, 35*7594170eSAndroid Build Coastguard Worker tools = ["//prebuilts/bundletool"], 36*7594170eSAndroid Build Coastguard Worker ), 37*7594170eSAndroid Build Coastguard Worker ) 38*7594170eSAndroid Build Coastguard Worker for name, label in name_label_map.items() 39*7594170eSAndroid Build Coastguard Worker] 40*7594170eSAndroid Build Coastguard Worker 41*7594170eSAndroid Build Coastguard Workerfilegroup( 42*7594170eSAndroid Build Coastguard Worker name = "mainline_modules", 43*7594170eSAndroid Build Coastguard Worker testonly = True, 44*7594170eSAndroid Build Coastguard Worker srcs = ["%s_apex_aab" % name for name, label in name_label_map.items()], 45*7594170eSAndroid Build Coastguard Worker) 46