Retry: Fix snapshot of a host/device cc_library with stubs

Change since last attempt: Disable test that breaks on darwin.

Adds a test that fails with unknown property android.stubs.versions
and then fixes that by marking the field from which that property is
created with 'ignored-on-host' and implemented the isHostVariant on
*osTypeSpecificInfo.

Bug: 155628860
Test: m nothing
Change-Id: Ia4e744c9e799d5adaf8a2f761516f568ec363ad4
This commit is contained in:
Paul Duffin
2020-05-04 15:32:08 +01:00
parent c459f89fb4
commit 7a1f7f32ab
3 changed files with 98 additions and 1 deletions

View File

@@ -1805,3 +1805,89 @@ sdk_snapshot {
}
`))
}
func TestDeviceAndHostSnapshotWithStubsLibrary(t *testing.T) {
// b/145598135 - Generating host snapshots for anything other than linux is not supported.
SkipIfNotLinux(t)
result := testSdkWithCc(t, `
sdk {
name: "mysdk",
host_supported: true,
native_shared_libs: ["stubslib"],
}
cc_library {
name: "internaldep",
host_supported: true,
}
cc_library {
name: "stubslib",
host_supported: true,
shared_libs: ["internaldep"],
stubs: {
symbol_file: "some/where/stubslib.map.txt",
versions: ["1", "2", "3"],
},
}
`)
result.CheckSnapshot("mysdk", "",
checkAndroidBpContents(`
// This is auto-generated. DO NOT EDIT.
cc_prebuilt_library_shared {
name: "mysdk_stubslib@current",
sdk_member_name: "stubslib",
host_supported: true,
installable: false,
stubs: {
versions: ["3"],
},
target: {
android_arm64: {
srcs: ["android/arm64/lib/stubslib.so"],
},
android_arm: {
srcs: ["android/arm/lib/stubslib.so"],
},
linux_glibc_x86_64: {
srcs: ["linux_glibc/x86_64/lib/stubslib.so"],
},
linux_glibc_x86: {
srcs: ["linux_glibc/x86/lib/stubslib.so"],
},
},
}
cc_prebuilt_library_shared {
name: "stubslib",
prefer: false,
host_supported: true,
stubs: {
versions: ["3"],
},
target: {
android_arm64: {
srcs: ["android/arm64/lib/stubslib.so"],
},
android_arm: {
srcs: ["android/arm/lib/stubslib.so"],
},
linux_glibc_x86_64: {
srcs: ["linux_glibc/x86_64/lib/stubslib.so"],
},
linux_glibc_x86: {
srcs: ["linux_glibc/x86/lib/stubslib.so"],
},
},
}
sdk_snapshot {
name: "mysdk@current",
host_supported: true,
native_shared_libs: ["mysdk_stubslib@current"],
}
`))
}