summaryrefslogtreecommitdiff
path: root/sys-libs/glibc
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs/glibc')
-rw-r--r--sys-libs/glibc/Manifest4
-rw-r--r--sys-libs/glibc/glibc-2.41-r1.ebuild (renamed from sys-libs/glibc/glibc-2.40-r5.ebuild)106
2 files changed, 59 insertions, 51 deletions
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 5f56d86bcd36..5318634b2001 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -32,10 +32,10 @@ DIST glibc-2.38-patches-13.tar.xz 92708 BLAKE2B b2f05a793c92ea0b7901d2124fcd968f
DIST glibc-2.38.tar.xz 18913712 BLAKE2B f9b039f0ef98a7dd8e1cba228ed10286b9e4fbe4dd89af4d26fa5c4e4cf266f19c2746b44d797ce54739d86499e74cf334aaf311bcf6e30120fd7748453e653f SHA512 a6dd5e42dcd63d58e2820c783522c8c895890b6e8c8e6c83b025553de0cc77cdf227e7044e431ead98c89c68a9ce4dd63509b47e647775fb2075f011849c1900
DIST glibc-2.39-patches-11.tar.xz 192784 BLAKE2B fef42e0bd2a3341f41cac56dc878dcc95b7f521ffb27686a9109fe92e0458e903a24e763db17631b8ae6c1e8de7add2a11979b970689b2378aeb6ef29da7ceb6 SHA512 9daf2c57d178c7ce9d98ee454f680280738b37571bbbecc1724282e4866df29b78e60de40ad81a6efcc0a75b45d08148cb1a5f942ae7e308ae6fa63f9671b7de
DIST glibc-2.39.tar.xz 18520988 BLAKE2B 9d98459a2d58401e07c081e0d841935b23998da75a7eb5a7ebd23a1f9ebab99dee623fe166397c1b6c926960c570f62dbca5cb3b5ce84a918adff6b7a15e16bb SHA512 818f58172a52815b4338ea9f2a69ecaa3335492b9f8f64cbf8afb24c0d737982341968ecd79631cae3d3074ab0ae4bc6056fc4ba3ffe790849dc374835cd57e2
-DIST glibc-2.40-patches-5.tar.xz 87376 BLAKE2B b09b9d2c8e45c0b494223cd01effb14ef205b030f2aeb76e1d7d289997258c1e46d85f8f4ad761e22afc35b1f4747fbca51d7caf252181c7b054b6a3e6bd2bfe SHA512 bf4776c27e5d962d2774afbed2236996a712a6127e5fdccd051af212d86a7e699a932cf4cb22f5516d513b9490b91d5e145727035e845cd4ef290985ac3dc524
DIST glibc-2.40-patches-8.tar.xz 112020 BLAKE2B 17f5a3e5486aa570cb4d9103a84b649af9731bc398a4ff65d3d24c8912215dc7f5f2d6fa9a0222c514374a132b96796e8926a5cc31c87b326bf6d1a39772bd7a SHA512 97a28822f97d1c06773953750a8d9a38a6bd9ce488f4c4d5f0752b573591cbdc84dfbbb277e3fb8e5664c56596efc093fd83a78e4c47bb9c11cafe942b13a0f1
DIST glibc-2.40.tar.xz 18752204 BLAKE2B 8593cab5b2549b77159b6866fbb40b917e491fd5bc0814f7f85b6529166d78d4583436450c479b86cdfe468304fc4d2a9ba8294230a55dbc4c15e89c3ab6c000 SHA512 33caf91dbfddde6480b7cdf7a68b36aff8c522bfee56160af26af297f1b768668edb08bc4e1a7ff61c64721e3c1d49c347a5dd01c5edd3b914ee6479c8b27885
DIST glibc-2.41-patches-1.tar.xz 17560 BLAKE2B dc4e39cb5605867b44c2308a8d6d6c0a662656b80a0aa2734f488e2cc22e26c948177eeb80ff6c79d82925b4dbd146a4d78646879c6e32fd60f817fb0d9ae092 SHA512 94da2092e49ee827d7558bcbfa8ebcbb9f81ed68848221d139039ea788cef57375ccfa61498bc73c6e83050681990d3968791a5f90514de12e45c10baef31d1e
+DIST glibc-2.41-patches-2.tar.xz 54320 BLAKE2B cd0779c452159c90adf165da18e61699dc5e53dcfecb44f8e7ddc5bcbb00050705a423a298a57054ddce5daaee728ac03d1e25c71ad5070edf5907ac6eac0783 SHA512 4c74a657faa1cffedc083d061258508f483d25e5f3989d98e61608e245a6e75e5c389fefd0c31e5ccde6926c5173364852957b8d8b83a474842c635d1f7fc1c3
DIST glibc-2.41.tar.xz 19344868 BLAKE2B 4da62f489ba7a95bb069c2cfea8cf78e4d37e3a5f7e1736239670ba1dca12b69aa77bd00ced078c27d91b1e622c58cbd70258161a9d18c5b3bcc95863b8d744d SHA512 894a3e5a796bc13df30c26a5bfbe4d60b5dbdaac54e7763432235124b547070c7dda88c50584536870cab79183d8cad73a3ac6ed09bfe54fa8482aad07253169
DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238
DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc
@@ -53,8 +53,8 @@ EBUILD glibc-2.36-r8.ebuild 52793 BLAKE2B 712e50a5a268f3af327c02de7ba6073abbf53a
EBUILD glibc-2.37-r10.ebuild 53322 BLAKE2B 301a9c47f4149e927764cc132e6ec2a20b90a3a81307a59864ed12cb374c2faef71e6e3eb043e88e2b338050163bf75637cd1ee133bf1110729c192c1e9a81f4 SHA512 1928d1ccf4e15a3836c12629ad74f5e87054a21a362c432761066dd098d1995c6db55a0ca95e552a74a0772314be40c2570453545f308fddb2a6589e4648b7b0
EBUILD glibc-2.38-r13.ebuild 55028 BLAKE2B fcee988603b8bcec9cf184c54e040c9190a98170170665c56998e9a14bec55b34e25fc1002b2aaa8bae29392968a8f543f2f68f1e564c52d9e7a0fcf5c829317 SHA512 9bd2e1fe3709f4b792575d37c6b343e2db3b4bb60090281521ac3b9c4e5b9bed2367453933a2df8c1fa9cc988a71e97d797c009f7bb9fabde6c2821ab61102dd
EBUILD glibc-2.39-r11.ebuild 54663 BLAKE2B ef95a8014c990f42738c5b66b73416a55fab1b433af10d879a60d4d798ed3b9fca747242fb09d110f6a258e37bdbb384a85cc59dd8dc80f375c6faaa30ab4932 SHA512 3e8c216ac02f129a37de9d475980d911fb1ff77d09949f87ff6c5ffa666afdc6a35004d32d60d8a78b1abc17a823083442a68cbea6df35d4409897648ce8783f
-EBUILD glibc-2.40-r5.ebuild 54662 BLAKE2B 62dd423d70cd8598bc4e69dc49e9b5442d283af497b80c58a99fcc6d4977936b0171c0c76325978fd43ddccd7e3c6496984c90a171bfd7b27ce5296bd204f7e9 SHA512 4daab8f45afa47660e9edce14ce5733702a5c229e1dea24e702858425d30201686eb62b0fd2d6a9c99343e4c6e138352f18eacde24d99aada8ce610f001c5b33
EBUILD glibc-2.40-r8.ebuild 55134 BLAKE2B 8419b238397f3498a2e84e38ef08d73cf3b0679c515aae142c7ef98cfafdc93c4587b10daef38e97d78662ce5a6742519a1d49f819803885a485632a88c68196 SHA512 08b753a6834ddcc57b8bd21152f0b0d519c81d55d4d995f17bb0cfe9118cd5b01dd928b0222dbf41433fdf4bd48e0b2d29237f978c561dbc94f0573b683295fe
+EBUILD glibc-2.41-r1.ebuild 55179 BLAKE2B 164232ff8b01193130f42ba14790d1c5cd30e009bd03ed47945979475c8e1bf03525567d2a4411a89826f74f7f829eebf328ca6547a207caf46b34e0285108eb SHA512 0156c15587aa89df57f9f93c9c838eeefbcc92476e42b8ecdcc7e7b8cef32b7a953c2915b3ad498a648c39b68a208cb0ee45aae6b2d6af19a87eba9ea17dba6a
EBUILD glibc-2.41.ebuild 55179 BLAKE2B b06d772cbf1091b3d4e582ba067d2e20f885e08d22ea32f7f13c8007fca36d737b1d5460a6b39dc571fdc9837bb54cf7831cdb5b123a339c43d5ab9392f11d34 SHA512 04f633bae380a1dc7043c2c65c2963e471a6d9f945bdfaf668711dd0d85685e3cc8366f4d8a483d4f272c259986684409a30e25f1c4e1f3bac6db93c150a1a6a
EBUILD glibc-9999.ebuild 55180 BLAKE2B 79141f2a111f93631b23cceb0a2e5498b0a75bc738ec0c5b36337c530fb2ebe1a24efcc85e57fc6f4621bb0f2c218cf5b55521f4920a0400ef4d3606a92e1fe3 SHA512 33fe4427850ea2e8af3e2657c4c0848ebeba14c4987728f1c0f8444075d53681f607da2047be1b5e05566ec8136a2d3d499116eff040ae61a319743e969e888e
MISC metadata.xml 2142 BLAKE2B 765ba540eb10afccd1bade4de56f0c13ce269225500a62d1d17328194de69e7fa15d359a14eac6bfa8a36df45344db3d52f5e1811b174cf1fa2bfb95ad7760a7 SHA512 2f4a148c076a0967663d14e76b85a698ddae7093ff299b0dc95a6c3b00957c9bf73443f2bace9670eb62a45465efbcca892bb52b6aac8577acb2bc5f74a7397c
diff --git a/sys-libs/glibc/glibc-2.40-r5.ebuild b/sys-libs/glibc/glibc-2.41-r1.ebuild
index 3cfc6b632960..c1c453c31a8e 100644
--- a/sys-libs/glibc/glibc-2.40-r5.ebuild
+++ b/sys-libs/glibc/glibc-2.41-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -12,7 +12,7 @@ TMPFILES_OPTIONAL=1
EMULTILIB_PKG="true"
# Gentoo patchset (ignored for live ebuilds)
-PATCH_VER=5
+PATCH_VER=2
PATCH_DEV=dilfridge
# gcc mulitilib bootstrap files version
@@ -33,7 +33,7 @@ MIN_PAX_UTILS_VER="1.3.3"
MIN_SYSTEMD_VER="254.9-r1"
inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \
- multilib systemd multiprocessing tmpfiles
+ multilib systemd multiprocessing tmpfiles eapi9-ver
DESCRIPTION="GNU libc C library"
HOMEPAGE="https://www.gnu.org/software/libc/"
@@ -41,7 +41,7 @@ HOMEPAGE="https://www.gnu.org/software/libc/"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
- KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
fi
@@ -118,6 +118,7 @@ BDEPEND="
test? (
dev-lang/perl
>=net-dns/libidn2-2.3.0
+ sys-apps/gawk[mpfr]
)
"
COMMON_DEPEND="
@@ -178,6 +179,7 @@ XFAIL_TEST_LIST=(
# Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY
tst-sched1
+ tst-sched_setattr
# Fails regularly, unreliable
tst-valgrind-smoke
@@ -191,6 +193,7 @@ XFAIL_NSPAWN_TEST_LIST=(
# upstream, as systemd-nspawn's default seccomp whitelist is too strict.
# https://sourceware.org/PR30603
test-errno-linux
+ tst-aarch64-pkey
tst-bz21269
tst-mlock2
tst-ntp_gettime
@@ -248,29 +251,9 @@ build_eprefix() {
is_crosscompile && echo "${EPREFIX}"
}
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+ echo $(alt_prefix)/usr/include
}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' \
- | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 \
- | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
alt_libdir() {
echo $(alt_prefix)/$(get_libdir)
}
@@ -309,9 +292,13 @@ do_run_test() {
# ignore build failures when installing a binary package #324685
do_compile_test "" "$@" 2>/dev/null || return 0
else
+ ebegin "Performing simple compile test for ABI=${ABI}"
if ! do_compile_test "" "$@" ; then
ewarn "Simple build failed ... assuming this is desired #324685"
+ eend 1
return 0
+ else
+ eend 0
fi
fi
@@ -505,10 +492,6 @@ setup_flags() {
# https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
replace-flags -O0 -O1
- # glibc handles this internally already where it's appropriate;
- # can't always have SSP when we're the ones setting it up, etc
- filter-flags '-fstack-protector*'
-
# Similar issues as with SSP. Can't inject yourself that early.
filter-flags '-fsanitize=*'
@@ -629,13 +612,13 @@ setup_env() {
# Last, we need the settings of the *build* environment, not of the
# target environment...
- local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B)
+ local current_binutils_path=$(env CHOST="${CBUILD}" ROOT="${BROOT}" binutils-config -B "${CTARGET}")
local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B)
einfo "Overriding clang configuration, since it won't work here"
- export CC="${current_gcc_path}/gcc"
- export CPP="${current_gcc_path}/cpp"
- export CXX="${current_gcc_path}/g++"
+ export CC="${current_gcc_path}/${CTARGET}-gcc"
+ export CPP="${current_gcc_path}/${CTARGET}-cpp"
+ export CXX="${current_gcc_path}/${CTARGET}-g++"
export LD="${current_binutils_path}/ld.bfd"
export AR="${current_binutils_path}/ar"
export AS="${current_binutils_path}/as"
@@ -792,7 +775,7 @@ eend_KV() {
get_kheader_version() {
printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+ $(tc-getCPP ${CTARGET}) -I "${ESYSROOT}$(alt_headers)" - | \
tail -n 1
}
@@ -912,16 +895,12 @@ upgrade_warning() {
is_crosscompile && return
if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then
- local oldv newv=$(ver_cut 1-2 ${PV})
- for oldv in ${REPLACING_VERSIONS}; do
- if ver_test ${oldv} -lt ${newv}; then
- ewarn "After upgrading glibc, please restart all running processes."
- ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)."
- ewarn "Alternatively, reboot your system."
- ewarn "(See bug #660556, bug #741116, bug #823756, etc)"
- break
- fi
- done
+ if ver_replacing -lt $(ver_cut 1-2 ${PV}); then
+ ewarn "After upgrading glibc, please restart all running processes."
+ ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)."
+ ewarn "Alternatively, reboot your system."
+ ewarn "(See bug #660556, bug #741116, bug #823756, etc)"
+ fi
fi
}
@@ -953,12 +932,18 @@ src_unpack() {
use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git"
+ EGIT_REPO_URI="
+ https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git
+ https://github.com/gentoo/glibc-patches.git
+ "
EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
git-r3_src_unpack
mv patches-git/9999 patches || die
-
- EGIT_REPO_URI="https://sourceware.org/git/glibc.git"
+ EGIT_REPO_URI="
+ https://sourceware.org/git/glibc.git
+ https://git.sr.ht/~sourceware/glibc
+ https://gitlab.com/x86-glibc/glibc.git
+ "
EGIT_CHECKOUT_DIR=${S}
git-r3_src_unpack
else
@@ -1065,7 +1050,7 @@ glibc_do_configure() {
--host=${CTARGET_OPT:-${CTARGET}}
$(use_enable profile)
$(use_with gd)
- --with-headers=$(build_eprefix)$(alt_build_headers)
+ --with-headers="${ESYSROOT}$(alt_headers)"
--prefix="$(host_eprefix)/usr"
--sysconfdir="$(host_eprefix)/etc"
--localstatedir="$(host_eprefix)/var"
@@ -1228,7 +1213,7 @@ glibc_headers_configure() {
--enable-bind-now
--build=${CBUILD_OPT:-${CBUILD}}
--host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
+ --with-headers="${ESYSROOT}$(alt_headers)"
--prefix="$(host_eprefix)/usr"
${EXTRA_ECONF}
)
@@ -1720,6 +1705,29 @@ pkg_postinst() {
use loong && glibc_refresh_ldconfig
use compile-locales || run_locale_gen "${EROOT}/"
+
+ # If fixincludes was/is active for a particular GCC slot, we
+ # must refresh it. See bug #933282 and GCC's documentation:
+ # https://gcc.gnu.org/onlinedocs/gcc/Fixed-Headers.html
+ #
+ # TODO: Could this be done for cross? Some care would be needed
+ # to pass the right arguments.
+ while IFS= read -r -d $'\0' slot ; do
+ local mkheaders_path="${BROOT}"/usr/libexec/gcc/${CBUILD}/${slot##*/}/install-tools/mkheaders
+ local pthread_h="${BROOT}"/usr/lib/gcc/${CBUILD}/${slot##*/}/include-fixed/pthread.h
+ if [[ -x ${mkheaders_path} ]] ; then
+ ebegin "Refreshing fixincludes for ${CBUILD} with gcc-${slot##*/}"
+ ${mkheaders_path} -v
+ eend $?
+ elif [[ -f ${pthread_h} ]] ; then
+ # fixincludes might have been enabled in the past for this
+ # GCC slot but not since we fixed toolchain.eclass to install
+ # mkheaders, so we need to manually delete pthread.h at least.
+ ebegin "Deleting stale fixincludes'd pthread.h for ${CBUILD} with gcc-${slot##*/}"
+ mv -v "${pthread_h}" "${pthread_h}.bak"
+ eend $?
+ fi
+ done < <(find "${BROOT}"/usr/libexec/gcc/${CBUILD}/ -mindepth 1 -maxdepth 1 -type d -print0)
fi
upgrade_warning