Fix addrsig warnings
ld -r reorders symbols and invalidates the .llvm_addrsig section, which then causes warnings if the resulting object is used with ld --icf=safe. The warning is especially common when building with musl, as the clang_rt.crt* objects have .llvm_addrsig sections, are linked into libc_musl_crt* using ld -r, and are then linked into every other binary and shared library with --icf=safe. Strip the .llvm_addrsig section after ld -r to prevent the warnings. Test: m USE_HOST_MUSL=true host-native -k Change-Id: Ia52a4756b9ebbb62115898d0de9f8641e6fea705
This commit is contained in:
@@ -443,9 +443,9 @@ func TestUpdatableApps_JniLibShouldBeBuiltAgainstMinSdkVersion(t *testing.T) {
|
||||
inputs := ctx.ModuleForTests("libjni", "android_arm64_armv8-a_sdk_shared").Description("link").Implicits
|
||||
var crtbeginFound, crtendFound bool
|
||||
expectedCrtBegin := ctx.ModuleForTests("crtbegin_so",
|
||||
"android_arm64_armv8-a_sdk_29").Rule("partialLd").Output
|
||||
"android_arm64_armv8-a_sdk_29").Rule("noAddrSig").Output
|
||||
expectedCrtEnd := ctx.ModuleForTests("crtend_so",
|
||||
"android_arm64_armv8-a_sdk_29").Rule("partialLd").Output
|
||||
"android_arm64_armv8-a_sdk_29").Rule("noAddrSig").Output
|
||||
implicits := []string{}
|
||||
for _, input := range inputs {
|
||||
implicits = append(implicits, input.String())
|
||||
|
Reference in New Issue
Block a user