Revert "Don't use java_library for java_import neverlink"
Revert submission 2786699-import-sdk-version-none Reason for revert: b/306220520 Reverted changes: /q/submissionid:2786699-import-sdk-version-none Change-Id: I4fbe5fa54dc11fac898a7f15704833f01b9fa269
This commit is contained in:
@@ -52,15 +52,13 @@ java_import {
|
|||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
ExpectedBazelTargets: []string{
|
ExpectedBazelTargets: []string{
|
||||||
MakeBazelTarget("filegroup", "example_import-jars", AttrNameToString{
|
|
||||||
"srcs": `["import.jar"]`,
|
|
||||||
}),
|
|
||||||
MakeBazelTarget("java_import", "example_import", AttrNameToString{
|
MakeBazelTarget("java_import", "example_import", AttrNameToString{
|
||||||
"jars": `[":example_import-jars"]`,
|
"jars": `["import.jar"]`,
|
||||||
}),
|
}),
|
||||||
MakeBazelTarget("java_import", "example_import-neverlink", AttrNameToString{
|
MakeBazelTarget("java_library", "example_import-neverlink", AttrNameToString{
|
||||||
"jars": `[":example_import-jars"]`,
|
"exports": `[":example_import"]`,
|
||||||
"neverlink": `True`,
|
"neverlink": `True`,
|
||||||
|
"sdk_version": `"none"`,
|
||||||
}),
|
}),
|
||||||
}})
|
}})
|
||||||
}
|
}
|
||||||
@@ -88,19 +86,17 @@ java_import {
|
|||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
ExpectedBazelTargets: []string{
|
ExpectedBazelTargets: []string{
|
||||||
MakeBazelTarget("filegroup", "example_import-jars", AttrNameToString{
|
MakeBazelTarget("java_import", "example_import", AttrNameToString{
|
||||||
"srcs": `select({
|
"jars": `select({
|
||||||
"//build/bazel_common_rules/platforms/os:android": ["android.jar"],
|
"//build/bazel_common_rules/platforms/os:android": ["android.jar"],
|
||||||
"//build/bazel_common_rules/platforms/os:linux_glibc": ["linux.jar"],
|
"//build/bazel_common_rules/platforms/os:linux_glibc": ["linux.jar"],
|
||||||
"//conditions:default": [],
|
"//conditions:default": [],
|
||||||
})`,
|
})`,
|
||||||
}),
|
}),
|
||||||
MakeBazelTarget("java_import", "example_import", AttrNameToString{
|
MakeBazelTarget("java_library", "example_import-neverlink", AttrNameToString{
|
||||||
"jars": `[":example_import-jars"]`,
|
"exports": `[":example_import"]`,
|
||||||
}),
|
"neverlink": `True`,
|
||||||
MakeBazelTarget("java_import", "example_import-neverlink", AttrNameToString{
|
"sdk_version": `"none"`,
|
||||||
"jars": `[":example_import-jars"]`,
|
|
||||||
"neverlink": `True`,
|
|
||||||
}),
|
}),
|
||||||
}})
|
}})
|
||||||
}
|
}
|
||||||
@@ -121,15 +117,13 @@ java_import_host {
|
|||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
ExpectedBazelTargets: []string{
|
ExpectedBazelTargets: []string{
|
||||||
MakeBazelTarget("filegroup", "example_import-jars", AttrNameToString{
|
|
||||||
"srcs": `["import.jar"]`,
|
|
||||||
}),
|
|
||||||
MakeBazelTarget("java_import", "example_import", AttrNameToString{
|
MakeBazelTarget("java_import", "example_import", AttrNameToString{
|
||||||
"jars": `[":example_import-jars"]`,
|
"jars": `["import.jar"]`,
|
||||||
}),
|
}),
|
||||||
MakeBazelTarget("java_import", "example_import-neverlink", AttrNameToString{
|
MakeBazelTarget("java_library", "example_import-neverlink", AttrNameToString{
|
||||||
"jars": `[":example_import-jars"]`,
|
"exports": `[":example_import"]`,
|
||||||
"neverlink": `True`,
|
"neverlink": `True`,
|
||||||
|
"sdk_version": `"none"`,
|
||||||
}),
|
}),
|
||||||
}})
|
}})
|
||||||
}
|
}
|
||||||
@@ -148,15 +142,13 @@ func TestJavaImportSameNameAsJavaLibrary(t *testing.T) {
|
|||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
ExpectedBazelTargets: []string{
|
ExpectedBazelTargets: []string{
|
||||||
MakeBazelTarget("filegroup", "test_lib-jars", AttrNameToString{
|
|
||||||
"srcs": `["test.jar"]`,
|
|
||||||
}),
|
|
||||||
MakeBazelTarget("java_import", "test_lib", AttrNameToString{
|
MakeBazelTarget("java_import", "test_lib", AttrNameToString{
|
||||||
"jars": `[":test_lib-jars"]`,
|
"jars": `["test.jar"]`,
|
||||||
}),
|
}),
|
||||||
MakeBazelTarget("java_import", "test_lib-neverlink", AttrNameToString{
|
MakeBazelTarget("java_library", "test_lib-neverlink", AttrNameToString{
|
||||||
"jars": `[":test_lib-jars"]`,
|
"exports": `[":test_lib"]`,
|
||||||
"neverlink": `True`,
|
"neverlink": `True`,
|
||||||
|
"sdk_version": `"none"`,
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
}, func(ctx android.RegistrationContext) {
|
}, func(ctx android.RegistrationContext) {
|
||||||
|
43
java/java.go
43
java/java.go
@@ -3403,14 +3403,9 @@ func createLibraryTarget(ctx android.Bp2buildMutatorContext, libInfo libraryCrea
|
|||||||
return libName
|
return libName
|
||||||
}
|
}
|
||||||
|
|
||||||
type importAttributes struct {
|
type bazelJavaImportAttributes struct {
|
||||||
Jars bazel.LabelListAttribute
|
Jars bazel.LabelListAttribute
|
||||||
Exports bazel.LabelListAttribute
|
Exports bazel.LabelListAttribute
|
||||||
Neverlink *bool
|
|
||||||
}
|
|
||||||
|
|
||||||
type filegroupAttrs struct {
|
|
||||||
Srcs bazel.LabelListAttribute
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// java_import bp2Build converter.
|
// java_import bp2Build converter.
|
||||||
@@ -3426,36 +3421,28 @@ func (i *Import) ConvertWithBp2build(ctx android.Bp2buildMutatorContext) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
name := android.RemoveOptionalPrebuiltPrefix(i.Name())
|
attrs := &bazelJavaImportAttributes{
|
||||||
filegroupTargetName := name + "-jars"
|
Jars: 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{
|
props := bazel.BazelTargetModuleProperties{
|
||||||
Rule_class: "java_import",
|
Rule_class: "java_import",
|
||||||
Bzl_load_location: "//build/bazel/rules/java:import.bzl",
|
Bzl_load_location: "//build/bazel/rules/java:import.bzl",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
name := android.RemoveOptionalPrebuiltPrefix(i.Name())
|
||||||
|
|
||||||
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: name}, attrs)
|
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: name}, attrs)
|
||||||
|
|
||||||
neverlinkAttrs := &importAttributes{
|
neverlink := true
|
||||||
Jars: attrs.Jars,
|
neverlinkAttrs := &javaLibraryAttributes{
|
||||||
Neverlink: proptools.BoolPtr(true),
|
Neverlink: bazel.BoolAttribute{Value: &neverlink},
|
||||||
|
Exports: bazel.MakeSingleLabelListAttribute(bazel.Label{Label: ":" + name}),
|
||||||
|
javaCommonAttributes: &javaCommonAttributes{
|
||||||
|
Sdk_version: bazel.StringAttribute{Value: proptools.StringPtr("none")},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
ctx.CreateBazelTargetModule(
|
ctx.CreateBazelTargetModule(
|
||||||
props,
|
javaLibraryBazelTargetModuleProperties(),
|
||||||
android.CommonAttributes{Name: name + "-neverlink"},
|
android.CommonAttributes{Name: name + "-neverlink"},
|
||||||
neverlinkAttrs)
|
neverlinkAttrs)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user