Loading bp2build/java_library_conversion_test.go +20 −8 Original line number Diff line number Diff line Loading @@ -183,8 +183,8 @@ func TestJavaLibraryJavaVersion(t *testing.T) { }) } func TestJavaLibraryErrorproneJavacflagsEnabledManually(t *testing.T) { runJavaLibraryTestCase(t, Bp2buildTestCase{ func TestJavaLibraryErrorproneEnabledManually(t *testing.T) { runJavaLibraryTestCaseWithRegistrationCtxFunc(t, Bp2buildTestCase{ Blueprint: `java_library { name: "java-lib-1", srcs: ["a.java"], Loading @@ -192,7 +192,13 @@ func TestJavaLibraryErrorproneJavacflagsEnabledManually(t *testing.T) { errorprone: { enabled: true, javacflags: ["-Xep:SpeedLimit:OFF"], extra_check_modules: ["plugin2"], }, } java_plugin { name: "plugin2", srcs: ["a.java"], bazel_module: { bp2build_available: false }, }`, ExpectedBazelTargets: []string{ MakeBazelTarget("java_library", "java-lib-1", AttrNameToString{ Loading @@ -200,10 +206,14 @@ func TestJavaLibraryErrorproneJavacflagsEnabledManually(t *testing.T) { "-Xsuper-fast", "-Xep:SpeedLimit:OFF", ]`, "plugins": `[":plugin2"]`, "srcs": `["a.java"]`, "errorprone_force_enable": `True`, }), MakeNeverlinkDuplicateTarget("java_library", "java-lib-1"), }, }, func(ctx android.RegistrationContext) { ctx.RegisterModuleType("java_plugin", java.PluginFactory) }) } Loading @@ -227,7 +237,7 @@ func TestJavaLibraryErrorproneJavacflagsErrorproneDisabledByDefault(t *testing.T }) } func TestJavaLibraryErrorproneJavacflagsErrorproneDisabledManually(t *testing.T) { func TestJavaLibraryErrorproneDisabledManually(t *testing.T) { runJavaLibraryTestCase(t, Bp2buildTestCase{ Blueprint: `java_library { name: "java-lib-1", Loading @@ -235,12 +245,14 @@ func TestJavaLibraryErrorproneJavacflagsErrorproneDisabledManually(t *testing.T) javacflags: ["-Xsuper-fast"], errorprone: { enabled: false, javacflags: ["-Xep:SpeedLimit:OFF"], }, }`, ExpectedBazelTargets: []string{ MakeBazelTarget("java_library", "java-lib-1", AttrNameToString{ "javacopts": `["-Xsuper-fast"]`, "javacopts": `[ "-Xsuper-fast", "-XepDisableAllChecks", ]`, "srcs": `["a.java"]`, }), MakeNeverlinkDuplicateTarget("java_library", "java-lib-1"), Loading java/java.go +26 −16 Original line number Diff line number Diff line Loading @@ -2770,6 +2770,7 @@ type javaCommonAttributes struct { Javacopts bazel.StringListAttribute Sdk_version bazel.StringAttribute Java_version bazel.StringAttribute Errorprone_force_enable bazel.BoolAttribute } type javaDependencyLabels struct { Loading Loading @@ -2911,26 +2912,35 @@ func (m *Library) convertLibraryAttrsBp2Build(ctx android.TopDownMutatorContext) staticDeps.Add(&bazel.Label{Label: ":" + javaAidlLibName}) } var javacopts []string var javacopts bazel.StringListAttribute //[]string plugins := bazel.MakeLabelListAttribute( android.BazelLabelForModuleDeps(ctx, m.properties.Plugins), ) if m.properties.Javacflags != nil { javacopts = append(javacopts, m.properties.Javacflags...) javacopts = bazel.MakeStringListAttribute(m.properties.Javacflags) } epEnabled := m.properties.Errorprone.Enabled epJavacflags := m.properties.Errorprone.Javacflags var errorproneForceEnable bazel.BoolAttribute if epEnabled == nil { //TODO(b/227504307) add configuration that depends on RUN_ERROR_PRONE environment variable if Bool(epEnabled) { javacopts = append(javacopts, m.properties.Errorprone.Javacflags...) } else if *epEnabled { plugins.Append(bazel.MakeLabelListAttribute(android.BazelLabelForModuleDeps(ctx, m.properties.Errorprone.Extra_check_modules))) javacopts.Append(bazel.MakeStringListAttribute(epJavacflags)) errorproneForceEnable.Value = epEnabled } else { javacopts.Append(bazel.MakeStringListAttribute([]string{"-XepDisableAllChecks"})) } commonAttrs := &javaCommonAttributes{ Srcs: javaSrcs, javaResourcesAttributes: m.convertJavaResourcesAttributes(ctx), Plugins: bazel.MakeLabelListAttribute( android.BazelLabelForModuleDeps(ctx, m.properties.Plugins), ), Javacopts: bazel.MakeStringListAttribute(javacopts), Plugins: plugins, Javacopts: javacopts, Java_version: bazel.StringAttribute{Value: m.properties.Java_version}, Sdk_version: bazel.StringAttribute{Value: m.deviceProperties.Sdk_version}, Errorprone_force_enable: errorproneForceEnable, } for axis, configToProps := range archVariantProps { Loading Loading
bp2build/java_library_conversion_test.go +20 −8 Original line number Diff line number Diff line Loading @@ -183,8 +183,8 @@ func TestJavaLibraryJavaVersion(t *testing.T) { }) } func TestJavaLibraryErrorproneJavacflagsEnabledManually(t *testing.T) { runJavaLibraryTestCase(t, Bp2buildTestCase{ func TestJavaLibraryErrorproneEnabledManually(t *testing.T) { runJavaLibraryTestCaseWithRegistrationCtxFunc(t, Bp2buildTestCase{ Blueprint: `java_library { name: "java-lib-1", srcs: ["a.java"], Loading @@ -192,7 +192,13 @@ func TestJavaLibraryErrorproneJavacflagsEnabledManually(t *testing.T) { errorprone: { enabled: true, javacflags: ["-Xep:SpeedLimit:OFF"], extra_check_modules: ["plugin2"], }, } java_plugin { name: "plugin2", srcs: ["a.java"], bazel_module: { bp2build_available: false }, }`, ExpectedBazelTargets: []string{ MakeBazelTarget("java_library", "java-lib-1", AttrNameToString{ Loading @@ -200,10 +206,14 @@ func TestJavaLibraryErrorproneJavacflagsEnabledManually(t *testing.T) { "-Xsuper-fast", "-Xep:SpeedLimit:OFF", ]`, "plugins": `[":plugin2"]`, "srcs": `["a.java"]`, "errorprone_force_enable": `True`, }), MakeNeverlinkDuplicateTarget("java_library", "java-lib-1"), }, }, func(ctx android.RegistrationContext) { ctx.RegisterModuleType("java_plugin", java.PluginFactory) }) } Loading @@ -227,7 +237,7 @@ func TestJavaLibraryErrorproneJavacflagsErrorproneDisabledByDefault(t *testing.T }) } func TestJavaLibraryErrorproneJavacflagsErrorproneDisabledManually(t *testing.T) { func TestJavaLibraryErrorproneDisabledManually(t *testing.T) { runJavaLibraryTestCase(t, Bp2buildTestCase{ Blueprint: `java_library { name: "java-lib-1", Loading @@ -235,12 +245,14 @@ func TestJavaLibraryErrorproneJavacflagsErrorproneDisabledManually(t *testing.T) javacflags: ["-Xsuper-fast"], errorprone: { enabled: false, javacflags: ["-Xep:SpeedLimit:OFF"], }, }`, ExpectedBazelTargets: []string{ MakeBazelTarget("java_library", "java-lib-1", AttrNameToString{ "javacopts": `["-Xsuper-fast"]`, "javacopts": `[ "-Xsuper-fast", "-XepDisableAllChecks", ]`, "srcs": `["a.java"]`, }), MakeNeverlinkDuplicateTarget("java_library", "java-lib-1"), Loading
java/java.go +26 −16 Original line number Diff line number Diff line Loading @@ -2770,6 +2770,7 @@ type javaCommonAttributes struct { Javacopts bazel.StringListAttribute Sdk_version bazel.StringAttribute Java_version bazel.StringAttribute Errorprone_force_enable bazel.BoolAttribute } type javaDependencyLabels struct { Loading Loading @@ -2911,26 +2912,35 @@ func (m *Library) convertLibraryAttrsBp2Build(ctx android.TopDownMutatorContext) staticDeps.Add(&bazel.Label{Label: ":" + javaAidlLibName}) } var javacopts []string var javacopts bazel.StringListAttribute //[]string plugins := bazel.MakeLabelListAttribute( android.BazelLabelForModuleDeps(ctx, m.properties.Plugins), ) if m.properties.Javacflags != nil { javacopts = append(javacopts, m.properties.Javacflags...) javacopts = bazel.MakeStringListAttribute(m.properties.Javacflags) } epEnabled := m.properties.Errorprone.Enabled epJavacflags := m.properties.Errorprone.Javacflags var errorproneForceEnable bazel.BoolAttribute if epEnabled == nil { //TODO(b/227504307) add configuration that depends on RUN_ERROR_PRONE environment variable if Bool(epEnabled) { javacopts = append(javacopts, m.properties.Errorprone.Javacflags...) } else if *epEnabled { plugins.Append(bazel.MakeLabelListAttribute(android.BazelLabelForModuleDeps(ctx, m.properties.Errorprone.Extra_check_modules))) javacopts.Append(bazel.MakeStringListAttribute(epJavacflags)) errorproneForceEnable.Value = epEnabled } else { javacopts.Append(bazel.MakeStringListAttribute([]string{"-XepDisableAllChecks"})) } commonAttrs := &javaCommonAttributes{ Srcs: javaSrcs, javaResourcesAttributes: m.convertJavaResourcesAttributes(ctx), Plugins: bazel.MakeLabelListAttribute( android.BazelLabelForModuleDeps(ctx, m.properties.Plugins), ), Javacopts: bazel.MakeStringListAttribute(javacopts), Plugins: plugins, Javacopts: javacopts, Java_version: bazel.StringAttribute{Value: m.properties.Java_version}, Sdk_version: bazel.StringAttribute{Value: m.deviceProperties.Sdk_version}, Errorprone_force_enable: errorproneForceEnable, } for axis, configToProps := range archVariantProps { Loading