Merge "convert android_app certificate property, bp2build" am: d508a638c3 am: 9e3f98b8cf am: 19b7975f03

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1980606

Change-Id: Iaa8fb9a85d42e2c299fadd34f81fe0b55bcd1a9a
This commit is contained in:
Sam Delmerico
2022-03-04 18:39:36 +00:00
committed by Automerger Merge Worker
2 changed files with 26 additions and 6 deletions

View File

@@ -1449,7 +1449,7 @@ func androidAppCertificateBp2Build(ctx android.TopDownMutatorContext, module *An
props := bazel.BazelTargetModuleProperties{
Rule_class: "android_app_certificate",
Bzl_load_location: "//build/bazel/rules:android_app_certificate.bzl",
Bzl_load_location: "//build/bazel/rules/android:android_app_certificate.bzl",
}
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: module.Name()}, attrs)
@@ -1457,9 +1457,11 @@ func androidAppCertificateBp2Build(ctx android.TopDownMutatorContext, module *An
type bazelAndroidAppAttributes struct {
*javaLibraryAttributes
Manifest bazel.Label
Custom_package *string
Resource_files bazel.LabelListAttribute
Manifest bazel.Label
Custom_package *string
Resource_files bazel.LabelListAttribute
Certificate *bazel.Label
Certificate_name *string
}
// ConvertWithBp2build is used to convert android_app to Bazel.
@@ -1476,15 +1478,30 @@ func (a *AndroidApp) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
resourceFiles.Includes = append(resourceFiles.Includes, files...)
}
var certificate *bazel.Label
certificateNamePtr := a.overridableAppProperties.Certificate
certificateName := proptools.StringDefault(certificateNamePtr, "")
certModule := android.SrcIsModule(certificateName)
if certModule != "" {
c := android.BazelLabelForModuleDepSingle(ctx, certificateName)
certificate = &c
certificateNamePtr = nil
}
attrs := &bazelAndroidAppAttributes{
libAttrs,
android.BazelLabelForModuleSrcSingle(ctx, manifest),
// TODO(b/209576404): handle package name override by product variable PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES
a.overridableAppProperties.Package_name,
bazel.MakeLabelListAttribute(resourceFiles),
certificate,
certificateNamePtr,
}
props := bazel.BazelTargetModuleProperties{
Rule_class: "android_binary",
Bzl_load_location: "//build/bazel/rules/android:android_binary.bzl",
}
props := bazel.BazelTargetModuleProperties{Rule_class: "android_binary",
Bzl_load_location: "@rules_android//rules:rules.bzl"}
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: a.Name()}, attrs)