summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2018-06-26 10:47:53 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2018-06-26 10:48:15 +0100
commitd4dc260608afee733d52135f9c87325d43593b57 (patch)
treef1fd0da7185320239d2fb5d40aff082ffc30c34c /sys-libs/glibc
parentsys-libs/glibc: pass user's CFLAGS over CC/XX, not CPPFLAGS (diff)
downloadgentoo-d4dc260608afee733d52135f9c87325d43593b57.tar.gz
gentoo-d4dc260608afee733d52135f9c87325d43593b57.tar.bz2
gentoo-d4dc260608afee733d52135f9c87325d43593b57.zip
sys-libs/glibc: add USE=multiarch (enabled by default)
Normally multiarch should be enabled (where available). But sometimes disabling multiarch is useful: - to workaround or validate bugs specific to selected runtime arch or IFUNC handling. - to get code that matches -march= CFLAGS setting Bug: https://bugs.gentoo.org/659030 Package-Manager: Portage-2.3.40, Repoman-2.3.9
Diffstat (limited to 'sys-libs/glibc')
-rw-r--r--sys-libs/glibc/glibc-2.27-r5.ebuild4
-rw-r--r--sys-libs/glibc/glibc-9999.ebuild4
-rw-r--r--sys-libs/glibc/metadata.xml1
3 files changed, 7 insertions, 2 deletions
diff --git a/sys-libs/glibc/glibc-2.27-r5.ebuild b/sys-libs/glibc/glibc-2.27-r5.ebuild
index 0e9283a66caf..e123d28e80d5 100644
--- a/sys-libs/glibc/glibc-2.27-r5.ebuild
+++ b/sys-libs/glibc/glibc-2.27-r5.ebuild
@@ -32,7 +32,7 @@ PATCH_VER=2
SRC_URI+=" https://dev.gentoo.org/~dilfridge/distfiles/${P}-patches-${PATCH_VER}.tar.bz2"
SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-IUSE="audit caps compile-locales doc gd hardened headers-only multilib nscd profile selinux suid systemtap vanilla"
+IUSE="audit caps compile-locales doc gd hardened headers-only +multiarch multilib nscd profile selinux suid systemtap vanilla"
# Minimum kernel version that glibc requires
MIN_KERN_VER="3.2.0"
@@ -412,6 +412,8 @@ want__thread() {
}
use_multiarch() {
+ # Allow user to disable runtime arch detection in multilib.
+ use multiarch || return 1
# Make sure binutils is new enough to support indirect functions,
# #336792. This funky sed supports gold and bfd linkers.
local bver nver
diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 9417381e1648..8fe8178fbb4c 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -33,7 +33,7 @@ PATCH_VER=6
SRC_URI+=" https://dev.gentoo.org/~dilfridge/distfiles/${P}-patches-${PATCH_VER}.tar.bz2"
SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-IUSE="audit caps compile-locales doc gd hardened headers-only multilib nscd profile selinux suid systemtap test vanilla"
+IUSE="audit caps compile-locales doc gd hardened headers-only +multiarch multilib nscd profile selinux suid systemtap test vanilla"
# Minimum kernel version that glibc requires
MIN_KERN_VER="3.2.0"
@@ -415,6 +415,8 @@ want__thread() {
}
use_multiarch() {
+ # Allow user to disable runtime arch detection in multilib.
+ use multiarch || return 1
# Make sure binutils is new enough to support indirect functions,
# #336792. This funky sed supports gold and bfd linkers.
local bver nver
diff --git a/sys-libs/glibc/metadata.xml b/sys-libs/glibc/metadata.xml
index a9538704369e..89da155531ed 100644
--- a/sys-libs/glibc/metadata.xml
+++ b/sys-libs/glibc/metadata.xml
@@ -9,6 +9,7 @@
<flag name="compile-locales">build *all* locales in src_install; this is generally meant for stage building only as it ignores /etc/locale.gen file and can be pretty slow</flag>
<flag name="debug">When USE=hardened, allow fortify/stack violations to dump core (SIGABRT) and not kill self (SIGKILL)</flag>
<flag name="gd">build memusage and memusagestat tools</flag>
+ <flag name="multiarch">enable single DSO with optimizations for multiple architectures</flag>
<flag name="nscd">Build, and enable support for, the Name Service Cache Daemon</flag>
<flag name="rpc">Enable obsolete RPC/NIS layers</flag>
<flag name="suid">Make internal pt_chown helper setuid -- not needed if using Linux and have /dev/pts mounted with gid=5</flag>