From 9447e1ee12b6c56f96ebcb8c312a11ae68b507b6 Mon Sep 17 00:00:00 2001 From: Rupert Shuttleworth Date: Wed, 28 Jul 2021 05:53:42 -0400 Subject: [PATCH] Add support for prebuilts attribute to the bp2build APEX converter. Test: Updated unit test. Change-Id: I73dfa84d7a55c0b94393ad6257b5f16313422852 --- apex/apex.go | 6 ++++++ bp2build/apex_conversion_test.go | 20 ++++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/apex/apex.go b/apex/apex.go index 0857946ea..149f78220 100644 --- a/apex/apex.go +++ b/apex/apex.go @@ -3197,6 +3197,7 @@ type bazelApexBundleAttributes struct { Installable bazel.BoolAttribute Native_shared_libs bazel.LabelListAttribute Binaries bazel.StringListAttribute + Prebuilts bazel.LabelListAttribute } type bazelApexBundle struct { @@ -3262,6 +3263,10 @@ func apexBundleBp2BuildInternal(ctx android.TopDownMutatorContext, module *apexB nativeSharedLibsLabelList := android.BazelLabelForModuleDeps(ctx, nativeSharedLibs) nativeSharedLibsLabelListAttribute := bazel.MakeLabelListAttribute(nativeSharedLibsLabelList) + prebuilts := module.properties.Prebuilts + prebuiltsLabelList := android.BazelLabelForModuleDeps(ctx, prebuilts) + prebuiltsLabelListAttribute := bazel.MakeLabelListAttribute(prebuiltsLabelList) + binaries := module.properties.ApexNativeDependencies.Binaries binariesStringListAttribute := bazel.MakeStringListAttribute(binaries) @@ -3286,6 +3291,7 @@ func apexBundleBp2BuildInternal(ctx android.TopDownMutatorContext, module *apexB Installable: installableAttribute, Native_shared_libs: nativeSharedLibsLabelListAttribute, Binaries: binariesStringListAttribute, + Prebuilts: prebuiltsLabelListAttribute, } props := bazel.BazelTargetModuleProperties{ diff --git a/bp2build/apex_conversion_test.go b/bp2build/apex_conversion_test.go index e2e08bddd..456f18aa8 100644 --- a/bp2build/apex_conversion_test.go +++ b/bp2build/apex_conversion_test.go @@ -69,6 +69,18 @@ cc_library { bazel_module: { bp2build_available: false }, } +// TODO(b/194878861): Add bp2build support for prebuilt_etc +cc_library { + name: "pretend_prebuilt_1", + bazel_module: { bp2build_available: false }, +} + +// TODO(b/194878861): Add bp2build support for prebuilt_etc +cc_library { + name: "pretend_prebuilt_2", + bazel_module: { bp2build_available: false }, +} + filegroup { name: "com.android.apogee-file_contexts", srcs: [ @@ -95,6 +107,10 @@ apex { "binary_1", "binary_2", ], + prebuilts: [ + "pretend_prebuilt_1", + "pretend_prebuilt_2", + ], } `, expectedBazelTargets: []string{`apex( @@ -114,6 +130,10 @@ apex { ":native_shared_lib_1", ":native_shared_lib_2", ], + prebuilts = [ + ":pretend_prebuilt_1", + ":pretend_prebuilt_2", + ], updatable = False, )`}}) }