diff options
Diffstat (limited to 'sys-libs/glibc/glibc-2.34-r10.ebuild')
-rw-r--r-- | sys-libs/glibc/glibc-2.34-r10.ebuild | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/sys-libs/glibc/glibc-2.34-r10.ebuild b/sys-libs/glibc/glibc-2.34-r10.ebuild index 5c7b4c9a1936..e5b596095245 100644 --- a/sys-libs/glibc/glibc-2.34-r10.ebuild +++ b/sys-libs/glibc/glibc-2.34-r10.ebuild @@ -46,7 +46,7 @@ SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${L SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" -IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs static-pie suid systemd systemtap test vanilla" +IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs static-pie suid systemd systemtap test vanilla" # Minimum kernel version that glibc requires MIN_KERN_VER="3.2.0" @@ -525,9 +525,11 @@ setup_env() { # a good start into that direction. # Also, if you're crosscompiling, let's assume you know what you are doing. # Hopefully. + # Last, we need the settings of the *build* environment, not of the + # target environment... - local current_binutils_path=$(binutils-config -B) - local current_gcc_path=$(gcc-config -B) + local current_binutils_path=$(env ROOT="${SYSROOT}" binutils-config -B) + local current_gcc_path=$(env ROOT="${SYSROOT}" gcc-config -B) einfo "Overriding clang configuration, since it won't work here" export CC="${current_gcc_path}/gcc" @@ -760,6 +762,14 @@ sanity_prechecks() { # When we actually have to compile something... if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then + if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then + # bug #833620, bug #643302 + eerror "Found ${ESYSROOT}/usr/lib/include directory!" + eerror "This is known to break glibc's build." + eerror "Please backup its contents then remove the directory." + die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!" + fi + if [[ ${CTARGET} == *-linux* ]] ; then local run_kv build_kv want_kv @@ -863,13 +873,13 @@ src_prepare() { einfo "Done." fi - if use clone3 ; then - append-cppflags -DGENTOO_USE_CLONE3 - else - # See e.g. bug #827386, bug #819045. - elog "Disabling the clone3 syscall for compatibility with older Electron apps." - elog "Please re-enable this flag before filing bugs!" - fi + # Contained within our next patchset version but build-time only fix + # (pretty much, anyway) so just apply manually here for now until + # next patchset version rolled. + eapply "${FILESDIR}"/2.34/${P}-hppa-asm-getcontext-fixes.patch + + # TODO: We can drop this once patch is gone from our patchset + append-cppflags -DGENTOO_USE_CLONE3 default |