Fix snapshot symlinks
LOCAL_MODULE_SYMLINKS was enough to install symlinks for snapshot binaries. However, Soong now requires LOCAL_SOONG_INSTALLED_SYMLINKS, which results in broken symlink support in snapshots. This fixes symlink problems, and then amends the Soong snapshot test. Bug: 220639435 Bug: 220907049 Test: manually add symlinks and try building Test: Soong test Change-Id: Ia75ddf3aa642558e396f1d80736310c3c8d02ad1
This commit is contained in:
@@ -741,6 +741,7 @@ func TestVendorSnapshotUse(t *testing.T) {
|
||||
src: "bin",
|
||||
},
|
||||
},
|
||||
symlinks: ["binfoo", "binbar"],
|
||||
}
|
||||
|
||||
vendor_snapshot_binary {
|
||||
@@ -920,7 +921,21 @@ func TestVendorSnapshotUse(t *testing.T) {
|
||||
ctx.ModuleForTests("libvendor_without_snapshot", sharedVariant).Output("libvendor_without_snapshot.so")
|
||||
|
||||
// bin is installed by bin.vendor_binary.31.arm64
|
||||
ctx.ModuleForTests("bin.vendor_binary.31.arm64", binaryVariant).Output("bin")
|
||||
bin64Module := ctx.ModuleForTests("bin.vendor_binary.31.arm64", binaryVariant)
|
||||
bin64Module.Output("bin")
|
||||
|
||||
// also test symlinks
|
||||
bin64MkEntries := android.AndroidMkEntriesForTest(t, ctx, bin64Module.Module())
|
||||
bin64KatiSymlinks := bin64MkEntries[0].EntryMap["LOCAL_SOONG_INSTALL_SYMLINKS"]
|
||||
|
||||
// Either AndroidMk entries contain symlinks, or symlinks should be installed by Soong
|
||||
for _, symlink := range []string{"binfoo", "binbar"} {
|
||||
if inList(symlink, bin64KatiSymlinks) {
|
||||
continue
|
||||
}
|
||||
|
||||
bin64Module.Output(symlink)
|
||||
}
|
||||
|
||||
// bin32 is installed by bin32.vendor_binary.31.arm64
|
||||
ctx.ModuleForTests("bin32.vendor_binary.31.arm64", binary32Variant).Output("bin32")
|
||||
|
Reference in New Issue
Block a user