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

Commit feb217de authored by Jooyung Han's avatar Jooyung Han Committed by Automerger Merge Worker
Browse files

Merge "apex: set ":vndk" as required for vendor apexes" am: b0c4d3b3

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1376856

Change-Id: Iedc06a90268abe75a837a4a491f4a630539a49d8
parents b04b2e0c b0c4d3b3
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -2162,10 +2162,7 @@ func (a *apexBundle) GenerateAndroidBuildActions(ctx android.ModuleContext) {
							return false
						}
						if cc.UseVndk() && proptools.Bool(a.properties.Use_vndk_as_stable) && cc.IsVndk() {
							// For vendor APEX with use_vndk_as_stable: true, we don't include VNDK libs
							// and use them from VNDK APEX.
							// TODO(b/159576928): add "vndk" as requiredDeps so that linkerconfig can make "vndk"
							// linker namespace avaiable to this apex.
							requireNativeLibs = append(requireNativeLibs, ":vndk")
							return false
						}
						af := apexFileForNativeLibrary(ctx, cc, handleSpecialLibs)
+8 −0
Original line number Diff line number Diff line
@@ -2201,6 +2201,10 @@ func TestVendorApex(t *testing.T) {
	data.Custom(&builder, name, prefix, "", data)
	androidMk := builder.String()
	ensureContains(t, androidMk, `LOCAL_MODULE_PATH := /tmp/target/product/test_device/vendor/apex`)

	apexManifestRule := ctx.ModuleForTests("myapex", "android_common_myapex_image").Rule("apexManifestRule")
	requireNativeLibs := names(apexManifestRule.Args["requireNativeLibs"])
	ensureListNotContains(t, requireNativeLibs, ":vndk")
}

func TestVendorApex_use_vndk_as_stable(t *testing.T) {
@@ -2250,6 +2254,10 @@ func TestVendorApex_use_vndk_as_stable(t *testing.T) {
		"bin/mybin",
		"lib64/libvendor.so",
	})

	apexManifestRule := ctx.ModuleForTests("myapex", "android_common_myapex_image").Rule("apexManifestRule")
	requireNativeLibs := names(apexManifestRule.Args["requireNativeLibs"])
	ensureListContains(t, requireNativeLibs, ":vndk")
}

func TestAndroidMk_UseVendorRequired(t *testing.T) {