Explicitly specify visibility in sdk/module_exports snapshot

This change ensures that each prebuilt in a snapshot explicitly
specifies its visibility even when that visibility is the current
default. This is done for two reasons:
1. It simplifies a follow up change that adds visibility rules to an
   existing set of rules.
2. It ensures that the snapshots are independent of the current Soong
   default visibility.

The latter is important because we intend to switch from modules being
visible to everyone by default (i.e. //visibility:public) to only being
visible to modules in the same package (i.e. //visibility:private). By
making the snapshots of modules that do not specify any visibility
explicitly specify that they are "//visibility:public" it ensures that
the snapshots will not need to be changed when the default changes.

Bug: 168301990
Test: m nothing
Change-Id: Ia034f4a1e5124c17f46d73b0e9a6c5f2a251038e
This commit is contained in:
Paul Duffin
2020-09-29 16:00:55 +01:00
parent 45dda43df0
commit d99d997238
4 changed files with 167 additions and 3 deletions

View File

@@ -108,6 +108,7 @@ func TestSdkCompileMultilibOverride(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_sdkmember@current",
sdk_member_name: "sdkmember",
visibility: ["//visibility:public"],
host_supported: true,
installable: false,
stl: "none",
@@ -131,6 +132,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "sdkmember",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
stl: "none",
compile_multilib: "64",
@@ -152,6 +154,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
host_supported: true,
native_shared_libs: ["mysdk_sdkmember@current"],
compile_multilib: "64",
@@ -353,6 +356,7 @@ func TestSnapshotWithObject(t *testing.T) {
cc_prebuilt_object {
name: "mysdk_crtobj@current",
sdk_member_name: "crtobj",
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
sanitize: {
@@ -371,6 +375,7 @@ cc_prebuilt_object {
cc_prebuilt_object {
name: "crtobj",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
sanitize: {
@@ -388,6 +393,7 @@ cc_prebuilt_object {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_objects: ["mysdk_crtobj@current"],
}
`),
@@ -478,6 +484,7 @@ func TestSnapshotWithCcSharedLibraryCommonProperties(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
installable: false,
stl: "none",
compile_multilib: "both",
@@ -509,6 +516,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
export_include_dirs: ["include/include"],
@@ -538,6 +546,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_shared_libs: ["mysdk_mynativelib@current"],
}
`),
@@ -572,6 +581,7 @@ func TestSnapshotWithCcBinary(t *testing.T) {
cc_prebuilt_binary {
name: "mymodule_exports_mynativebinary@current",
sdk_member_name: "mynativebinary",
visibility: ["//visibility:public"],
installable: false,
compile_multilib: "both",
arch: {
@@ -587,6 +597,7 @@ cc_prebuilt_binary {
cc_prebuilt_binary {
name: "mynativebinary",
prefer: false,
visibility: ["//visibility:public"],
compile_multilib: "both",
arch: {
arm64: {
@@ -600,6 +611,7 @@ cc_prebuilt_binary {
module_exports_snapshot {
name: "mymodule_exports@current",
visibility: ["//visibility:public"],
native_binaries: ["mymodule_exports_mynativebinary@current"],
}
`),
@@ -648,6 +660,7 @@ func TestMultipleHostOsTypesSnapshotWithCcBinary(t *testing.T) {
cc_prebuilt_binary {
name: "myexports_mynativebinary@current",
sdk_member_name: "mynativebinary",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -679,6 +692,7 @@ cc_prebuilt_binary {
cc_prebuilt_binary {
name: "mynativebinary",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -708,6 +722,7 @@ cc_prebuilt_binary {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_binaries: ["myexports_mynativebinary@current"],
@@ -786,6 +801,7 @@ func TestSnapshotWithSingleHostOsType(t *testing.T) {
cc_prebuilt_binary {
name: "myexports_mynativebinary@current",
sdk_member_name: "mynativebinary",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -807,6 +823,7 @@ cc_prebuilt_binary {
cc_prebuilt_binary {
name: "mynativebinary",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -827,6 +844,7 @@ cc_prebuilt_binary {
cc_prebuilt_library_shared {
name: "myexports_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -848,6 +866,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -867,6 +886,7 @@ cc_prebuilt_library_shared {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_binaries: ["myexports_mynativebinary@current"],
@@ -920,6 +940,7 @@ func TestSnapshotWithCcStaticNocrtBinary(t *testing.T) {
cc_prebuilt_binary {
name: "mymodule_exports_linker@current",
sdk_member_name: "linker",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -946,6 +967,7 @@ cc_prebuilt_binary {
cc_prebuilt_binary {
name: "linker",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -970,6 +992,7 @@ cc_prebuilt_binary {
module_exports_snapshot {
name: "mymodule_exports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_binaries: ["mymodule_exports_linker@current"],
@@ -1019,6 +1042,7 @@ func TestSnapshotWithCcSharedLibrary(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
apex_available: [
"apex1",
"apex2",
@@ -1042,6 +1066,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
apex_available: [
"apex1",
"apex2",
@@ -1063,6 +1088,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_shared_libs: ["mysdk_mynativelib@current"],
}
`),
@@ -1147,6 +1173,7 @@ func TestSnapshotWithCcSharedLibrarySharedLibs(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
installable: false,
stl: "none",
compile_multilib: "both",
@@ -1167,6 +1194,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
shared_libs: [
@@ -1186,6 +1214,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mysdk_myothernativelib@current",
sdk_member_name: "myothernativelib",
visibility: ["//visibility:public"],
installable: false,
stl: "none",
compile_multilib: "both",
@@ -1203,6 +1232,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "myothernativelib",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
system_shared_libs: ["libm"],
@@ -1219,6 +1249,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mysdk_mysystemnativelib@current",
sdk_member_name: "mysystemnativelib",
visibility: ["//visibility:public"],
installable: false,
stl: "none",
compile_multilib: "both",
@@ -1235,6 +1266,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mysystemnativelib",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
arch: {
@@ -1249,6 +1281,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_shared_libs: [
"mysdk_mynativelib@current",
"mysdk_myothernativelib@current",
@@ -1300,6 +1333,7 @@ func TestHostSnapshotWithCcSharedLibrary(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -1328,6 +1362,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
sdk_version: "minimum",
@@ -1354,6 +1389,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_shared_libs: ["mysdk_mynativelib@current"],
@@ -1418,6 +1454,7 @@ func TestMultipleHostOsTypesSnapshotWithCcSharedLibrary(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -1449,6 +1486,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -1478,6 +1516,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_shared_libs: ["mysdk_mynativelib@current"],
@@ -1531,6 +1570,7 @@ func TestSnapshotWithCcStaticLibrary(t *testing.T) {
cc_prebuilt_library_static {
name: "myexports_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
installable: false,
stl: "none",
compile_multilib: "both",
@@ -1550,6 +1590,7 @@ cc_prebuilt_library_static {
cc_prebuilt_library_static {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
export_include_dirs: ["include/include"],
@@ -1567,6 +1608,7 @@ cc_prebuilt_library_static {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
native_static_libs: ["myexports_mynativelib@current"],
}
`),
@@ -1616,6 +1658,7 @@ func TestHostSnapshotWithCcStaticLibrary(t *testing.T) {
cc_prebuilt_library_static {
name: "myexports_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -1643,6 +1686,7 @@ cc_prebuilt_library_static {
cc_prebuilt_library_static {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -1668,6 +1712,7 @@ cc_prebuilt_library_static {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_static_libs: ["myexports_mynativelib@current"],
@@ -1721,6 +1766,7 @@ func TestSnapshotWithCcLibrary(t *testing.T) {
cc_prebuilt_library {
name: "myexports_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
installable: false,
recovery_available: true,
vendor_available: true,
@@ -1750,6 +1796,7 @@ cc_prebuilt_library {
cc_prebuilt_library {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
recovery_available: true,
vendor_available: true,
stl: "none",
@@ -1777,6 +1824,7 @@ cc_prebuilt_library {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
native_libs: ["myexports_mynativelib@current"],
}
`),
@@ -1826,6 +1874,7 @@ func TestHostSnapshotWithMultiLib64(t *testing.T) {
cc_prebuilt_library_static {
name: "myexports_mynativelib@current",
sdk_member_name: "mynativelib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
installable: false,
@@ -1849,6 +1898,7 @@ cc_prebuilt_library_static {
cc_prebuilt_library_static {
name: "mynativelib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -1870,6 +1920,7 @@ cc_prebuilt_library_static {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_static_libs: ["myexports_mynativelib@current"],
@@ -1914,6 +1965,7 @@ func TestSnapshotWithCcHeadersLibrary(t *testing.T) {
cc_prebuilt_library_headers {
name: "mysdk_mynativeheaders@current",
sdk_member_name: "mynativeheaders",
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
export_include_dirs: ["include/include"],
@@ -1922,6 +1974,7 @@ cc_prebuilt_library_headers {
cc_prebuilt_library_headers {
name: "mynativeheaders",
prefer: false,
visibility: ["//visibility:public"],
stl: "none",
compile_multilib: "both",
export_include_dirs: ["include/include"],
@@ -1929,6 +1982,7 @@ cc_prebuilt_library_headers {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_header_libs: ["mysdk_mynativeheaders@current"],
}
`),
@@ -1963,6 +2017,7 @@ func TestHostSnapshotWithCcHeadersLibrary(t *testing.T) {
cc_prebuilt_library_headers {
name: "mysdk_mynativeheaders@current",
sdk_member_name: "mynativeheaders",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -1981,6 +2036,7 @@ cc_prebuilt_library_headers {
cc_prebuilt_library_headers {
name: "mynativeheaders",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stl: "none",
@@ -1998,6 +2054,7 @@ cc_prebuilt_library_headers {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
native_header_libs: ["mysdk_mynativeheaders@current"],
@@ -2048,6 +2105,7 @@ func TestDeviceAndHostSnapshotWithCcHeadersLibrary(t *testing.T) {
cc_prebuilt_library_headers {
name: "mysdk_mynativeheaders@current",
sdk_member_name: "mynativeheaders",
visibility: ["//visibility:public"],
host_supported: true,
stl: "none",
compile_multilib: "both",
@@ -2069,6 +2127,7 @@ cc_prebuilt_library_headers {
cc_prebuilt_library_headers {
name: "mynativeheaders",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
stl: "none",
compile_multilib: "both",
@@ -2089,6 +2148,7 @@ cc_prebuilt_library_headers {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
host_supported: true,
native_header_libs: ["mysdk_mynativeheaders@current"],
target: {
@@ -2139,6 +2199,7 @@ func TestSystemSharedLibPropagation(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_sslnil@current",
sdk_member_name: "sslnil",
visibility: ["//visibility:public"],
installable: false,
compile_multilib: "both",
arch: {
@@ -2154,6 +2215,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "sslnil",
prefer: false,
visibility: ["//visibility:public"],
compile_multilib: "both",
arch: {
arm64: {
@@ -2168,6 +2230,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mysdk_sslempty@current",
sdk_member_name: "sslempty",
visibility: ["//visibility:public"],
installable: false,
compile_multilib: "both",
system_shared_libs: [],
@@ -2184,6 +2247,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "sslempty",
prefer: false,
visibility: ["//visibility:public"],
compile_multilib: "both",
system_shared_libs: [],
arch: {
@@ -2199,6 +2263,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mysdk_sslnonempty@current",
sdk_member_name: "sslnonempty",
visibility: ["//visibility:public"],
installable: false,
compile_multilib: "both",
system_shared_libs: ["mysdk_sslnil@current"],
@@ -2215,6 +2280,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "sslnonempty",
prefer: false,
visibility: ["//visibility:public"],
compile_multilib: "both",
system_shared_libs: ["sslnil"],
arch: {
@@ -2229,6 +2295,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_shared_libs: [
"mysdk_sslnil@current",
"mysdk_sslempty@current",
@@ -2262,6 +2329,7 @@ sdk_snapshot {
cc_prebuilt_library_shared {
name: "mysdk_sslvariants@current",
sdk_member_name: "sslvariants",
visibility: ["//visibility:public"],
host_supported: true,
installable: false,
compile_multilib: "both",
@@ -2293,6 +2361,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "sslvariants",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
compile_multilib: "both",
target: {
@@ -2322,6 +2391,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
host_supported: true,
native_shared_libs: ["mysdk_sslvariants@current"],
target: {
@@ -2364,6 +2434,7 @@ func TestStubsLibrary(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_stubslib@current",
sdk_member_name: "stubslib",
visibility: ["//visibility:public"],
installable: false,
compile_multilib: "both",
stubs: {
@@ -2386,6 +2457,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "stubslib",
prefer: false,
visibility: ["//visibility:public"],
compile_multilib: "both",
stubs: {
versions: [
@@ -2406,6 +2478,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
native_shared_libs: ["mysdk_stubslib@current"],
}
`))
@@ -2442,6 +2515,7 @@ func TestDeviceAndHostSnapshotWithStubsLibrary(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_stubslib@current",
sdk_member_name: "stubslib",
visibility: ["//visibility:public"],
host_supported: true,
installable: false,
compile_multilib: "both",
@@ -2477,6 +2551,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "stubslib",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
compile_multilib: "both",
stubs: {
@@ -2510,6 +2585,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
host_supported: true,
native_shared_libs: ["mysdk_stubslib@current"],
target: {
@@ -2546,6 +2622,7 @@ func TestUniqueHostSoname(t *testing.T) {
cc_prebuilt_library_shared {
name: "mysdk_mylib@current",
sdk_member_name: "mylib",
visibility: ["//visibility:public"],
host_supported: true,
installable: false,
unique_host_soname: true,
@@ -2575,6 +2652,7 @@ cc_prebuilt_library_shared {
cc_prebuilt_library_shared {
name: "mylib",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
unique_host_soname: true,
compile_multilib: "both",
@@ -2602,6 +2680,7 @@ cc_prebuilt_library_shared {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
host_supported: true,
native_shared_libs: ["mysdk_mylib@current"],
target: {