diff options
author | Vinh Tran <vinhdaitran@google.com> | 2023-04-10 15:39:47 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-04-10 15:39:47 +0000 |
commit | 39df31515fe986658afa17a3d5e5e12c2af8d616 (patch) | |
tree | 879ec23e626b52ffbfeee1c05232beb89b5e338d | |
parent | e98b5273abdc815efef163f8626ed9e5bd7c87e5 (diff) | |
parent | f79602f2717503cbdf2df4fa99609aeb826922aa (diff) | |
download | aidl-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.go | 79 | ||||
-rw-r--r-- | build/aidl_interface_bp2build_test.go | 94 |
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, }`, |