Merge "apex: set ":vndk" as required for vendor apexes" am: b0c4d3b319
am: feb217de25
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1376856 Change-Id: I4c3a194b68df9245ca0f39fc938e01acab4443a3
This commit is contained in:
@@ -2257,10 +2257,7 @@ func (a *apexBundle) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if cc.UseVndk() && proptools.Bool(a.properties.Use_vndk_as_stable) && cc.IsVndk() {
|
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
|
requireNativeLibs = append(requireNativeLibs, ":vndk")
|
||||||
// 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.
|
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
af := apexFileForNativeLibrary(ctx, cc, handleSpecialLibs)
|
af := apexFileForNativeLibrary(ctx, cc, handleSpecialLibs)
|
||||||
|
@@ -2201,6 +2201,10 @@ func TestVendorApex(t *testing.T) {
|
|||||||
data.Custom(&builder, name, prefix, "", data)
|
data.Custom(&builder, name, prefix, "", data)
|
||||||
androidMk := builder.String()
|
androidMk := builder.String()
|
||||||
ensureContains(t, androidMk, `LOCAL_MODULE_PATH := /tmp/target/product/test_device/vendor/apex`)
|
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) {
|
func TestVendorApex_use_vndk_as_stable(t *testing.T) {
|
||||||
@@ -2250,6 +2254,10 @@ func TestVendorApex_use_vndk_as_stable(t *testing.T) {
|
|||||||
"bin/mybin",
|
"bin/mybin",
|
||||||
"lib64/libvendor.so",
|
"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) {
|
func TestAndroidMk_UseVendorRequired(t *testing.T) {
|
||||||
|
Reference in New Issue
Block a user