From: Sergei Trofimovich Date: Sat, 16 May 2020 11:27:17 +0000 (+0100) Subject: sys-libs/glibc: revert "use -mno-sdata, not -fcommon, bug #723268" X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=c6c63ec156e40e8b28724f2b49a8b0cf2ebf3033;p=gentoo.git sys-libs/glibc: revert "use -mno-sdata, not -fcommon, bug #723268" The underying linker failure cause is not just an overflow but a functional difference in '_dl_sysinfo_break' symbol linkage. '_dl_sysinfo_break' is defined as a function in assembly but declared as a global 'common' variable. Making it non-common actually breaks sysinfo handler which is expected to be called without function descriptor indirection. As sysonfo handler is called before rtld processed it's own relocations. Let's revert back to -fcommon until we have better glibc fix. This reverts commit 8ec720b67f38952a4b9c6054c6d8ef0fc79d0343. Bug: https://bugs.gentoo.org/723268 Signed-off-by: Sergei Trofimovich --- diff --git a/sys-libs/glibc/glibc-2.30-r8.ebuild b/sys-libs/glibc/glibc-2.30-r8.ebuild index b6a794f3004e..0421d5e61db1 100644 --- a/sys-libs/glibc/glibc-2.30-r8.ebuild +++ b/sys-libs/glibc/glibc-2.30-r8.ebuild @@ -309,8 +309,7 @@ setup_target_flags() { # Workaround GPREL22 overflow by slightly pessimizing global # references to go via 64-bit relocations instead of 22-bit ones. # This allows building glibc on ia64 without an overflow: #723268 - append-flags -mno-sdata - : + append-flags -fcommon ;; mips) # The mips abi cannot support the GNU style hashes. #233233 diff --git a/sys-libs/glibc/glibc-2.31-r3.ebuild b/sys-libs/glibc/glibc-2.31-r3.ebuild index d297db2b26d5..5580625ba6d0 100644 --- a/sys-libs/glibc/glibc-2.31-r3.ebuild +++ b/sys-libs/glibc/glibc-2.31-r3.ebuild @@ -303,8 +303,7 @@ setup_target_flags() { # Workaround GPREL22 overflow by slightly pessimizing global # references to go via 64-bit relocations instead of 22-bit ones. # This allows building glibc on ia64 without an overflow: #723268 - append-flags -mno-sdata - : + append-flags -fcommon ;; mips) # The mips abi cannot support the GNU style hashes. #233233 diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index ccedec70c678..2355e5bce34e 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -302,8 +302,7 @@ setup_target_flags() { # Workaround GPREL22 overflow by slightly pessimizing global # references to go via 64-bit relocations instead of 22-bit ones. # This allows building glibc on ia64 without an overflow: #723268 - append-flags -mno-sdata - : + append-flags -fcommon ;; mips) # The mips abi cannot support the GNU style hashes. #233233