Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5afd9fad authored by Alix's avatar Alix
Browse files

code cleanup for bp2build java_binary with kt srcs

there is now support for resoure_strip_prefix in kt_jvm_library targets.

Test: built AnalyzerKt and updated go ./bp2build tests
Change-Id: I4a6fe45276d45519186b6f40a02db990511d6def
parent 4d56abf9
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -221,6 +221,11 @@ func TestJavaBinaryHostKotlinWithResourceDir(t *testing.T) {
        "a.java",
        "b.kt",
    ]`,
				"resources": `[
        "res/a.res",
        "res/dir1/b.res",
    ]`,
				"resource_strip_prefix": `"res"`,
				"target_compatible_with": `select({
        "//build/bazel/platforms/os:android": ["@platforms//:incompatible"],
        "//conditions:default": [],
@@ -229,11 +234,6 @@ func TestJavaBinaryHostKotlinWithResourceDir(t *testing.T) {
			MakeBazelTarget("java_binary", "java-binary-host", AttrNameToString{
				"main_class":   `"com.android.test.MainClass"`,
				"runtime_deps": `[":java-binary-host_kt"]`,
				"resources": `[
        "res/a.res",
        "res/dir1/b.res",
    ]`,
				"resource_strip_prefix": `"res"`,
				"target_compatible_with": `select({
        "//build/bazel/platforms/os:android": ["@platforms//:incompatible"],
        "//conditions:default": [],
+4 −16
Original line number Diff line number Diff line
@@ -2941,6 +2941,7 @@ func javaBinaryHostBp2Build(ctx android.TopDownMutatorContext, m *Binary) {
				Srcs:                    commonAttrs.Srcs,
				Plugins:                 commonAttrs.Plugins,
				Javacopts:               commonAttrs.Javacopts,
				javaResourcesAttributes: commonAttrs.javaResourcesAttributes,
			},
		}

@@ -2948,19 +2949,6 @@ func javaBinaryHostBp2Build(ctx android.TopDownMutatorContext, m *Binary) {
			ktAttrs.javaCommonAttributes.Common_srcs = bazel.MakeLabelListAttribute(android.BazelLabelForModuleSrc(ctx, m.properties.Common_srcs))
		}

		// kt_jvm_library does not support resource_strip_prefix, if this attribute
		// is set, than javaResourcesAttributes needs to be set in the
		// javaCommonAttributes of the java_binary target
		if commonAttrs.javaResourcesAttributes != nil {
			if commonAttrs.javaResourcesAttributes.Resource_strip_prefix != nil {
				attrs.javaCommonAttributes = &javaCommonAttributes{
					javaResourcesAttributes: commonAttrs.javaResourcesAttributes,
				}
			} else {
				ktAttrs.javaCommonAttributes.javaResourcesAttributes = commonAttrs.javaResourcesAttributes
			}
		}

		ctx.CreateBazelTargetModule(ktProps, android.CommonAttributes{Name: ktName}, ktAttrs)
		attrs.Runtime_deps.Add(&bazel.LabelAttribute{Value: &bazel.Label{Label: ":" + ktName}})
	}