aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVinh Tran <vinhdaitran@google.com>2023-04-10 15:39:47 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-04-10 15:39:47 +0000
commit39df31515fe986658afa17a3d5e5e12c2af8d616 (patch)
tree879ec23e626b52ffbfeee1c05232beb89b5e338d
parente98b5273abdc815efef163f8626ed9e5bd7c87e5 (diff)
parentf79602f2717503cbdf2df4fa99609aeb826922aa (diff)
downloadaidl-39df31515fe986658afa17a3d5e5e12c2af8d616.tar.gz
Drop bp2build-generated versions attr on aidl_interface am: f79602f271
Original change: https://android-review.googlesource.com/c/platform/system/tools/aidl/+/2455028 Change-Id: I0743846d13f1fa37e3cb064f3d822bf3af85d2b9 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--build/aidl_interface.go79
-rw-r--r--build/aidl_interface_bp2build_test.go94
2 files changed, 118 insertions, 55 deletions
diff --git a/build/aidl_interface.go b/build/aidl_interface.go
index 85cf6130..1f0fef8a 100644
--- a/build/aidl_interface.go
+++ b/build/aidl_interface.go
@@ -1121,7 +1121,6 @@ func AidlInterfaceFactory() android.Module {
type aidlInterfaceAttributes struct {
aidlLibraryAttributes
- Versions bazel.StringListAttribute
Stability *string
Versions_with_info []versionWithInfoAttribute
Java_config *javaConfigAttributes
@@ -1206,20 +1205,6 @@ func getBazelLabelListForImports(ctx android.BazelConversionPathContext, imports
}
func (i *aidlInterface) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
- imports := getBazelLabelListForImports(ctx, i.properties.Imports)
- headers := android.BazelLabelForModuleDeps(ctx, i.properties.Headers)
- imports.Append(headers)
-
- var deps bazel.LabelListAttribute
- if !imports.IsEmpty() {
- deps = bazel.MakeLabelListAttribute(imports)
- }
-
- var versions bazel.StringListAttribute
- if len(i.properties.Versions) > 0 {
- versions = bazel.MakeStringListAttribute(append([]string{}, i.properties.Versions...))
- }
-
var javaConfig *javaConfigAttributes
var cppConfig *cppConfigAttributes
var ndkConfig *ndkConfigAttributes
@@ -1242,25 +1227,68 @@ func (i *aidlInterface) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
ndkConfig.Tags = android.ConvertApexAvailableToTags(i.properties.Backend.Ndk.Apex_available)
}
+ imports := getBazelLabelListForImports(ctx, i.properties.Imports)
+
var versionsWithInfos []versionWithInfoAttribute
+
if len(i.properties.Versions_with_info) > 0 {
for _, versionWithInfo := range i.properties.Versions_with_info {
- imports := getBazelLabelListForImports(ctx, versionWithInfo.Imports)
- var attributes versionWithInfoAttribute
+ versionedImports := getBazelLabelListForImports(ctx, versionWithInfo.Imports)
+ if !versionedImports.IsEmpty() {
+ versionsWithInfos = append(
+ versionsWithInfos,
+ versionWithInfoAttribute{
+ Version: versionWithInfo.Version,
+ Deps: bazel.MakeLabelListAttribute(versionedImports),
+ },
+ )
+ } else {
+ versionsWithInfos = append(
+ versionsWithInfos,
+ versionWithInfoAttribute{
+ Version: versionWithInfo.Version,
+ },
+ )
+ }
+ }
+ } else if len(i.properties.Versions) > 0 {
+ for _, version := range i.properties.Versions {
if !imports.IsEmpty() {
- attributes = versionWithInfoAttribute{
- Version: versionWithInfo.Version,
- Deps: bazel.MakeLabelListAttribute(imports),
- }
+ versionsWithInfos = append(
+ versionsWithInfos,
+ versionWithInfoAttribute{
+ Version: version,
+ Deps: bazel.MakeLabelListAttribute(imports),
+ },
+ )
} else {
- attributes = versionWithInfoAttribute{
- Version: versionWithInfo.Version,
- }
+ versionsWithInfos = append(
+ versionsWithInfos,
+ versionWithInfoAttribute{
+ Version: version,
+ },
+ )
}
- versionsWithInfos = append(versionsWithInfos, attributes)
}
}
+ var deps bazel.LabelListAttribute
+
+ if len(i.properties.Srcs) > 0 && !imports.IsEmpty() {
+ // imports is only needed for (non-frozen) srcs
+ // frozen verions use imports in versions_with_info
+ deps = bazel.MakeLabelListAttribute(imports)
+ }
+
+ deps.Append(
+ bazel.MakeLabelListAttribute(
+ android.BazelLabelForModuleDeps(
+ ctx,
+ i.properties.Headers,
+ ),
+ ),
+ )
+
srcsAttr := bazel.MakeLabelListAttribute(android.BazelLabelForModuleSrc(ctx, i.properties.Srcs))
var stripImportPrefixAttr *string = nil
if i.properties.Local_include_dir != "" && !srcsAttr.IsEmpty() {
@@ -1274,7 +1302,6 @@ func (i *aidlInterface) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
Deps: deps,
Strip_import_prefix: stripImportPrefixAttr,
},
- Versions: versions,
Stability: i.properties.Stability,
Versions_with_info: versionsWithInfos,
Java_config: javaConfig,
diff --git a/build/aidl_interface_bp2build_test.go b/build/aidl_interface_bp2build_test.go
index 55746963..b60c5dcb 100644
--- a/build/aidl_interface_bp2build_test.go
+++ b/build/aidl_interface_bp2build_test.go
@@ -79,9 +79,13 @@ func TestAidlInterface(t *testing.T) {
"ndk_config": `{
"enabled": True,
}`,
- "versions": `[
- "1",
- "2",
+ "versions_with_info": `[
+ {
+ "version": "1",
+ },
+ {
+ "version": "2",
+ },
]`,
}),
bp2build.MakeBazelTargetNoRestrictions("aidl_interface", "aidl-interface1", bp2build.AttrNameToString{
@@ -94,15 +98,21 @@ func TestAidlInterface(t *testing.T) {
"ndk_config": `{
"enabled": True,
}`,
- "deps": `[
- ":aidl-interface-import-V1",
- ":aidl-interface-headers",
- ]`,
+ "deps": `[":aidl-interface-headers"]`,
"flags": `["--flag1"]`,
- "versions": `[
- "1",
- "2",
- "3",
+ "versions_with_info": `[
+ {
+ "deps": [":aidl-interface-import-V1"],
+ "version": "1",
+ },
+ {
+ "deps": [":aidl-interface-import-V1"],
+ "version": "2",
+ },
+ {
+ "deps": [":aidl-interface-import-V1"],
+ "version": "3",
+ },
]`,
}),
},
@@ -190,9 +200,13 @@ func TestAidlInterfaceWithLatestImport(t *testing.T) {
"ndk_config": `{
"enabled": True,
}`,
- "versions": `[
- "1",
- "2",
+ "versions_with_info": `[
+ {
+ "version": "1",
+ },
+ {
+ "version": "2",
+ },
]`,
}),
bp2build.MakeBazelTargetNoRestrictions("aidl_interface", "aidl-interface1", bp2build.AttrNameToString{
@@ -205,11 +219,19 @@ func TestAidlInterfaceWithLatestImport(t *testing.T) {
"ndk_config": `{
"enabled": True,
}`,
- "deps": `[":aidl-interface-import-latest"]`,
- "versions": `[
- "1",
- "2",
- "3",
+ "versions_with_info": `[
+ {
+ "deps": [":aidl-interface-import-latest"],
+ "version": "1",
+ },
+ {
+ "deps": [":aidl-interface-import-latest"],
+ "version": "2",
+ },
+ {
+ "deps": [":aidl-interface-import-latest"],
+ "version": "3",
+ },
]`,
}),
},
@@ -249,9 +271,13 @@ func TestAidlInterfaceWithVersionedImport(t *testing.T) {
"ndk_config": `{
"enabled": True,
}`,
- "versions": `[
- "1",
- "2",
+ "versions_with_info": `[
+ {
+ "version": "1",
+ },
+ {
+ "version": "2",
+ },
]`,
}),
bp2build.MakeBazelTargetNoRestrictions("aidl_interface", "aidl-interface1", bp2build.AttrNameToString{
@@ -264,11 +290,19 @@ func TestAidlInterfaceWithVersionedImport(t *testing.T) {
"ndk_config": `{
"enabled": True,
}`,
- "deps": `[":aidl-interface-import-V2"]`,
- "versions": `[
- "1",
- "2",
- "3",
+ "versions_with_info": `[
+ {
+ "deps": [":aidl-interface-import-V2"],
+ "version": "1",
+ },
+ {
+ "deps": [":aidl-interface-import-V2"],
+ "version": "2",
+ },
+ {
+ "deps": [":aidl-interface-import-V2"],
+ "version": "3",
+ },
]`,
}),
},
@@ -354,8 +388,10 @@ func TestAidlInterfaceWithFrozenPropSet(t *testing.T) {
}`,
ExpectedBazelTargets: []string{
bp2build.MakeBazelTargetNoRestrictions("aidl_interface", "foo", bp2build.AttrNameToString{
- "frozen": "True",
- "versions": `["1"]`,
+ "frozen": "True",
+ "versions_with_info": `[{
+ "version": "1",
+ }]`,
"ndk_config": `{
"enabled": True,
}`,