Loading android/allowlists/allowlists.go +1 −0 Original line number Diff line number Diff line Loading @@ -993,6 +993,7 @@ var ( "tradefed-result-interfaces", "tradefed-device-build-interfaces", "tradefed-invocation-interfaces", "tradefed-lib-core", } Bp2buildModuleTypeAlwaysConvertList = []string{ Loading bp2build/java_proto_conversion_test.go +43 −0 Original line number Diff line number Diff line Loading @@ -193,3 +193,46 @@ java_library_static { }, }) } func TestJavaProtoPlugin(t *testing.T) { runJavaProtoTestCase(t, Bp2buildTestCase{ Description: "java_library proto plugin", StubbedBuildDefinitions: []string{"protoc-gen-test-plugin"}, Blueprint: `java_library_static { name: "java-protos", srcs: ["a.proto"], proto: { plugin: "test-plugin", }, sdk_version: "current", } java_library_static { name: "protoc-gen-test-plugin", } `, ExpectedBazelTargets: []string{ MakeBazelTarget("proto_library", "java-protos_proto", AttrNameToString{ "srcs": `["a.proto"]`, }), MakeBazelTarget( "java_lite_proto_library", "java-protos_java_proto_lite", AttrNameToString{ "deps": `[":java-protos_proto"]`, "plugin": `":protoc-gen-test-plugin"`, "sdk_version": `"current"`, }), MakeBazelTarget("java_library", "java-protos", AttrNameToString{ "exports": `[":java-protos_java_proto_lite"]`, "sdk_version": `"current"`, }), MakeNeverlinkDuplicateTargetWithAttrs( "java_library", "java-protos", AttrNameToString{ "sdk_version": `"current"`, }), }, }) } java/proto.go +8 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,8 @@ type protoAttributes struct { Sdk_version bazel.StringAttribute Java_version bazel.StringAttribute Plugin bazel.LabelAttribute } func bp2buildProto(ctx android.Bp2buildMutatorContext, m *Module, protoSrcs bazel.LabelListAttribute, AdditionalProtoDeps bazel.LabelListAttribute) *bazel.Label { Loading Loading @@ -189,12 +191,18 @@ func bp2buildProto(ctx android.Bp2buildMutatorContext, m *Module, protoSrcs baze ctx.PropertyErrorf("proto.type", "cannot handle conversion at this time: %q", typ) } plugin := bazel.LabelAttribute{} if m.protoProperties.Proto.Plugin != nil { plugin.SetValue(android.BazelLabelForModuleDepSingle(ctx, "protoc-gen-"+*m.protoProperties.Proto.Plugin)) } protoAttrs := &protoAttributes{ Deps: bazel.MakeLabelListAttribute(protoInfo.Proto_libs), Transitive_deps: bazel.MakeLabelListAttribute(protoInfo.Transitive_proto_libs), Additional_proto_deps: AdditionalProtoDeps, Java_version: bazel.StringAttribute{Value: m.properties.Java_version}, Sdk_version: bazel.StringAttribute{Value: m.deviceProperties.Sdk_version}, Plugin: plugin, } name := m.Name() + suffix Loading Loading
android/allowlists/allowlists.go +1 −0 Original line number Diff line number Diff line Loading @@ -993,6 +993,7 @@ var ( "tradefed-result-interfaces", "tradefed-device-build-interfaces", "tradefed-invocation-interfaces", "tradefed-lib-core", } Bp2buildModuleTypeAlwaysConvertList = []string{ Loading
bp2build/java_proto_conversion_test.go +43 −0 Original line number Diff line number Diff line Loading @@ -193,3 +193,46 @@ java_library_static { }, }) } func TestJavaProtoPlugin(t *testing.T) { runJavaProtoTestCase(t, Bp2buildTestCase{ Description: "java_library proto plugin", StubbedBuildDefinitions: []string{"protoc-gen-test-plugin"}, Blueprint: `java_library_static { name: "java-protos", srcs: ["a.proto"], proto: { plugin: "test-plugin", }, sdk_version: "current", } java_library_static { name: "protoc-gen-test-plugin", } `, ExpectedBazelTargets: []string{ MakeBazelTarget("proto_library", "java-protos_proto", AttrNameToString{ "srcs": `["a.proto"]`, }), MakeBazelTarget( "java_lite_proto_library", "java-protos_java_proto_lite", AttrNameToString{ "deps": `[":java-protos_proto"]`, "plugin": `":protoc-gen-test-plugin"`, "sdk_version": `"current"`, }), MakeBazelTarget("java_library", "java-protos", AttrNameToString{ "exports": `[":java-protos_java_proto_lite"]`, "sdk_version": `"current"`, }), MakeNeverlinkDuplicateTargetWithAttrs( "java_library", "java-protos", AttrNameToString{ "sdk_version": `"current"`, }), }, }) }
java/proto.go +8 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,8 @@ type protoAttributes struct { Sdk_version bazel.StringAttribute Java_version bazel.StringAttribute Plugin bazel.LabelAttribute } func bp2buildProto(ctx android.Bp2buildMutatorContext, m *Module, protoSrcs bazel.LabelListAttribute, AdditionalProtoDeps bazel.LabelListAttribute) *bazel.Label { Loading Loading @@ -189,12 +191,18 @@ func bp2buildProto(ctx android.Bp2buildMutatorContext, m *Module, protoSrcs baze ctx.PropertyErrorf("proto.type", "cannot handle conversion at this time: %q", typ) } plugin := bazel.LabelAttribute{} if m.protoProperties.Proto.Plugin != nil { plugin.SetValue(android.BazelLabelForModuleDepSingle(ctx, "protoc-gen-"+*m.protoProperties.Proto.Plugin)) } protoAttrs := &protoAttributes{ Deps: bazel.MakeLabelListAttribute(protoInfo.Proto_libs), Transitive_deps: bazel.MakeLabelListAttribute(protoInfo.Transitive_proto_libs), Additional_proto_deps: AdditionalProtoDeps, Java_version: bazel.StringAttribute{Value: m.properties.Java_version}, Sdk_version: bazel.StringAttribute{Value: m.deviceProperties.Sdk_version}, Plugin: plugin, } name := m.Name() + suffix Loading