summaryrefslogtreecommitdiff
path: root/java/java.go
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2023-10-18 17:17:59 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2023-10-18 17:17:59 +0000
commita815d9bf79f6d8073f7ef90dcf208e22b3cd792f (patch)
tree1d1eea0e093ad1a0aa1200ccb79e4512db140d63 /java/java.go
parent6b4fb160ea21c6d4d40879c2264ab059ff984efe (diff)
parent5dfe4be626aa3e453862c31a6742c060c4e39217 (diff)
Merge changes from topic "import-sdk-version-none" into main
* changes: Do not convert sdk_version: "none" Don't use java_library for java_import neverlink
Diffstat (limited to 'java/java.go')
-rw-r--r--java/java.go47
1 files changed, 32 insertions, 15 deletions
diff --git a/java/java.go b/java/java.go
index 990a084f7..1b9941c4e 100644
--- a/java/java.go
+++ b/java/java.go
@@ -2970,6 +2970,10 @@ func (m *Library) convertLibraryAttrsBp2Build(ctx android.Bp2buildMutatorContext
// TODO(b/297356582): handle core_platform in bp2build
ctx.MarkBp2buildUnconvertible(bp2build_metrics_proto.UnconvertedReasonType_PROPERTY_UNSUPPORTED, "sdk_version core_platform")
return &javaCommonAttributes{}, &bp2BuildJavaInfo{}, false
+ } else if proptools.String(m.deviceProperties.Sdk_version) == "none" {
+ // TODO(b/297356703): handle system_modules
+ ctx.MarkBp2buildUnconvertible(bp2build_metrics_proto.UnconvertedReasonType_PROPERTY_UNSUPPORTED, "sdk_version none")
+ return &javaCommonAttributes{}, &bp2BuildJavaInfo{}, false
}
archVariantProps := m.GetArchVariantProperties(ctx, &CommonProperties{})
@@ -3403,9 +3407,14 @@ func createLibraryTarget(ctx android.Bp2buildMutatorContext, libInfo libraryCrea
return libName
}
-type bazelJavaImportAttributes struct {
- Jars bazel.LabelListAttribute
- Exports bazel.LabelListAttribute
+type importAttributes struct {
+ Jars bazel.LabelListAttribute
+ Exports bazel.LabelListAttribute
+ Neverlink *bool
+}
+
+type filegroupAttrs struct {
+ Srcs bazel.LabelListAttribute
}
// java_import bp2Build converter.
@@ -3421,28 +3430,36 @@ func (i *Import) ConvertWithBp2build(ctx android.Bp2buildMutatorContext) {
}
}
- attrs := &bazelJavaImportAttributes{
- Jars: jars,
+ name := android.RemoveOptionalPrebuiltPrefix(i.Name())
+ filegroupTargetName := name + "-jars"
+
+ ctx.CreateBazelTargetModule(
+ bazel.BazelTargetModuleProperties{
+ Rule_class: "filegroup",
+ Bzl_load_location: "//build/bazel/rules:filegroup.bzl",
+ },
+ android.CommonAttributes{Name: filegroupTargetName},
+ &filegroupAttrs{
+ Srcs: jars,
+ },
+ )
+
+ attrs := &importAttributes{
+ Jars: bazel.MakeSingleLabelListAttribute(bazel.Label{Label: ":" + filegroupTargetName}),
}
props := bazel.BazelTargetModuleProperties{
Rule_class: "java_import",
Bzl_load_location: "//build/bazel/rules/java:import.bzl",
}
- name := android.RemoveOptionalPrebuiltPrefix(i.Name())
-
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: name}, attrs)
- neverlink := true
- neverlinkAttrs := &javaLibraryAttributes{
- Neverlink: bazel.BoolAttribute{Value: &neverlink},
- Exports: bazel.MakeSingleLabelListAttribute(bazel.Label{Label: ":" + name}),
- javaCommonAttributes: &javaCommonAttributes{
- Sdk_version: bazel.StringAttribute{Value: proptools.StringPtr("none")},
- },
+ neverlinkAttrs := &importAttributes{
+ Jars: attrs.Jars,
+ Neverlink: proptools.BoolPtr(true),
}
ctx.CreateBazelTargetModule(
- javaLibraryBazelTargetModuleProperties(),
+ props,
android.CommonAttributes{Name: name + "-neverlink"},
neverlinkAttrs)
}