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

Commit 1ec7785e authored by Jingwen Chen's avatar Jingwen Chen
Browse files

bazel apex: Add mixed builds support for <module>_using.xml file.

This file contains the java APIs parsed by the 'dexdeps' tool within the gen_java_usedby_apex.sh.

Bug: 239084755
Fixes: 239084755
Test: presubmits
Change-Id: Ia271783a6be3ea3a343481306cde1aaba2166e88
parent 926d00c2
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -69,6 +69,9 @@ var (
		"build/soong/scripts":                Bp2BuildDefaultTrueRecursively,

		"cts/common/device-side/nativetesthelper/jni": Bp2BuildDefaultTrueRecursively,

		"dalvik/tools/dexdeps": Bp2BuildDefaultTrueRecursively,

		"development/apps/DevelopmentSettings":        Bp2BuildDefaultTrue,
		"development/apps/Fallback":                   Bp2BuildDefaultTrue,
		"development/apps/WidgetPreview":              Bp2BuildDefaultTrue,
+1 −1
Original line number Diff line number Diff line
@@ -1910,7 +1910,7 @@ func (a *apexBundle) ProcessBazelQueryResponse(ctx android.ModuleContext) {
		a.nativeApisUsedByModuleFile = android.ModuleOutPath(android.PathForBazelOut(ctx, outputs.SymbolsUsedByApex))
		a.nativeApisBackedByModuleFile = android.ModuleOutPath(android.PathForBazelOut(ctx, outputs.BackingLibs))
		// TODO(b/239084755): Generate the java api using.xml file from Bazel.
		a.javaApisUsedByModuleFile = android.ModuleOutPath(android.PathForBazelOut(ctx, a.Name()+"_using.xml"))
		a.javaApisUsedByModuleFile = android.ModuleOutPath(android.PathForBazelOut(ctx, outputs.JavaSymbolsUsedByApex))
		installSuffix := imageApexSuffix
		if a.isCompressed {
			installSuffix = imageCapexSuffix
+10 −5
Original line number Diff line number Diff line
@@ -9759,6 +9759,7 @@ apex {
						BundleKeyInfo:         []string{"public_key", "private_key"},
						ContainerKeyInfo:      []string{"container_cert", "container_private"},
						SymbolsUsedByApex:     "foo_using.txt",
						JavaSymbolsUsedByApex: "foo_using.xml",

						// unused
						PackageName:  "pkg_name",
@@ -9799,4 +9800,8 @@ apex {
	if w, g := "out/bazel/execroot/__main__/foo_using.txt", ab.nativeApisUsedByModuleFile.String(); w != g {
		t.Errorf("Expected output file %q, got %q", w, g)
	}

	if w, g := "out/bazel/execroot/__main__/foo_using.xml", ab.javaApisUsedByModuleFile.String(); w != g {
		t.Errorf("Expected output file %q, got %q", w, g)
	}
}
+11 −9
Original line number Diff line number Diff line
@@ -219,6 +219,7 @@ return json_encode({
    "container_key_info": [container_key_info.pem.path, container_key_info.pk8.path, container_key_info.key_name],
    "package_name": info.package_name,
    "symbols_used_by_apex": info.symbols_used_by_apex.path,
    "java_symbols_used_by_apex": info.java_symbols_used_by_apex.path,
    "backing_libs": info.backing_libs.path,
})`
}
@@ -232,6 +233,7 @@ type ApexInfo struct {
	ContainerKeyInfo      []string `json:"container_key_info"`
	PackageName           string   `json:"package_name"`
	SymbolsUsedByApex     string   `json:"symbols_used_by_apex"`
	JavaSymbolsUsedByApex string   `json:"java_symbols_used_by_apex"`
	BackingLibs           string   `json:"backing_libs"`
}