Add default_shared_libs property
Building against a locally-built libc besides bionic requires setting system_shared_libs to avoid circular dependencies, but modules all over the tree assume that system_shared_libs only affects modules building against bionic. Add a new default_shared_libs property that applies to all modules, which will generally be set in arch-specific clauses to only affect the desired set of modules. Bug: 190084016 Test: m checkbuild Change-Id: Ia2349d84c70e503916f90a5d2702e135248f73df
This commit is contained in:
@@ -2189,7 +2189,7 @@ func TestSystemSharedLibPropagation(t *testing.T) {
|
||||
result := testSdkWithCc(t, `
|
||||
sdk {
|
||||
name: "mysdk",
|
||||
native_shared_libs: ["sslnil", "sslempty", "sslnonempty"],
|
||||
native_shared_libs: ["sslnil", "sslempty", "sslnonempty", "dslnil", "dslempty", "dslnonempty"],
|
||||
}
|
||||
|
||||
cc_library {
|
||||
@@ -2206,6 +2206,21 @@ func TestSystemSharedLibPropagation(t *testing.T) {
|
||||
name: "sslnonempty",
|
||||
system_shared_libs: ["sslnil"],
|
||||
}
|
||||
|
||||
cc_library {
|
||||
name: "dslnil",
|
||||
host_supported: true,
|
||||
}
|
||||
|
||||
cc_library {
|
||||
name: "dslempty",
|
||||
default_shared_libs: [],
|
||||
}
|
||||
|
||||
cc_library {
|
||||
name: "dslnonempty",
|
||||
default_shared_libs: ["sslnil"],
|
||||
}
|
||||
`)
|
||||
|
||||
CheckSnapshot(t, result, "mysdk", "",
|
||||
@@ -2261,13 +2276,62 @@ cc_prebuilt_library_shared {
|
||||
},
|
||||
},
|
||||
}
|
||||
`))
|
||||
|
||||
cc_prebuilt_library_shared {
|
||||
name: "dslnil",
|
||||
prefer: false,
|
||||
visibility: ["//visibility:public"],
|
||||
apex_available: ["//apex_available:platform"],
|
||||
compile_multilib: "both",
|
||||
arch: {
|
||||
arm64: {
|
||||
srcs: ["arm64/lib/dslnil.so"],
|
||||
},
|
||||
arm: {
|
||||
srcs: ["arm/lib/dslnil.so"],
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
cc_prebuilt_library_shared {
|
||||
name: "dslempty",
|
||||
prefer: false,
|
||||
visibility: ["//visibility:public"],
|
||||
apex_available: ["//apex_available:platform"],
|
||||
compile_multilib: "both",
|
||||
default_shared_libs: [],
|
||||
arch: {
|
||||
arm64: {
|
||||
srcs: ["arm64/lib/dslempty.so"],
|
||||
},
|
||||
arm: {
|
||||
srcs: ["arm/lib/dslempty.so"],
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
cc_prebuilt_library_shared {
|
||||
name: "dslnonempty",
|
||||
prefer: false,
|
||||
visibility: ["//visibility:public"],
|
||||
apex_available: ["//apex_available:platform"],
|
||||
compile_multilib: "both",
|
||||
default_shared_libs: ["sslnil"],
|
||||
arch: {
|
||||
arm64: {
|
||||
srcs: ["arm64/lib/dslnonempty.so"],
|
||||
},
|
||||
arm: {
|
||||
srcs: ["arm/lib/dslnonempty.so"],
|
||||
},
|
||||
},
|
||||
}`))
|
||||
|
||||
result = testSdkWithCc(t, `
|
||||
sdk {
|
||||
name: "mysdk",
|
||||
host_supported: true,
|
||||
native_shared_libs: ["sslvariants"],
|
||||
native_shared_libs: ["sslvariants", "dslvariants"],
|
||||
}
|
||||
|
||||
cc_library {
|
||||
@@ -2279,6 +2343,16 @@ cc_prebuilt_library_shared {
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
cc_library {
|
||||
name: "dslvariants",
|
||||
host_supported: true,
|
||||
target: {
|
||||
android: {
|
||||
default_shared_libs: [],
|
||||
},
|
||||
},
|
||||
}
|
||||
`)
|
||||
|
||||
CheckSnapshot(t, result, "mysdk", "",
|
||||
@@ -2315,6 +2389,37 @@ cc_prebuilt_library_shared {
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
cc_prebuilt_library_shared {
|
||||
name: "dslvariants",
|
||||
prefer: false,
|
||||
visibility: ["//visibility:public"],
|
||||
apex_available: ["//apex_available:platform"],
|
||||
host_supported: true,
|
||||
compile_multilib: "both",
|
||||
target: {
|
||||
host: {
|
||||
enabled: false,
|
||||
},
|
||||
android: {
|
||||
default_shared_libs: [],
|
||||
},
|
||||
android_arm64: {
|
||||
srcs: ["android/arm64/lib/dslvariants.so"],
|
||||
},
|
||||
android_arm: {
|
||||
srcs: ["android/arm/lib/dslvariants.so"],
|
||||
},
|
||||
linux_glibc_x86_64: {
|
||||
enabled: true,
|
||||
srcs: ["linux_glibc/x86_64/lib/dslvariants.so"],
|
||||
},
|
||||
linux_glibc_x86: {
|
||||
enabled: true,
|
||||
srcs: ["linux_glibc/x86/lib/dslvariants.so"],
|
||||
},
|
||||
},
|
||||
}
|
||||
`),
|
||||
checkVersionedAndroidBpContents(`
|
||||
// This is auto-generated. DO NOT EDIT.
|
||||
@@ -2351,11 +2456,46 @@ cc_prebuilt_library_shared {
|
||||
},
|
||||
}
|
||||
|
||||
cc_prebuilt_library_shared {
|
||||
name: "mysdk_dslvariants@current",
|
||||
sdk_member_name: "dslvariants",
|
||||
visibility: ["//visibility:public"],
|
||||
apex_available: ["//apex_available:platform"],
|
||||
host_supported: true,
|
||||
installable: false,
|
||||
compile_multilib: "both",
|
||||
target: {
|
||||
host: {
|
||||
enabled: false,
|
||||
},
|
||||
android: {
|
||||
default_shared_libs: [],
|
||||
},
|
||||
android_arm64: {
|
||||
srcs: ["android/arm64/lib/dslvariants.so"],
|
||||
},
|
||||
android_arm: {
|
||||
srcs: ["android/arm/lib/dslvariants.so"],
|
||||
},
|
||||
linux_glibc_x86_64: {
|
||||
enabled: true,
|
||||
srcs: ["linux_glibc/x86_64/lib/dslvariants.so"],
|
||||
},
|
||||
linux_glibc_x86: {
|
||||
enabled: true,
|
||||
srcs: ["linux_glibc/x86/lib/dslvariants.so"],
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
sdk_snapshot {
|
||||
name: "mysdk@current",
|
||||
visibility: ["//visibility:public"],
|
||||
host_supported: true,
|
||||
native_shared_libs: ["mysdk_sslvariants@current"],
|
||||
native_shared_libs: [
|
||||
"mysdk_sslvariants@current",
|
||||
"mysdk_dslvariants@current",
|
||||
],
|
||||
target: {
|
||||
host: {
|
||||
enabled: false,
|
||||
|
Reference in New Issue
Block a user