diff options
Diffstat (limited to 'eclass/toolchain-glibc.eclass')
-rw-r--r-- | eclass/toolchain-glibc.eclass | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/eclass/toolchain-glibc.eclass b/eclass/toolchain-glibc.eclass index 6580be2fb1e0..d9c692f2ad8f 100644 --- a/eclass/toolchain-glibc.eclass +++ b/eclass/toolchain-glibc.eclass @@ -815,6 +815,17 @@ glibc_do_configure() { esac fi + # Keep a whitelist of targets supporing IFUNC. glibc's ./configure + # is not robust enough to detect proper support: + # https://bugs.gentoo.org/641216 + # https://sourceware.org/PR22634#c0 + case $(tc-arch ${CTARGET}) in + # Keep whitelist of targets where autodetection mostly works. + amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;; + # Blacklist everywhere else + *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; + esac + if version_is_at_least 2.25 ; then myconf+=( --enable-stackguard-randomization ) else |