commit: 85dc53eb8a6967b3b4af96b0d636046aea4404ab Author: Brett A C Sheffield <bacs <AT> librecast <DOT> net> AuthorDate: Wed Mar 11 15:42:33 2026 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Wed Mar 11 16:35:05 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85dc53eb
sys-apps/coreutils: drop 9.7, 9.8-r1, 9.9, 9.9-r11, 9.9-r12 Bug: https://bugs.gentoo.org/956995 Signed-off-by: Brett A C Sheffield <bacs <AT> librecast.net> Part-of: https://codeberg.org/gentoo/gentoo/pulls/296 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-apps/coreutils/Manifest | 4 - sys-apps/coreutils/coreutils-9.7.ebuild | 302 -------------------- sys-apps/coreutils/coreutils-9.8-r1.ebuild | 313 --------------------- sys-apps/coreutils/coreutils-9.9-r11.ebuild | 312 -------------------- sys-apps/coreutils/coreutils-9.9-r12.ebuild | 313 --------------------- sys-apps/coreutils/coreutils-9.9.ebuild | 311 -------------------- .../files/coreutils-9.8-basenc-base58.patch | 137 --------- .../coreutils/files/coreutils-9.8-no-pclmul.patch | 18 -- .../files/coreutils-9.8-tail-offset.patch | 35 --- .../files/coreutils-9.9-glibc-2.43-c23.patch | 170 ----------- 10 files changed, 1915 deletions(-) diff --git a/sys-apps/coreutils/Manifest b/sys-apps/coreutils/Manifest index d65ec1a083fc..8c0cdc6a6b6b 100644 --- a/sys-apps/coreutils/Manifest +++ b/sys-apps/coreutils/Manifest @@ -1,9 +1,5 @@ DIST coreutils-9.10.tar.xz 6507600 BLAKE2B 7f9f93afc996dea7b6ab412703b1706f40616ae4fee1eea9e5cad0f1e8e95b03df9570084a2703fa4b5bb1cb2eaf8bbe55368c0c7ff58af985b30d09227f9309 SHA512 976ccfb8b906273a687ec330938a25ab72fb130988ca2fcad4fb6e12f4b621eb76b6e9ee091ad060361e95a8da26835b2484fffd3b5f9c7cdb100c1eb7b7d676 DIST coreutils-9.10.tar.xz.sig 833 BLAKE2B 37d4a26a7b211feb773f1abb939a4ab742a6da6cecdbd723eca6f29362f90183fd02175e26c8409232166a395c8bd4bcb12a2709b062ac5ab82f36c6e219189b SHA512 83ec7f4a313ed425bf362bf3512042f9562df20daa03465090025a54e85f98c301b7be770340b08193bdf78b413a3bd87b218b71234443e756472205ce840c67 DIST coreutils-9.6-patches.tar.xz 5904 BLAKE2B 1abe214914007804362b9d7c1a7c39f07d74c51857e84484179f11bb8fa512356ee97c811ef62469aaa52db5cc90f2f7587c2dc57ed130ebbfdacc59755dcb90 SHA512 5a609b21da7c78e41184e5d7bca87da4f868975635b6e8aa4bd8f4d18c98a2fabd5b7e8ad6bf7780ca77f6d532bfa5cb1ed618e4bc32617ba2977d4b8a885b9f -DIST coreutils-9.7.tar.xz 6158960 BLAKE2B e5e5f7ec26c3952eb6a25988f78d3a1f8a70cf97a2fbc7b433dfcd1721cd38e6e0a8b9cb83f854a22df325bcb5ea8c4534c5a217273762cd5d575b381db69ee8 SHA512 fe81e6ba4fb492095153d5baac1eca8f07ece0957849de746a2a858cf007893cc2ded595a31a5e5d43d13216cc44b9d74a3245d9f23221ecc8cd00f428f27414 -DIST coreutils-9.7.tar.xz.sig 833 BLAKE2B 18dee5a1b5dc1811b277748fe6ee079dc6320bc6d67e01f108415c6afe21ad0367ece46f8c6dfb0976b1e5f62ae15c2d61fba916ea232c71a1b2f66c81b983bf SHA512 48d86a19cee3c153f01f7478847f4621685c02e59942540bb20b30e314df05230817b87d0e73acd953e79fab35718e5bea57f25fe511a2c275a85ced4b317bae -DIST coreutils-9.8.tar.xz 6234824 BLAKE2B a93e26c8dda875b11541808d82ff8d6537f521b9c44e2a9959ee8f452823a4df5aed2793ac32766e2d3f832606d7190f7f53ea5870419f585aa66429a9626d98 SHA512 7b6c420907f0e33e4aff3dd92270f8cbd3e94b2ae8cf7caa2d5d1cfd5e9958319904a6547127abd55ee63aae0316f5b1228586b2da34ea402da032e925a25e53 -DIST coreutils-9.8.tar.xz.sig 833 BLAKE2B 8d195ebeaf7b383d05b8ae977a4566b0b5c48df21470062f4e4d6763a383c28d9315b56d2ff86b6ce6c8678d71009629f66642411deb22db3e74fa18bd081433 SHA512 0fa9ab4404cd2157584797de22a1f28ec4e0353dae05a7476198dc77e23bf59aaeb1aabf9f7dc22f5d80df311e6ef1490add75ae1663b4091e58cc29db4dcfa3 DIST coreutils-9.9.tar.xz 6295160 BLAKE2B ddae0c1ff882739712e901d6eb1373e4172de9335b95b4c1004773aadc6b7e3cb3bf5aa583f13034062a75dc9194bf8534b0f7f1258c8ff64595b1301964e124 SHA512 e7b0e59f7732d2c098ea4934014f470248bd5c4764210e9200a698010a8e3b95bbb26e543f0cd73ed5a4b8e1f8cda932c73f39954d68175e4deaa47526610c65 DIST coreutils-9.9.tar.xz.sig 833 BLAKE2B 83f7c87520234169aa9e49428ca97d19e3356e19fe0b508b42a546667effcff2c19829516510ac45a1cd2b6db1a14abf1cfbef1e53f6845afd61fd82651d361f SHA512 0a3dfdfa6b4234e2e1d42142269f959bdf3cf8f6605a50270a27eff84dd22588f182121f7dd3eeb04be45f5109d02690215065b3d3b43882874d0e165a1435d0 diff --git a/sys-apps/coreutils/coreutils-9.7.ebuild b/sys-apps/coreutils/coreutils-9.7.ebuild deleted file mode 100644 index 907e629cd4d7..000000000000 --- a/sys-apps/coreutils/coreutils-9.7.ebuild +++ /dev/null @@ -1,302 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils -# The upstream coreutils maintainers also maintain the package in Fedora and may -# backport fixes which we want to pick up. -# -# Also recommend subscribing to the coreutils and bug-coreutils MLs. - -PYTHON_COMPAT=( python3_{11..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc -inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig - -MY_PATCH="${PN}-9.6-patches" -DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" -HOMEPAGE="https://www.gnu.org/software/coreutils/" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" - inherit git-r3 -elif [[ ${PV} == *_p* ]] ; then - # Note: could put this in devspace, but if it's gone, we don't want - # it in tree anyway. It's just for testing. - MY_SNAPSHOT="$(ver_cut 1-2).53-14af8" - SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" - S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} -else - SRC_URI=" - mirror://gnu/${PN}/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) - " - - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test vanilla xattr" -RESTRICT="!test? ( test )" - -LIB_DEPEND=" - acl? ( sys-apps/acl[static-libs] ) - caps? ( sys-libs/libcap ) - gmp? ( dev-libs/gmp:=[static-libs] ) - openssl? ( dev-libs/openssl:=[static-libs] ) - xattr? ( sys-apps/attr[static-libs] ) -" -RDEPEND=" - !static? ( ${LIB_DEPEND//\[static-libs]} ) - selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - static? ( ${LIB_DEPEND} ) -" -BDEPEND=" - app-arch/xz-utils - dev-lang/perl - test? ( - dev-debug/strace - dev-lang/perl - dev-perl/Expect - ${PYTHON_DEPS} - ) - verify-sig? ( sec-keys/openpgp-keys-coreutils ) -" -RDEPEND+=" - hostname? ( !sys-apps/net-tools[hostname] ) - kill? ( - !sys-apps/util-linux[kill] - !sys-process/procps[kill] - ) - !<sys-apps/util-linux-2.13 - !<sys-apps/sandbox-2.10-r4 - !sys-apps/stat - !net-mail/base64 - !sys-apps/mktemp - !<app-forensics/tct-1.18-r1 - !<net-fs/netatalk-2.0.3-r4 -" - -QA_CONFIG_IMPL_DECL_SKIP=( - # gnulib FPs (bug #898370) - unreachable MIN alignof static_assert -) - -pkg_setup() { - if use test ; then - python-any-r1_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - - sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die - elif use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} - fi - - default -} - -src_prepare() { - # TODO: past 2025, we may need to add our own hack for bug #907474. - local PATCHES=( - # Upstream patches - ) - - if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then - PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) - fi - - default - - # Since we've patched many .c files, the make process will try to - # re-build the manpages by running `./bin --help`. When doing a - # cross-compile, we can't do that since 'bin' isn't a native bin. - # - # Also, it's not like we changed the usage on any of these things, - # so let's just update the timestamps and skip the help2man step. - set -- man/*.x - touch ${@/%x/1} || die - - # Avoid perl dep for compiled in dircolors default (bug #348642) - if ! has_version dev-lang/perl ; then - touch src/dircolors.h || die - touch ${@/%x/1} || die - fi -} - -src_configure() { - # TODO: in future (>9.4?), we may want to wire up USE=systemd: - # still experimental at the moment, but: - # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 - local myconf=( - --with-packager="Gentoo" - --with-packager-version="${PVR} (p${PATCH_VER:-0})" - --with-packager-bug-reports="https://bugs.gentoo.org/" - # kill/uptime - procps - # groups/su - shadow - # hostname - net-tools - --enable-install-program="arch,$(usev hostname),$(usev kill)" - --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime" - $(usev !caps --disable-libcap) - $(use_enable nls) - $(use_enable acl) - $(use_enable multicall single-binary) - $(use_enable xattr) - $(use_with gmp libgmp) - $(use_with openssl) - ) - - if use gmp ; then - myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) - fi - - if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then - # bug #311569 - export fu_cv_sys_stat_statfs2_bsize=yes - # bug #416629 - export gl_cv_func_realpath_works=yes - fi - - # bug #409919 - export gl_cv_func_mknod_works=yes - - if use static ; then - append-ldflags -static - # bug #321821 - sed -i '/elf_sys=yes/s:yes:no:' configure || die - fi - - if ! use selinux ; then - # bug #301782 - export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no - fi - - econf "${myconf[@]}" -} - -src_test() { - # Non-root tests will fail if the full path isn't - # accessible to non-root users - chmod -R go-w "${WORKDIR}" || die - chmod a+rx "${WORKDIR}" || die - - # coreutils tests like to do `mount` and such with temp dirs, - # so make sure: - # - /etc/mtab is writable (bug #265725) - # - /dev/loop* can be mounted (bug #269758) - mkdir -p "${T}"/mount-wrappers || die - mkwrap() { - local w ww - for w in "${@}" ; do - ww="${T}/mount-wrappers/${w}" - cat <<-EOF > "${ww}" - #!${EPREFIX}/bin/sh - exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" - EOF - chmod a+rx "${ww}" || die - done - } - mkwrap mount umount - - addwrite /dev/full - - #local -x RUN_EXPENSIVE_TESTS="yes" - #local -x COREUTILS_GROUPS="portage wheel" - local -x PATH="${T}/mount-wrappers:${PATH}" - local -x gl_public_submodule_commit= - - local xfail_tests=() - - if [[ -n ${SANDBOX_ACTIVE} ]]; then - xfail_tests+=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) - fi - - # This test is flaky (bug #910640). - cat > tests/tty/tty-eof.pl <<-EOF || die - #!/usr/bin/perl - exit 77; - EOF - - # We set DISABLE_HARD_ERRORS because some of the tests hard error-out - # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed - # to downgrade them to FAIL. - emake -k check \ - VERBOSE=yes \ - DISABLE_HARD_ERRORS=yes \ - XFAIL_TESTS="${xfail_tests[*]}" -} - -src_install() { - default - - insinto /etc - newins src/dircolors.hin DIR_COLORS - - if use split-usr ; then - cd "${ED}"/usr/bin || die - dodir /bin - - # Move critical binaries into /bin (required by FHS) - local fhs="cat chgrp chmod chown cp date dd df echo false ln ls - mkdir mknod mv pwd rm rmdir stty sync true uname" - mv ${fhs} ../../bin/ || die "Could not move FHS bins!" - - if use hostname ; then - mv hostname ../../bin/ || die - fi - - if use kill ; then - mv kill ../../bin/ || die - fi - - # Move critical binaries into /bin (common scripts) - # (Why are these required for booting?) - local com="basename chroot cut dir dirname du env expr head mkfifo - mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" - mv ${com} ../../bin/ || die "Could not move common bins!" - - # Create a symlink for uname in /usr/bin/ since autotools require it. - # (Other than uname, we need to figure out why we are - # creating symlinks for these in /usr/bin instead of leaving - # the files there in the first place...) - local x - for x in ${com} uname ; do - dosym ../../bin/${x} /usr/bin/${x} - done - fi -} - -pkg_postinst() { - ewarn "Make sure you run 'hash -r' in your active shells." - ewarn "You should also re-source your shell settings for LS_COLORS" - ewarn " changes, such as: source /etc/profile" -} diff --git a/sys-apps/coreutils/coreutils-9.8-r1.ebuild b/sys-apps/coreutils/coreutils-9.8-r1.ebuild deleted file mode 100644 index 7b50ba8a47f4..000000000000 --- a/sys-apps/coreutils/coreutils-9.8-r1.ebuild +++ /dev/null @@ -1,313 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils -# The upstream coreutils maintainers also maintain the package in Fedora and may -# backport fixes which we want to pick up. -# -# Also recommend subscribing to the coreutils and bug-coreutils MLs. - -PYTHON_COMPAT=( python3_{11..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc -inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig - -MY_PATCH="${PN}-9.6-patches" -DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" -HOMEPAGE="https://www.gnu.org/software/coreutils/" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" - inherit git-r3 -elif [[ ${PV} == *_p* ]] ; then - # Note: could put this in devspace, but if it's gone, we don't want - # it in tree anyway. It's just for testing. - MY_SNAPSHOT="$(ver_cut 1-2).327-71a8c" - SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" - S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} -else - SRC_URI=" - mirror://gnu/${PN}/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) - " - - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test test-full vanilla xattr" -RESTRICT="!test? ( test )" - -LIB_DEPEND=" - acl? ( sys-apps/acl[static-libs] ) - caps? ( sys-libs/libcap ) - gmp? ( dev-libs/gmp:=[static-libs] ) - openssl? ( dev-libs/openssl:=[static-libs] ) - xattr? ( sys-apps/attr[static-libs] ) -" -RDEPEND=" - !static? ( ${LIB_DEPEND//\[static-libs]} ) - selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - static? ( ${LIB_DEPEND} ) -" -BDEPEND=" - app-arch/xz-utils - dev-lang/perl - test? ( - dev-debug/strace - dev-lang/perl - dev-perl/Expect - ${PYTHON_DEPS} - ) - verify-sig? ( sec-keys/openpgp-keys-coreutils ) -" -RDEPEND+=" - hostname? ( !sys-apps/net-tools[hostname] ) - kill? ( - !sys-apps/util-linux[kill] - !sys-process/procps[kill] - ) - !<sys-apps/util-linux-2.13 - !<sys-apps/sandbox-2.10-r4 - !sys-apps/stat - !net-mail/base64 - !sys-apps/mktemp - !<app-forensics/tct-1.18-r1 - !<net-fs/netatalk-2.0.3-r4 -" - -QA_CONFIG_IMPL_DECL_SKIP=( - # gnulib FPs (bug #898370) - unreachable MIN alignof static_assert -) - -pkg_setup() { - if use test ; then - python-any-r1_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - - sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die - elif use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} - fi - - default -} - -src_prepare() { - # TODO: past 2025, we may need to add our own hack for bug #907474. - local PATCHES=( - # Upstream patches - "${FILESDIR}"/${PN}-9.8-no-pclmul.patch - "${FILESDIR}"/${P}-tail-offset.patch - "${FILESDIR}"/${P}-basenc-base58.patch - ) - - if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then - PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) - fi - - default - - # Since we've patched many .c files, the make process will try to - # re-build the manpages by running `./bin --help`. When doing a - # cross-compile, we can't do that since 'bin' isn't a native bin. - # - # Also, it's not like we changed the usage on any of these things, - # so let's just update the timestamps and skip the help2man step. - set -- man/*.x - touch ${@/%x/1} || die - - # Avoid perl dep for compiled in dircolors default (bug #348642) - if ! has_version dev-lang/perl ; then - touch src/dircolors.h || die - touch ${@/%x/1} || die - fi -} - -src_configure() { - # Running Valgrind in an ebuild is too unreliable. Skip such tests. - cat <<-EOF >> init.cfg || die - require_valgrind_() - { - skip_ "requires a working valgrind" - } - EOF - - # TODO: in future (>9.4?), we may want to wire up USE=systemd: - # still experimental at the moment, but: - # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 - local myconf=( - --with-packager="Gentoo" - --with-packager-version="${PVR} (p${PATCH_VER:-0})" - --with-packager-bug-reports="https://bugs.gentoo.org/" - # kill/uptime - procps - # groups/su - shadow - # hostname - net-tools - --enable-install-program="arch,$(usev hostname),$(usev kill)" - --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime" - $(usev !caps --disable-libcap) - $(use_enable nls) - $(use_enable acl) - $(use_enable multicall single-binary) - $(use_enable xattr) - $(use_with gmp libgmp) - $(use_with openssl) - ) - - if use gmp ; then - myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) - fi - - if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then - # bug #311569 - export fu_cv_sys_stat_statfs2_bsize=yes - # bug #416629 - export gl_cv_func_realpath_works=yes - fi - - # bug #409919 - export gl_cv_func_mknod_works=yes - - if use static ; then - append-ldflags -static - # bug #321821 - sed -i '/elf_sys=yes/s:yes:no:' configure || die - fi - - if ! use selinux ; then - # bug #301782 - export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no - fi - - econf "${myconf[@]}" -} - -src_test() { - # Non-root tests will fail if the full path isn't - # accessible to non-root users - chmod -R go-w "${WORKDIR}" || die - chmod a+rx "${WORKDIR}" || die - - # coreutils tests like to do `mount` and such with temp dirs, - # so make sure: - # - /etc/mtab is writable (bug #265725) - # - /dev/loop* can be mounted (bug #269758) - mkdir -p "${T}"/mount-wrappers || die - mkwrap() { - local w ww - for w in "${@}" ; do - ww="${T}/mount-wrappers/${w}" - cat <<-EOF > "${ww}" - #!${EPREFIX}/bin/sh - exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" - EOF - chmod a+rx "${ww}" || die - done - } - mkwrap mount umount - - addwrite /dev/full - - local -x RUN_{VERY_,}EXPENSIVE_TESTS=$(usex test-full yes no) - #local -x COREUTILS_GROUPS="portage wheel" - local -x PATH="${T}/mount-wrappers:${PATH}" - local -x gl_public_submodule_commit= - - local xfail_tests=() - - if [[ -n ${SANDBOX_ACTIVE} ]]; then - xfail_tests+=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) - fi - - # This test is flaky (bug #910640). - cat > tests/tty/tty-eof.pl <<-EOF || die - #!/usr/bin/perl - exit 77; - EOF - - # We set DISABLE_HARD_ERRORS because some of the tests hard error-out - # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed - # to downgrade them to FAIL. - emake -k check \ - VERBOSE=yes \ - DISABLE_HARD_ERRORS=yes \ - XFAIL_TESTS="${xfail_tests[*]}" -} - -src_install() { - default - - insinto /etc - newins src/dircolors.hin DIR_COLORS - - if use split-usr ; then - cd "${ED}"/usr/bin || die - dodir /bin - - # Move critical binaries into /bin (required by FHS) - local fhs="cat chgrp chmod chown cp date dd df echo false ln ls - mkdir mknod mv pwd rm rmdir stty sync true uname" - mv ${fhs} ../../bin/ || die "Could not move FHS bins!" - - if use hostname ; then - mv hostname ../../bin/ || die - fi - - if use kill ; then - mv kill ../../bin/ || die - fi - - # Move critical binaries into /bin (common scripts) - # (Why are these required for booting?) - local com="basename chroot cut dir dirname du env expr head mkfifo - mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" - mv ${com} ../../bin/ || die "Could not move common bins!" - - # Create a symlink for uname in /usr/bin/ since autotools require it. - # (Other than uname, we need to figure out why we are - # creating symlinks for these in /usr/bin instead of leaving - # the files there in the first place...) - local x - for x in ${com} uname ; do - dosym ../../bin/${x} /usr/bin/${x} - done - fi -} - -pkg_postinst() { - ewarn "Make sure you run 'hash -r' in your active shells." - ewarn "You should also re-source your shell settings for LS_COLORS" - ewarn " changes, such as: source /etc/profile" -} diff --git a/sys-apps/coreutils/coreutils-9.9-r11.ebuild b/sys-apps/coreutils/coreutils-9.9-r11.ebuild deleted file mode 100644 index 010153b2aec5..000000000000 --- a/sys-apps/coreutils/coreutils-9.9-r11.ebuild +++ /dev/null @@ -1,312 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils -# The upstream coreutils maintainers also maintain the package in Fedora and may -# backport fixes which we want to pick up. -# -# Also recommend subscribing to the coreutils and bug-coreutils MLs. - -PYTHON_COMPAT=( python3_{11..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc -inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig - -MY_PATCH="${PN}-9.6-patches" -DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" -HOMEPAGE="https://www.gnu.org/software/coreutils/" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" - inherit git-r3 -elif [[ ${PV} == *_p* ]] ; then - # Note: could put this in devspace, but if it's gone, we don't want - # it in tree anyway. It's just for testing. - MY_SNAPSHOT="$(ver_cut 1-2).327-71a8c" - SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" - S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} -else - SRC_URI=" - mirror://gnu/${PN}/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) - " - - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test test-full vanilla xattr" -RESTRICT="!test? ( test )" - -LIB_DEPEND=" - acl? ( sys-apps/acl[static-libs] ) - caps? ( sys-libs/libcap ) - gmp? ( dev-libs/gmp:=[static-libs] ) - openssl? ( dev-libs/openssl:=[static-libs] ) - xattr? ( sys-apps/attr[static-libs] ) -" -RDEPEND=" - !static? ( ${LIB_DEPEND//\[static-libs]} ) - selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - static? ( ${LIB_DEPEND} ) -" -BDEPEND=" - app-arch/xz-utils - dev-lang/perl - test? ( - dev-debug/strace - dev-lang/perl - dev-perl/Expect - ${PYTHON_DEPS} - ) - verify-sig? ( sec-keys/openpgp-keys-coreutils ) -" -RDEPEND+=" - hostname? ( !sys-apps/net-tools[hostname] ) - kill? ( - !sys-apps/util-linux[kill] - !sys-process/procps[kill] - ) - !<sys-apps/util-linux-2.13 - !<sys-apps/sandbox-2.10-r4 - !sys-apps/stat - !net-mail/base64 - !sys-apps/mktemp - !<app-forensics/tct-1.18-r1 - !<net-fs/netatalk-2.0.3-r4 - !<sys-apps/shadow-4.19.0_rc1 -" - -QA_CONFIG_IMPL_DECL_SKIP=( - # gnulib FPs (bug #898370) - unreachable MIN alignof static_assert -) - -pkg_setup() { - if use test ; then - python-any-r1_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - - sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die - elif use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} - fi - - default -} - -src_prepare() { - # TODO: past 2025, we may need to add our own hack for bug #907474. - local PATCHES=( - "${FILESDIR}"/${PN}-9.5-skip-readutmp-test.patch - # Upstream patches - "${FILESDIR}"/${PN}-9.9-cp-SEEK_HOLE-loop.patch - ) - - if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then - PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) - fi - - default - - # Since we've patched many .c files, the make process will try to - # re-build the manpages by running `./bin --help`. When doing a - # cross-compile, we can't do that since 'bin' isn't a native bin. - # - # Also, it's not like we changed the usage on any of these things, - # so let's just update the timestamps and skip the help2man step. - set -- man/*.x - touch ${@/%x/1} || die - - # Avoid perl dep for compiled in dircolors default (bug #348642) - if ! has_version dev-lang/perl ; then - touch src/dircolors.h || die - touch ${@/%x/1} || die - fi -} - -src_configure() { - # Running Valgrind in an ebuild is too unreliable. Skip such tests. - cat <<-EOF >> init.cfg || die - require_valgrind_() - { - skip_ "requires a working valgrind" - } - EOF - - # TODO: in future (>9.4?), we may want to wire up USE=systemd: - # still experimental at the moment, but: - # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 - local myconf=( - --with-packager="Gentoo" - --with-packager-version="${PVR} (p${PATCH_VER:-0})" - --with-packager-bug-reports="https://bugs.gentoo.org/" - # kill/uptime - procps - # hostname - net-tools - --enable-install-program="arch,$(usev hostname),$(usev kill)" - --enable-no-install-program="$(usev !hostname),$(usev !kill),su,uptime" - $(usev !caps --disable-libcap) - $(use_enable nls) - $(use_enable acl) - $(use_enable multicall single-binary) - $(use_enable xattr) - $(use_with gmp libgmp) - $(use_with openssl) - ) - - if use gmp ; then - myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) - fi - - if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then - # bug #311569 - export fu_cv_sys_stat_statfs2_bsize=yes - # bug #416629 - export gl_cv_func_realpath_works=yes - fi - - # bug #409919 - export gl_cv_func_mknod_works=yes - - if use static ; then - append-ldflags -static - # bug #321821 - sed -i '/elf_sys=yes/s:yes:no:' configure || die - fi - - if ! use selinux ; then - # bug #301782 - export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no - fi - - econf "${myconf[@]}" -} - -src_test() { - # Non-root tests will fail if the full path isn't - # accessible to non-root users - chmod -R go-w "${WORKDIR}" || die - chmod a+rx "${WORKDIR}" || die - - # coreutils tests like to do `mount` and such with temp dirs, - # so make sure: - # - /etc/mtab is writable (bug #265725) - # - /dev/loop* can be mounted (bug #269758) - mkdir -p "${T}"/mount-wrappers || die - mkwrap() { - local w ww - for w in "${@}" ; do - ww="${T}/mount-wrappers/${w}" - cat <<-EOF > "${ww}" - #!${EPREFIX}/bin/sh - exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" - EOF - chmod a+rx "${ww}" || die - done - } - mkwrap mount umount - - addwrite /dev/full - - local -x RUN_{VERY_,}EXPENSIVE_TESTS=$(usex test-full yes no) - #local -x COREUTILS_GROUPS="portage wheel" - local -x PATH="${T}/mount-wrappers:${PATH}" - local -x gl_public_submodule_commit= - - local xfail_tests=() - - if [[ -n ${SANDBOX_ACTIVE} ]]; then - xfail_tests+=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) - fi - - # This test is flaky (bug #910640). - cat > tests/tty/tty-eof.pl <<-EOF || die - #!/usr/bin/perl - exit 77; - EOF - - # We set DISABLE_HARD_ERRORS because some of the tests hard error-out - # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed - # to downgrade them to FAIL. - emake -k check \ - VERBOSE=yes \ - DISABLE_HARD_ERRORS=yes \ - XFAIL_TESTS="${xfail_tests[*]}" -} - -src_install() { - default - - insinto /etc - newins src/dircolors.hin DIR_COLORS - - if use split-usr ; then - cd "${ED}"/usr/bin || die - dodir /bin - - # Move critical binaries into /bin (required by FHS) - local fhs="cat chgrp chmod chown cp date dd df echo false ln ls - mkdir mknod mv pwd rm rmdir stty sync true uname" - mv ${fhs} ../../bin/ || die "Could not move FHS bins!" - - if use hostname ; then - mv hostname ../../bin/ || die - fi - - if use kill ; then - mv kill ../../bin/ || die - fi - - # Move critical binaries into /bin (common scripts) - # (Why are these required for booting?) - local com="basename chroot cut dir dirname du env expr head mkfifo - mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" - mv ${com} ../../bin/ || die "Could not move common bins!" - - # Create a symlink for uname in /usr/bin/ since autotools require it. - # (Other than uname, we need to figure out why we are - # creating symlinks for these in /usr/bin instead of leaving - # the files there in the first place...) - local x - for x in ${com} uname ; do - dosym ../../bin/${x} /usr/bin/${x} - done - fi -} - -pkg_postinst() { - ewarn "Make sure you run 'hash -r' in your active shells." - ewarn "You should also re-source your shell settings for LS_COLORS" - ewarn " changes, such as: source /etc/profile" -} diff --git a/sys-apps/coreutils/coreutils-9.9-r12.ebuild b/sys-apps/coreutils/coreutils-9.9-r12.ebuild deleted file mode 100644 index f6694e13a4be..000000000000 --- a/sys-apps/coreutils/coreutils-9.9-r12.ebuild +++ /dev/null @@ -1,313 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils -# The upstream coreutils maintainers also maintain the package in Fedora and may -# backport fixes which we want to pick up. -# -# Also recommend subscribing to the coreutils and bug-coreutils MLs. - -PYTHON_COMPAT=( python3_{11..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc -inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig - -MY_PATCH="${PN}-9.6-patches" -DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" -HOMEPAGE="https://www.gnu.org/software/coreutils/" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" - inherit git-r3 -elif [[ ${PV} == *_p* ]] ; then - # Note: could put this in devspace, but if it's gone, we don't want - # it in tree anyway. It's just for testing. - MY_SNAPSHOT="$(ver_cut 1-2).327-71a8c" - SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" - S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} -else - SRC_URI=" - mirror://gnu/${PN}/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) - " - - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test test-full vanilla xattr" -RESTRICT="!test? ( test )" - -LIB_DEPEND=" - acl? ( sys-apps/acl[static-libs] ) - caps? ( sys-libs/libcap ) - gmp? ( dev-libs/gmp:=[static-libs] ) - openssl? ( dev-libs/openssl:=[static-libs] ) - xattr? ( sys-apps/attr[static-libs] ) -" -RDEPEND=" - !static? ( ${LIB_DEPEND//\[static-libs]} ) - selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - static? ( ${LIB_DEPEND} ) -" -BDEPEND=" - app-arch/xz-utils - dev-lang/perl - test? ( - dev-debug/strace - dev-lang/perl - dev-perl/Expect - ${PYTHON_DEPS} - ) - verify-sig? ( sec-keys/openpgp-keys-coreutils ) -" -RDEPEND+=" - hostname? ( !sys-apps/net-tools[hostname] ) - kill? ( - !sys-apps/util-linux[kill] - !sys-process/procps[kill] - ) - !<sys-apps/util-linux-2.13 - !<sys-apps/sandbox-2.10-r4 - !sys-apps/stat - !net-mail/base64 - !sys-apps/mktemp - !<app-forensics/tct-1.18-r1 - !<net-fs/netatalk-2.0.3-r4 - !<sys-apps/shadow-4.19.0_rc1 -" - -QA_CONFIG_IMPL_DECL_SKIP=( - # gnulib FPs (bug #898370) - unreachable MIN alignof static_assert -) - -pkg_setup() { - if use test ; then - python-any-r1_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - - sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die - elif use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} - fi - - default -} - -src_prepare() { - # TODO: past 2025, we may need to add our own hack for bug #907474. - local PATCHES=( - "${FILESDIR}"/${PN}-9.5-skip-readutmp-test.patch - # Upstream patches - "${FILESDIR}"/${PN}-9.9-cp-SEEK_HOLE-loop.patch - "${FILESDIR}"/${PN}-9.9-glibc-2.43-c23.patch - ) - - if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then - PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) - fi - - default - - # Since we've patched many .c files, the make process will try to - # re-build the manpages by running `./bin --help`. When doing a - # cross-compile, we can't do that since 'bin' isn't a native bin. - # - # Also, it's not like we changed the usage on any of these things, - # so let's just update the timestamps and skip the help2man step. - set -- man/*.x - touch ${@/%x/1} || die - - # Avoid perl dep for compiled in dircolors default (bug #348642) - if ! has_version dev-lang/perl ; then - touch src/dircolors.h || die - touch ${@/%x/1} || die - fi -} - -src_configure() { - # Running Valgrind in an ebuild is too unreliable. Skip such tests. - cat <<-EOF >> init.cfg || die - require_valgrind_() - { - skip_ "requires a working valgrind" - } - EOF - - # TODO: in future (>9.4?), we may want to wire up USE=systemd: - # still experimental at the moment, but: - # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 - local myconf=( - --with-packager="Gentoo" - --with-packager-version="${PVR} (p${PATCH_VER:-0})" - --with-packager-bug-reports="https://bugs.gentoo.org/" - # kill/uptime - procps - # hostname - net-tools - --enable-install-program="arch,$(usev hostname),$(usev kill)" - --enable-no-install-program="$(usev !hostname),$(usev !kill),su,uptime" - $(usev !caps --disable-libcap) - $(use_enable nls) - $(use_enable acl) - $(use_enable multicall single-binary) - $(use_enable xattr) - $(use_with gmp libgmp) - $(use_with openssl) - ) - - if use gmp ; then - myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) - fi - - if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then - # bug #311569 - export fu_cv_sys_stat_statfs2_bsize=yes - # bug #416629 - export gl_cv_func_realpath_works=yes - fi - - # bug #409919 - export gl_cv_func_mknod_works=yes - - if use static ; then - append-ldflags -static - # bug #321821 - sed -i '/elf_sys=yes/s:yes:no:' configure || die - fi - - if ! use selinux ; then - # bug #301782 - export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no - fi - - econf "${myconf[@]}" -} - -src_test() { - # Non-root tests will fail if the full path isn't - # accessible to non-root users - chmod -R go-w "${WORKDIR}" || die - chmod a+rx "${WORKDIR}" || die - - # coreutils tests like to do `mount` and such with temp dirs, - # so make sure: - # - /etc/mtab is writable (bug #265725) - # - /dev/loop* can be mounted (bug #269758) - mkdir -p "${T}"/mount-wrappers || die - mkwrap() { - local w ww - for w in "${@}" ; do - ww="${T}/mount-wrappers/${w}" - cat <<-EOF > "${ww}" - #!${EPREFIX}/bin/sh - exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" - EOF - chmod a+rx "${ww}" || die - done - } - mkwrap mount umount - - addwrite /dev/full - - local -x RUN_{VERY_,}EXPENSIVE_TESTS=$(usex test-full yes no) - #local -x COREUTILS_GROUPS="portage wheel" - local -x PATH="${T}/mount-wrappers:${PATH}" - local -x gl_public_submodule_commit= - - local xfail_tests=() - - if [[ -n ${SANDBOX_ACTIVE} ]]; then - xfail_tests+=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) - fi - - # This test is flaky (bug #910640). - cat > tests/tty/tty-eof.pl <<-EOF || die - #!/usr/bin/perl - exit 77; - EOF - - # We set DISABLE_HARD_ERRORS because some of the tests hard error-out - # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed - # to downgrade them to FAIL. - emake -k check \ - VERBOSE=yes \ - DISABLE_HARD_ERRORS=yes \ - XFAIL_TESTS="${xfail_tests[*]}" -} - -src_install() { - default - - insinto /etc - newins src/dircolors.hin DIR_COLORS - - if use split-usr ; then - cd "${ED}"/usr/bin || die - dodir /bin - - # Move critical binaries into /bin (required by FHS) - local fhs="cat chgrp chmod chown cp date dd df echo false ln ls - mkdir mknod mv pwd rm rmdir stty sync true uname" - mv ${fhs} ../../bin/ || die "Could not move FHS bins!" - - if use hostname ; then - mv hostname ../../bin/ || die - fi - - if use kill ; then - mv kill ../../bin/ || die - fi - - # Move critical binaries into /bin (common scripts) - # (Why are these required for booting?) - local com="basename chroot cut dir dirname du env expr head mkfifo - mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" - mv ${com} ../../bin/ || die "Could not move common bins!" - - # Create a symlink for uname in /usr/bin/ since autotools require it. - # (Other than uname, we need to figure out why we are - # creating symlinks for these in /usr/bin instead of leaving - # the files there in the first place...) - local x - for x in ${com} uname ; do - dosym ../../bin/${x} /usr/bin/${x} - done - fi -} - -pkg_postinst() { - ewarn "Make sure you run 'hash -r' in your active shells." - ewarn "You should also re-source your shell settings for LS_COLORS" - ewarn " changes, such as: source /etc/profile" -} diff --git a/sys-apps/coreutils/coreutils-9.9.ebuild b/sys-apps/coreutils/coreutils-9.9.ebuild deleted file mode 100644 index 718831c052e2..000000000000 --- a/sys-apps/coreutils/coreutils-9.9.ebuild +++ /dev/null @@ -1,311 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils -# The upstream coreutils maintainers also maintain the package in Fedora and may -# backport fixes which we want to pick up. -# -# Also recommend subscribing to the coreutils and bug-coreutils MLs. - -PYTHON_COMPAT=( python3_{11..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc -inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig - -MY_PATCH="${PN}-9.6-patches" -DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" -HOMEPAGE="https://www.gnu.org/software/coreutils/" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git" - inherit git-r3 -elif [[ ${PV} == *_p* ]] ; then - # Note: could put this in devspace, but if it's gone, we don't want - # it in tree anyway. It's just for testing. - MY_SNAPSHOT="$(ver_cut 1-2).327-71a8c" - SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz" - SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )" - S="${WORKDIR}"/${PN}-${MY_SNAPSHOT} -else - SRC_URI=" - mirror://gnu/${PN}/${P}.tar.xz - verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) - " - - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -fi - -SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test test-full vanilla xattr" -RESTRICT="!test? ( test )" - -LIB_DEPEND=" - acl? ( sys-apps/acl[static-libs] ) - caps? ( sys-libs/libcap ) - gmp? ( dev-libs/gmp:=[static-libs] ) - openssl? ( dev-libs/openssl:=[static-libs] ) - xattr? ( sys-apps/attr[static-libs] ) -" -RDEPEND=" - !static? ( ${LIB_DEPEND//\[static-libs]} ) - selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl ) -" -DEPEND=" - ${RDEPEND} - static? ( ${LIB_DEPEND} ) -" -BDEPEND=" - app-arch/xz-utils - dev-lang/perl - test? ( - dev-debug/strace - dev-lang/perl - dev-perl/Expect - ${PYTHON_DEPS} - ) - verify-sig? ( sec-keys/openpgp-keys-coreutils ) -" -RDEPEND+=" - hostname? ( !sys-apps/net-tools[hostname] ) - kill? ( - !sys-apps/util-linux[kill] - !sys-process/procps[kill] - ) - !<sys-apps/util-linux-2.13 - !<sys-apps/sandbox-2.10-r4 - !sys-apps/stat - !net-mail/base64 - !sys-apps/mktemp - !<app-forensics/tct-1.18-r1 - !<net-fs/netatalk-2.0.3-r4 -" - -QA_CONFIG_IMPL_DECL_SKIP=( - # gnulib FPs (bug #898370) - unreachable MIN alignof static_assert -) - -pkg_setup() { - if use test ; then - python-any-r1_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - - sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die - elif use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} - fi - - default -} - -src_prepare() { - # TODO: past 2025, we may need to add our own hack for bug #907474. - local PATCHES=( - "${FILESDIR}"/${PN}-9.5-skip-readutmp-test.patch - # Upstream patches - ) - - if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then - PATCHES+=( "${WORKDIR}"/${MY_PATCH} ) - fi - - default - - # Since we've patched many .c files, the make process will try to - # re-build the manpages by running `./bin --help`. When doing a - # cross-compile, we can't do that since 'bin' isn't a native bin. - # - # Also, it's not like we changed the usage on any of these things, - # so let's just update the timestamps and skip the help2man step. - set -- man/*.x - touch ${@/%x/1} || die - - # Avoid perl dep for compiled in dircolors default (bug #348642) - if ! has_version dev-lang/perl ; then - touch src/dircolors.h || die - touch ${@/%x/1} || die - fi -} - -src_configure() { - # Running Valgrind in an ebuild is too unreliable. Skip such tests. - cat <<-EOF >> init.cfg || die - require_valgrind_() - { - skip_ "requires a working valgrind" - } - EOF - - # TODO: in future (>9.4?), we may want to wire up USE=systemd: - # still experimental at the moment, but: - # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0 - local myconf=( - --with-packager="Gentoo" - --with-packager-version="${PVR} (p${PATCH_VER:-0})" - --with-packager-bug-reports="https://bugs.gentoo.org/" - # kill/uptime - procps - # groups/su - shadow - # hostname - net-tools - --enable-install-program="arch,$(usev hostname),$(usev kill)" - --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime" - $(usev !caps --disable-libcap) - $(use_enable nls) - $(use_enable acl) - $(use_enable multicall single-binary) - $(use_enable xattr) - $(use_with gmp libgmp) - $(use_with openssl) - ) - - if use gmp ; then - myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr ) - fi - - if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then - # bug #311569 - export fu_cv_sys_stat_statfs2_bsize=yes - # bug #416629 - export gl_cv_func_realpath_works=yes - fi - - # bug #409919 - export gl_cv_func_mknod_works=yes - - if use static ; then - append-ldflags -static - # bug #321821 - sed -i '/elf_sys=yes/s:yes:no:' configure || die - fi - - if ! use selinux ; then - # bug #301782 - export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no - fi - - econf "${myconf[@]}" -} - -src_test() { - # Non-root tests will fail if the full path isn't - # accessible to non-root users - chmod -R go-w "${WORKDIR}" || die - chmod a+rx "${WORKDIR}" || die - - # coreutils tests like to do `mount` and such with temp dirs, - # so make sure: - # - /etc/mtab is writable (bug #265725) - # - /dev/loop* can be mounted (bug #269758) - mkdir -p "${T}"/mount-wrappers || die - mkwrap() { - local w ww - for w in "${@}" ; do - ww="${T}/mount-wrappers/${w}" - cat <<-EOF > "${ww}" - #!${EPREFIX}/bin/sh - exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" - EOF - chmod a+rx "${ww}" || die - done - } - mkwrap mount umount - - addwrite /dev/full - - local -x RUN_{VERY_,}EXPENSIVE_TESTS=$(usex test-full yes no) - #local -x COREUTILS_GROUPS="portage wheel" - local -x PATH="${T}/mount-wrappers:${PATH}" - local -x gl_public_submodule_commit= - - local xfail_tests=() - - if [[ -n ${SANDBOX_ACTIVE} ]]; then - xfail_tests+=( - # bug #629660 - # Commented out again in 9.6 as it XPASSes on linux-6.12.10 - # with sandbox-2.43 on tmpfs. Let's see if it lasts.. - #tests/dd/no-allocate.sh - - # bug #675802 - tests/env/env-S - tests/env/env-S.pl - - # We have a patch which fixes this (bug #259876) - #tests/touch/not-owner - #tests/touch/not-owner.sh - ) - fi - - # This test is flaky (bug #910640). - cat > tests/tty/tty-eof.pl <<-EOF || die - #!/usr/bin/perl - exit 77; - EOF - - # We set DISABLE_HARD_ERRORS because some of the tests hard error-out - # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed - # to downgrade them to FAIL. - emake -k check \ - VERBOSE=yes \ - DISABLE_HARD_ERRORS=yes \ - XFAIL_TESTS="${xfail_tests[*]}" -} - -src_install() { - default - - insinto /etc - newins src/dircolors.hin DIR_COLORS - - if use split-usr ; then - cd "${ED}"/usr/bin || die - dodir /bin - - # Move critical binaries into /bin (required by FHS) - local fhs="cat chgrp chmod chown cp date dd df echo false ln ls - mkdir mknod mv pwd rm rmdir stty sync true uname" - mv ${fhs} ../../bin/ || die "Could not move FHS bins!" - - if use hostname ; then - mv hostname ../../bin/ || die - fi - - if use kill ; then - mv kill ../../bin/ || die - fi - - # Move critical binaries into /bin (common scripts) - # (Why are these required for booting?) - local com="basename chroot cut dir dirname du env expr head mkfifo - mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" - mv ${com} ../../bin/ || die "Could not move common bins!" - - # Create a symlink for uname in /usr/bin/ since autotools require it. - # (Other than uname, we need to figure out why we are - # creating symlinks for these in /usr/bin instead of leaving - # the files there in the first place...) - local x - for x in ${com} uname ; do - dosym ../../bin/${x} /usr/bin/${x} - done - fi -} - -pkg_postinst() { - ewarn "Make sure you run 'hash -r' in your active shells." - ewarn "You should also re-source your shell settings for LS_COLORS" - ewarn " changes, such as: source /etc/profile" -} diff --git a/sys-apps/coreutils/files/coreutils-9.8-basenc-base58.patch b/sys-apps/coreutils/files/coreutils-9.8-basenc-base58.patch deleted file mode 100644 index d8ccb11a81fa..000000000000 --- a/sys-apps/coreutils/files/coreutils-9.8-basenc-base58.patch +++ /dev/null @@ -1,137 +0,0 @@ -https://cgit.git.savannah.gnu.org/cgit/coreutils.git/commit/?id=2ef53e5b0477f9d9361a11a471d704a96b1c99b8 -(Dropped the test to avoid autoreconf.) - -From 2ef53e5b0477f9d9361a11a471d704a96b1c99b8 Mon Sep 17 00:00:00 2001 -From: Pádraig Brady <[email protected]> -Date: Tue, 23 Sep 2025 15:38:51 +0100 -Subject: basenc: --base58: fix buffer overflow with input > 15MB - -base58_length() operated naively on an int -which resulted in an overflow to a negative number -for any input > 2^31-1/138, i.e. 15,561,475 bytes. - -* src/basenc.c (base_length): Change input and output -parameter types from int to idx_t since this needs to -cater for the full input size in the base58 case. -(base58_length): Likewise. Also reorder the calculation -to be less exact, but doing the division first -to minimize the chance of overflow (which now on 64 bit -would only happen for inputs > around 6 Exa bytes). -* tests/basenc/basenc-large.sh: Add a new test, -that triggers with valgrind or ASAN. -* tests/local.mk: Reference the new test. -* NEWS: Mention the bug fix. ---- - src/basenc.c | 43 +++++++++++++++++++++++++------------------ - 4 files changed, 58 insertions(+), 18 deletions(-) - create mode 100755 tests/basenc/basenc-large.sh - -diff --git a/src/basenc.c b/src/basenc.c -index 1fb7a16f5..ae55f8e32 100644 ---- a/src/basenc.c -+++ b/src/basenc.c -@@ -253,7 +253,7 @@ static_assert (DEC_BLOCKSIZE % 12 == 0); /* Complete encoded blocks are used. */ - static_assert (DEC_BLOCKSIZE % 40 == 0); /* complete encoded blocks for base32*/ - static_assert (DEC_BLOCKSIZE % 12 == 0); /* complete encoded blocks for base64*/ - --static int (*base_length) (int i); -+static idx_t (*base_length) (idx_t len); - static int (*required_padding) (int i); - static bool (*isubase) (unsigned char ch); - static void (*base_encode) (char const *restrict in, idx_t inlen, -@@ -427,8 +427,8 @@ decode_ctx_finalize (struct base_decode_context *ctx, - - #if BASE_TYPE == 42 - --static int --base64_length_wrapper (int len) -+static idx_t -+base64_length_wrapper (idx_t len) - { - return BASE64_LENGTH (len); - } -@@ -526,8 +526,8 @@ base64url_decode_ctx_wrapper (struct base_decode_context *ctx, - - - --static int --base32_length_wrapper (int len) -+static idx_t -+base32_length_wrapper (idx_t len) - { - return BASE32_LENGTH (len); - } -@@ -740,8 +740,8 @@ isubase16 (unsigned char ch) - return ch < sizeof base16_to_int && 0 <= base16_to_int[ch]; - } - --static int --base16_length (int len) -+static idx_t -+base16_length (idx_t len) - { - return len * 2; - } -@@ -820,13 +820,14 @@ base16_decode_ctx (struct base_decode_context *ctx, - - - -- --static int --z85_length (int len) -+ATTRIBUTE_PURE -+static idx_t -+z85_length (idx_t len) - { - /* Z85 does not allow padding, so no need to round to highest integer. */ -- int outlen = (len * 5) / 4; -- return outlen; -+ idx_t z85_len = (len * 5) / 4; -+ affirm (0 <= z85_len); -+ return z85_len; - } - - static bool -@@ -1015,8 +1016,8 @@ isubase2 (unsigned char ch) - return ch == '0' || ch == '1'; - } - --static int --base2_length (int len) -+static idx_t -+base2_length (idx_t len) - { - return len * 8; - } -@@ -1206,12 +1207,17 @@ isubase58 (unsigned char ch) - } - - --static int --base58_length (int len) -+ATTRIBUTE_PURE -+static idx_t -+base58_length (idx_t len) - { - /* Base58 output length is approximately log(256)/log(58), -- so ensure we've enough place for that + NUL. */ -- return (len * 138) / 100 + 1; -+ which is approximately len * 138 / 100, -+ which is at most ((len + 100 - 1) / 100) * 138 -+ +1 to ensure we've enough place for NUL */ -+ idx_t base58_len = ((len + 99) / 100) * 138 + 1; -+ affirm (0 < base58_len); -+ return base58_len; - } - - -@@ -1268,6 +1274,7 @@ base58_encode (char const* data, size_t data_len, - if (data_len - zeros) - { - mpz_import (num, data_len - zeros, 1, 1, 0, 0, data + zeros); -+ affirm (mpz_sizeinbase (num, 58) + 1 <= *outlen); - for (p = mpz_get_str (p, 58, num); *p; p++) - *p = gmp_to_base58[to_uchar (*p)]; - } --- -cgit v1.2.3 diff --git a/sys-apps/coreutils/files/coreutils-9.8-no-pclmul.patch b/sys-apps/coreutils/files/coreutils-9.8-no-pclmul.patch deleted file mode 100644 index 4242ae752a6d..000000000000 --- a/sys-apps/coreutils/files/coreutils-9.8-no-pclmul.patch +++ /dev/null @@ -1,18 +0,0 @@ -https://bugs.gentoo.org/959467 -https://debbugs.gnu.org/79491 - -GL_CRC_X86_64_PCLMUL in effect overrides the earlier configure check which -sets USE_PCLMUL_CRC32, so -mno-pclmul leads to a build failure. Just use -the coreutils config check result for now. - -Thanks to Ionen Wolkens <[email protected]> for the investigation and -workaround. ---- a/src/cksum.c -+++ b/src/cksum.c -@@ -145,5 +145,5 @@ - pclmul_supported (void) - { --# if USE_PCLMUL_CRC32 || GL_CRC_X86_64_PCLMUL -+# if USE_PCLMUL_CRC32 - bool pclmul_enabled = (0 < __builtin_cpu_supports ("pclmul") - && 0 < __builtin_cpu_supports ("avx")); diff --git a/sys-apps/coreutils/files/coreutils-9.8-tail-offset.patch b/sys-apps/coreutils/files/coreutils-9.8-tail-offset.patch deleted file mode 100644 index 44b7334b54a5..000000000000 --- a/sys-apps/coreutils/files/coreutils-9.8-tail-offset.patch +++ /dev/null @@ -1,35 +0,0 @@ -https://cgit.git.savannah.gnu.org/cgit/coreutils.git/commit/?id=914972e80dbf82aac9ffe3ff1f67f1028e1a788b -(Dropped the test to avoid autoreconf.) - -From 914972e80dbf82aac9ffe3ff1f67f1028e1a788b Mon Sep 17 00:00:00 2001 -From: Hannes Braun <[email protected]> -Date: Wed, 24 Sep 2025 21:20:49 +0200 -Subject: tail: fix tailing larger number of lines in regular files - -* src/tail.c (file_lines): Seek to the previous block instead of the -beginning (or a little before) of the block that was just scanned. -Otherwise, the same block is read and scanned (at least partially) -again. This bug was introduced by commit v9.7-219-g976f8abc1. -* tests/tail/basic-seek.sh: Add a new test. -* tests/local.mk: Reference the new test. -* NEWS: mention the bug fix. ---- - src/tail.c | 2 +- - tests/local.mk | 1 + - tests/tail/basic-seek.sh | 28 ++++++++++++++++++++++++++++ - 4 files changed, 34 insertions(+), 1 deletion(-) - create mode 100755 tests/tail/basic-seek.sh - -diff --git a/src/tail.c b/src/tail.c -index b8bef1d91..c7779c77d 100644 ---- a/src/tail.c -+++ b/src/tail.c -@@ -596,7 +596,7 @@ file_lines (char const *prettyname, int fd, struct stat const *sb, - goto free_buffer; - } - -- pos = xlseek (fd, -bufsize, SEEK_CUR, prettyname); -+ pos = xlseek (fd, -(bufsize + bytes_read), SEEK_CUR, prettyname); - bytes_read = read (fd, buffer, bufsize); - if (bytes_read < 0) - { diff --git a/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch b/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch deleted file mode 100644 index 277597ba06f3..000000000000 --- a/sys-apps/coreutils/files/coreutils-9.9-glibc-2.43-c23.patch +++ /dev/null @@ -1,170 +0,0 @@ -https://bugs.gentoo.org/969219 - -From 891761bca1aa78336e5b18c121075b6e4696c5d4 Mon Sep 17 00:00:00 2001 -From: Paul Eggert <[email protected]> -Date: Sun, 23 Nov 2025 00:50:40 -0800 -Subject: [PATCH] Port to C23 qualifier-generic fns like strchr -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This ports Gnulib to strict C23 platforms that reject code -like ‘char *q = strchr (P, 'x');’ when P is a pointer to const, -because in C23 strchr is a qualifier-generic function so -strchr (P, 'x') returns char const *. -This patch does not attempt to do the following two things, -which might be useful in the future: -1. When compiling on non-C23 platforms, check user code for -portability to platforms that define qualifier-generic functions. -2. Port Gnulib to platforms that have qualifier-generic functions -not listed in the C23 standard, e.g., strchrnul. I don’t know -of any such platforms. -* lib/mbschr.c (mbschr): -* lib/memchr2.c (memchr2): -Port to C23, where functions like strchr are qualifier-generic. -* lib/c++defs.h (_GL_FUNCDECL_SYS_NAME): New macro. -* lib/c++defs.h (_GL_FUNCDECL_SYS): -* lib/stdlib.in.h (bsearch): -Use it, to prevent C23 names like strchr from acting like macros. -* lib/string.in.h (memchr, strchr, strpbrk, strrchr): -Do not #undef when GNULIB_POSIXCHECK is defined, as this could -cause conforming C23 code to fail to conform. It’s not clear why -_GL_WARN_ON_USE_CXX; perhaps it was needed but isn’t any more? -But for now, limit the removal of #undef to these four functions -where #undeffing is clearly undesirable in C23. -* lib/wchar.in.h (wmemchr): Parenthesize function name in decl, -to prevent it from acting like a macro. - -Cherry-picked-by: Lukáš Zaoral <[email protected]> -Upstream-commit: df17f4f37ed3ca373d23ad42eae51122bdb96626 ---- - lib/c++defs.h | 12 +++++++++++- - lib/mbschr.c | 2 +- - lib/memchr2.c | 2 +- - lib/stdlib.in.h | 6 +++--- - lib/string.in.h | 4 ---- - lib/wchar.in.h | 2 +- - 6 files changed, 17 insertions(+), 11 deletions(-) - -diff --git a/lib/c++defs.h b/lib/c++defs.h -index b77979a..7384457 100644 ---- a/lib/c++defs.h -+++ b/lib/c++defs.h -@@ -127,6 +127,16 @@ - #define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters,...) \ - _GL_EXTERN_C_FUNC __VA_ARGS__ rettype rpl_func parameters - -+/* _GL_FUNCDECL_SYS_NAME (func) expands to plain func if C++, and to -+ parenthsized func otherwise. Parenthesization is needed in C23 if -+ the function is like strchr and so is a qualifier-generic macro -+ that expands to something more complicated. */ -+#ifdef __cplusplus -+# define _GL_FUNCDECL_SYS_NAME(func) func -+#else -+# define _GL_FUNCDECL_SYS_NAME(func) (func) -+#endif -+ - /* _GL_FUNCDECL_SYS (func, rettype, parameters, [attributes]); - declares the system function, named func, with the given prototype, - consisting of return type, parameters, and attributes. -@@ -139,7 +149,7 @@ - _GL_FUNCDECL_SYS (posix_openpt, int, (int flags), _GL_ATTRIBUTE_NODISCARD); - */ - #define _GL_FUNCDECL_SYS(func,rettype,parameters,...) \ -- _GL_EXTERN_C_FUNC __VA_ARGS__ rettype func parameters -+ _GL_EXTERN_C_FUNC __VA_ARGS__ rettype _GL_FUNCDECL_SYS_NAME (func) parameters - - /* _GL_CXXALIAS_RPL (func, rettype, parameters); - declares a C++ alias called GNULIB_NAMESPACE::func -diff --git a/lib/mbschr.c b/lib/mbschr.c -index c9e14b5..6582134 100644 ---- a/lib/mbschr.c -+++ b/lib/mbschr.c -@@ -65,5 +65,5 @@ mbschr (const char *string, int c) - return NULL; - } - else -- return strchr (string, c); -+ return (char *) strchr (string, c); - } -diff --git a/lib/memchr2.c b/lib/memchr2.c -index 7493823..d7724ae 100644 ---- a/lib/memchr2.c -+++ b/lib/memchr2.c -@@ -55,7 +55,7 @@ memchr2 (void const *s, int c1_in, int c2_in, size_t n) - c2 = (unsigned char) c2_in; - - if (c1 == c2) -- return memchr (s, c1, n); -+ return (void *) memchr (s, c1, n); - - /* Handle the first few bytes by reading one byte at a time. - Do this until VOID_PTR is aligned on a longword boundary. */ -diff --git a/lib/stdlib.in.h b/lib/stdlib.in.h -index bef0aaa..fd0e1e0 100644 ---- a/lib/stdlib.in.h -+++ b/lib/stdlib.in.h -@@ -224,9 +224,9 @@ _GL_INLINE_HEADER_BEGIN - - /* Declarations for ISO C N3322. */ - #if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ --_GL_EXTERN_C void *bsearch (const void *__key, -- const void *__base, size_t __nmemb, size_t __size, -- int (*__compare) (const void *, const void *)) -+_GL_EXTERN_C void *_GL_FUNCDECL_SYS_NAME (bsearch) -+ (const void *__key, const void *__base, size_t __nmemb, size_t __size, -+ int (*__compare) (const void *, const void *)) - _GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3) _GL_ARG_NONNULL ((5)); - _GL_EXTERN_C void qsort (void *__base, size_t __nmemb, size_t __size, - int (*__compare) (const void *, const void *)) -diff --git a/lib/string.in.h b/lib/string.in.h -index fdcdd21..8b56acf 100644 ---- a/lib/string.in.h -+++ b/lib/string.in.h -@@ -409,7 +409,6 @@ _GL_CXXALIASWARN1 (memchr, void const *, - _GL_CXXALIASWARN (memchr); - # endif - #elif defined GNULIB_POSIXCHECK --# undef memchr - /* Assume memchr is always declared. */ - _GL_WARN_ON_USE (memchr, "memchr has platform-specific bugs - " - "use gnulib module memchr for portability" ); -@@ -674,7 +673,6 @@ _GL_WARN_ON_USE (stpncpy, "stpncpy is unportable - " - #if defined GNULIB_POSIXCHECK - /* strchr() does not work with multibyte strings if the locale encoding is - GB18030 and the character to be searched is a digit. */ --# undef strchr - /* Assume strchr is always declared. */ - _GL_WARN_ON_USE_CXX (strchr, - const char *, char *, (const char *, int), -@@ -981,7 +979,6 @@ _GL_CXXALIASWARN (strpbrk); - Even in this simple case, it does not work with multibyte strings if the - locale encoding is GB18030 and one of the characters to be searched is a - digit. */ --# undef strpbrk - _GL_WARN_ON_USE_CXX (strpbrk, - const char *, char *, (const char *, const char *), - "strpbrk cannot work correctly on character strings " -@@ -1011,7 +1008,6 @@ _GL_WARN_ON_USE (strspn, "strspn cannot work correctly on character strings " - #if defined GNULIB_POSIXCHECK - /* strrchr() does not work with multibyte strings if the locale encoding is - GB18030 and the character to be searched is a digit. */ --# undef strrchr - /* Assume strrchr is always declared. */ - _GL_WARN_ON_USE_CXX (strrchr, - const char *, char *, (const char *, int), -diff --git a/lib/wchar.in.h b/lib/wchar.in.h -index ab602a2..6be4515 100644 ---- a/lib/wchar.in.h -+++ b/lib/wchar.in.h -@@ -301,7 +301,7 @@ _GL_EXTERN_C int wcsncmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) - _GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3) - _GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3); - # ifndef __cplusplus --_GL_EXTERN_C wchar_t *wmemchr (const wchar_t *__s, wchar_t __wc, size_t __n) -+_GL_EXTERN_C wchar_t *(wmemchr) (const wchar_t *__s, wchar_t __wc, size_t __n) - _GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3); - # endif - _GL_EXTERN_C wchar_t *wmemset (wchar_t *__s, wchar_t __wc, size_t __n) --- -2.52.0
