summaryrefslogtreecommitdiff
path: root/sys-apps/coreutils
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
committerV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
commit752d6256e5204b958b0ef7905675a940b5e9172f (patch)
tree330d16e6362a49cbed8875a777fe641a43376cd3 /sys-apps/coreutils
parent0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff)
gentoo resync : 12.05.2022
Diffstat (limited to 'sys-apps/coreutils')
-rw-r--r--sys-apps/coreutils/Manifest6
-rw-r--r--sys-apps/coreutils/coreutils-9.0.ebuild221
-rw-r--r--sys-apps/coreutils/coreutils-9.1-r1.ebuild (renamed from sys-apps/coreutils/coreutils-9.0-r1.ebuild)48
-rw-r--r--sys-apps/coreutils/coreutils-9.1.ebuild2
-rw-r--r--sys-apps/coreutils/files/coreutils-9.1-fix-rename-simple-backups.patch38
5 files changed, 77 insertions, 238 deletions
diff --git a/sys-apps/coreutils/Manifest b/sys-apps/coreutils/Manifest
index 50a76cf7453d..353894846780 100644
--- a/sys-apps/coreutils/Manifest
+++ b/sys-apps/coreutils/Manifest
@@ -2,6 +2,7 @@ AUX coreutils-8.32-ls-restore-8.31-behavior.patch 2824 BLAKE2B 7df44f4e330225a42
AUX coreutils-8.32-sandbox-env-test.patch 1958 BLAKE2B 570f62115f0853abb35290174ad6dd3157be16a28c527b37d1c58b421538a6238e93317689e6cd35b7dc5a0f480a4322c432986697a9e0af60019650eae92c0a SHA512 fd3573cf5a4b4fbba132d0fac5ad6eb4af5aa548a8c0c747653e47acfb97c01e31d7430db543df47d9a2680792d2583de70e1f1d49b2feb75887e9f8638527b7
AUX coreutils-9.0-fix-chmod-symlink-exit.patch 1133 BLAKE2B 28a3adfb2c8b4e8d557a713d9e83fb61672e74dbc7dc8a8f7adf497825be0e53e1c08bff37122750a6144da70737af558dc018a06816e279879f31daf746a4d1 SHA512 392b94d55c5864e5de637567f7207e5c789a722710c29bead72c41b9f85f535f96f84f4abc64b35ee218c5ec5bc129837a65ec95cbb88113877b302823491991
AUX coreutils-9.0-r1-0001-dircolors-consider-COLORTERM-sufficient-for-color.patch 4718 BLAKE2B a4a8ab721a277fd3eaac7d64c8a8cf1918c14c6d494f5ea35646d737299c7d2a84d177667984cf7ed8bb860388571f847a3f0cbb45c661eb114b378596f83259 SHA512 bb425eaae25b1035e9e4899801f3735804404fab2392d2545ff8213201c5f7dffc112cfab63e650e6b86cefccec661c8d991b5fd2310ae4a442abf9be7d27398
+AUX coreutils-9.1-fix-rename-simple-backups.patch 1343 BLAKE2B b284b2b7d33fe7650a4ac8723ca5566e819cd4f4740394cc549562a03fe7ed95d29cfb688a9e5513edcea1f9d5f7b72f1a530f9bf5093ad4dc6534a494e9f91c SHA512 900128c08b096c39302193855fdbb980c54597acf3349b9014ced500e344b7f47438722342e3a7d68f8c4588632769a11165c5c06796993d3b9aca019de8468a
DIST coreutils-8.30-patches-01.tar.xz 5788 BLAKE2B a41511ce39ac570cb14b7f12d125eebef92217469a9490808719fa0665f5e5c0adb96fbd02c4bac4d280d1502295669575790a81dbc01afe2ca3a9d384cbefb0 SHA512 b1e1933637de4581d5f8c6ede4e80a012435d13f0cf5550a76ab5bbe9441e3c15ce19ef3f78a7ea3b8368d5e9a3bb17c1207c471d26171b59786f38adeba0454
DIST coreutils-8.32.tar.xz 5547836 BLAKE2B 0ad99c176c19ec214fcfd0845523e5362f0151827707c759bd46c0fe8d2501c6ad1c29c5b71266f6525857bc0d56c472db0d7fe29953b6c65e2e6c76bdf3c515 SHA512 1c8f3584efd61b4b02e7ac5db8e103b63cfb2063432caaf1e64cb2dcc56d8c657d1133bbf10bd41468d6a1f31142e6caa81d16ae68fa3e6e84075c253613a145
DIST coreutils-9.0.tar.xz 5612752 BLAKE2B 59617cd25fd4c70f51bfbef851bd83e73f9c9ba5c11eb539f7f75c0184d55832e004b28e9268fb8064db145cb071ead2b9c0c3346bc35a11934ffe1b15bf17ac SHA512 9be08212891dbf48e5b22e7689dc27dac50df4631ebf29313470b72b7921f0b2aa5242917d05587785358495ca56e3b21f5b3ca81043d53cab92354da6c53a03
@@ -10,8 +11,7 @@ DIST coreutils-9.0_p20220409-patches-01.tar.xz 6244 BLAKE2B 8ca98556807196607829
DIST coreutils-9.1.tar.xz 5712104 BLAKE2B f5654e4935535275615d44a56c071d1c0746af36cf4615fcc0a5a0d387af9c9023adac31f31a52e16b3d1105b9d4c0fb7ebff9b2862498849f867a866049dd6e SHA512 a6ee2c549140b189e8c1b35e119d4289ec27244ec0ed9da0ac55202f365a7e33778b1dc7c4e64d1669599ff81a8297fe4f5adbcc8a3a2f75c919a43cd4b9bdfa
DIST coreutils-9.1.tar.xz.sig 833 BLAKE2B e9627a066f3c67596feaa8d43d5785076230f440bacea84d8b5736e51a22787c2d5df1f3e2cd8523d01fb7b468933d3c17fce3cb1fbefef322a0e0d820b81842 SHA512 9f0766531afd4faa3e2c337730f61db55605cf06729e9c61f644594883732c2e0b1ddb0005b492be309c53e6f45b8ff875398163a48699d52517ea49e9bdbc91
EBUILD coreutils-8.32-r1.ebuild 5967 BLAKE2B e4111bbbcd2c83ee5f25783434a8d841f75bb14dd9cbeb223558bf6c3d22f93ec7ba3d6c4ec740243473c53575776e9700004a0f9695b91a5468837a62b6c4c6 SHA512 adbd3c99b3e3e126e13a468bc66109005a1abdd603c11ea02bf8d8c2c8232ea48f6e2da768439ce4480789df0aa412eaff3849a24f3c81def5efd4479c87c27c
-EBUILD coreutils-9.0-r1.ebuild 6067 BLAKE2B 3d35f7334effe9b7f913168d37139d26b96e553eaadd7ae309d4ea525a55632ae6bb9d66947553b6d24f8aea95cdb8913cc1cc1c37e9f12a07003c9951f11924 SHA512 e90e144a12fa05c19bdba824846f6f2e659ebf4bd97725f4d8e7592d8cf2b6c19a5846ccfcfeab78a3c7c117a5533a7b008ae86f506951e96f755fc07e9d22bd
EBUILD coreutils-9.0-r2.ebuild 6543 BLAKE2B d8df4d40534c22482176f488be76b5f5905a527531b812b1eb34cd0a91ef3a4a1bd888676cd70b26e794584ea2d289af889b06bb5ce9775e9c4df39e01d9b2e7 SHA512 dc7cac6990f45cb1556fc59ae4d4fe01b35b701fec64e8d240d093b0771ea196144f148452d5b5d953804a3c126e2918676750c41698c8f3dae73bbb35a6fb54
-EBUILD coreutils-9.0.ebuild 5919 BLAKE2B d77953c6649536031894dfb4dc7464c1d23639848dfbed13a86e2a742e9070cbc58058904dbce008555eeeaca9141e058e544645e88707e41f27fd7e9f7e9fa4 SHA512 a7193dec152d0674e4fb4333597694b2063efff6a4d020cc6ce3090f1d65398dc30aa9ef32de9b6cbfc98ec61611f66c3c6eaa1001055838d187088fb1025a17
-EBUILD coreutils-9.1.ebuild 6770 BLAKE2B d8ce51e2ea87aa59fe30d5b3acf9025b6d638515e3bb88ddd8f978b6d2b642f89316bcb20a28d5c48412583cc7eebb93dd38c77d0c0fe8353dd85054f37ef4ac SHA512 14d87a18f95b7f6ad0204a993dcc0c9f41aaa9466f31218f05278099997c6e7e3e06593c124f406e6ce84b1e0c8e5039b889ff86bdcfeeca2f317ccf758e3899
+EBUILD coreutils-9.1-r1.ebuild 7044 BLAKE2B 810aef3fc79e73b87f9e73648c66a0481559327bce74c7703cc58cf448a67a345f43821571262bedf602f02f602b45c3b49a2b28be1c6c09cb1a05bd575dd6f8 SHA512 f47c76eb2a8ef6b8517179d2b49b680ee8d70323feb20a8b420bcf36819c85fec61e98cfd84fa912133343ea647ead0eba0e60d105473c02de6ee6d684e9cc3d
+EBUILD coreutils-9.1.ebuild 6777 BLAKE2B 4cbc8d7d2cac38d7a4308e5148d49cea96827a0507428b90c4f78cda3df451a21a22a86b3b2072b319a0040e2d4ef0881f81059584eb707bb83de7fd366a2c08 SHA512 7c4fc8adfb36c12b1b824f6a59091c7a9a9e26ab831ad530f9f3dea750c5e353a67dedacc4d940791ac350ae724e3f9a42d6761159d226c16c378cc937e37aaa
MISC metadata.xml 959 BLAKE2B 7db7eff5a6e1c45c37e20d66e299b44b7a8334b20f970eac2bb7dbf0f8e149784bb19f28c0baa228bdbfbfe0335793080a99aee7f92a9976864ae53a35fc0ac8 SHA512 c69fdd7a27b7980c6e537387a510cfab65d0b252492576ffae3caac930bd2efad29edb604f654c194cc0a485894c8fbd3a5dc63e44359c95fc62fd055066b595
diff --git a/sys-apps/coreutils/coreutils-9.0.ebuild b/sys-apps/coreutils/coreutils-9.0.ebuild
deleted file mode 100644
index ecfbcd3f4be6..000000000000
--- a/sys-apps/coreutils/coreutils-9.0.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit flag-o-matic python-any-r1 toolchain-funcs
-
-PATCH="${PN}-8.30-patches-01"
-DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
-HOMEPAGE="https://www.gnu.org/software/coreutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- !vanilla? (
- mirror://gentoo/${PATCH}.tar.xz
- https://dev.gentoo.org/~polynomial-c/dist/${PATCH}.tar.xz
- )"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
-IUSE="acl caps gmp hostname kill multicall nls 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] )
- 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-lang/perl
- dev-perl/Expect
- dev-util/strace
- ${PYTHON_DEPS}
- )
-"
-RDEPEND+="
- hostname? ( !sys-apps/net-tools[hostname] )
- kill? (
- !sys-apps/util-linux[kill]
- !sys-process/procps[kill]
- )
- !app-misc/realpath
- !<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"
-
-pkg_setup() {
- if use test ; then
- python-any-r1_pkg_setup
- fi
-}
-
-src_prepare() {
- local PATCHES=(
- )
-
- if ! use vanilla ; then
- PATCHES+=( "${WORKDIR}"/patch )
- PATCHES+=( "${FILESDIR}"/${PN}-8.32-sandbox-env-test.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() {
- 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"
- --enable-largefile
- $(usex caps '' --disable-libcap)
- $(use_enable nls)
- $(use_enable acl)
- $(use_enable multicall single-binary)
- $(use_enable xattr)
- $(use_with gmp libgmp)
- )
-
- 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() {
- # Known to fail with FEATURES=usersandbox (bug #439574):
- # - tests/du/long-from-unreadable.sh} (bug #413621)
- # - tests/rm/deep-2.sh (bug #413621)
- # - tests/dd/no-allocate.sh (bug #629660)
- if has usersandbox ${FEATURES} ; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- # 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
- #export RUN_EXPENSIVE_TESTS="yes"
- #export FETISH_GROUPS="portage wheel"
- env PATH="${T}/mount-wrappers:${PATH}" \
- emake -j1 -k check
-}
-
-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.0-r1.ebuild b/sys-apps/coreutils/coreutils-9.1-r1.ebuild
index 6f7eccb90d52..4594d9dae0bb 100644
--- a/sys-apps/coreutils/coreutils-9.0-r1.ebuild
+++ b/sys-apps/coreutils/coreutils-9.1-r1.ebuild
@@ -3,22 +3,36 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8..10} )
+# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils
+# The upstream coreutils maintianers also maintain the package in Fedora and may
+# backport fixes which we want to pick up.
-inherit flag-o-matic python-any-r1 toolchain-funcs
+PYTHON_COMPAT=( python3_{8..10} )
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/coreutils.asc
+inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
-PATCH="${PN}-8.30-patches-01"
+MY_PATCH="${PN}-9.0_p20220409-patches-01"
DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
HOMEPAGE="https://www.gnu.org/software/coreutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- !vanilla? (
- mirror://gentoo/${PATCH}.tar.xz
- https://dev.gentoo.org/~polynomial-c/dist/${PATCH}.tar.xz
- )"
+
+if [[ ${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).193-54bec"
+ 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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+fi
+
+SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test vanilla xattr"
RESTRICT="!test? ( test )"
@@ -42,6 +56,7 @@ BDEPEND="
dev-util/strace
${PYTHON_DEPS}
)
+ verify-sig? ( sec-keys/openpgp-keys-coreutils )
"
RDEPEND+="
hostname? ( !sys-apps/net-tools[hostname] )
@@ -64,15 +79,23 @@ pkg_setup() {
fi
}
+src_unpack() {
+ if 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() {
local PATCHES=(
# Upstream patches
- "${FILESDIR}"/${P}-fix-chmod-symlink-exit.patch
+ "${FILESDIR}"/${P}-fix-rename-simple-backups.patch
)
if ! use vanilla ; then
PATCHES+=( "${WORKDIR}"/patch )
- PATCHES+=( "${FILESDIR}"/${PN}-8.32-sandbox-env-test.patch )
fi
default
@@ -176,8 +199,7 @@ src_test() {
addwrite /dev/full
#export RUN_EXPENSIVE_TESTS="yes"
#export FETISH_GROUPS="portage wheel"
- env PATH="${T}/mount-wrappers:${PATH}" \
- emake -j1 -k check
+ env PATH="${T}/mount-wrappers:${PATH}" emake -k check VERBOSE=yes
}
src_install() {
diff --git a/sys-apps/coreutils/coreutils-9.1.ebuild b/sys-apps/coreutils/coreutils-9.1.ebuild
index 776a67104587..7b78b8fa9d13 100644
--- a/sys-apps/coreutils/coreutils-9.1.ebuild
+++ b/sys-apps/coreutils/coreutils-9.1.ebuild
@@ -22,7 +22,7 @@ else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
fi
SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )"
diff --git a/sys-apps/coreutils/files/coreutils-9.1-fix-rename-simple-backups.patch b/sys-apps/coreutils/files/coreutils-9.1-fix-rename-simple-backups.patch
new file mode 100644
index 000000000000..33b5f391ab2a
--- /dev/null
+++ b/sys-apps/coreutils/files/coreutils-9.1-fix-rename-simple-backups.patch
@@ -0,0 +1,38 @@
+https://src.fedoraproject.org/rpms/coreutils/raw/f672fec4364e71c6e5a30d4026d6bdb7cf332eed/f/gnulib-simple-backup-fix.patch
+https://bugs.gnu.org/55029
+
+commit 7347caeb9d902d3fca2c11f69a55a3e578d93bfe
+Author: Paul Eggert <eggert@cs.ucla.edu>
+Date: Wed Apr 20 19:34:57 2022 -0700
+
+ backupfile: fix bug when renaming simple backups
+
+ * lib/backupfile.c (backupfile_internal): Fix bug when RENAME
+ and when doing simple backups. Problem reported by Steve Ward in:
+ https://bugs.gnu.org/55029
+
+--- a/lib/backupfile.c
++++ b/lib/backupfile.c
+@@ -332,7 +332,7 @@ backupfile_internal (int dir_fd, char const *file,
+ return s;
+
+ DIR *dirp = NULL;
+- int sdir = AT_FDCWD;
++ int sdir = dir_fd;
+ idx_t base_max = 0;
+ while (true)
+ {
+@@ -371,10 +371,9 @@ backupfile_internal (int dir_fd, char const *file,
+ if (! rename)
+ break;
+
+- int olddirfd = sdir < 0 ? dir_fd : sdir;
+- idx_t offset = sdir < 0 ? 0 : base_offset;
++ idx_t offset = backup_type == simple_backups ? 0 : base_offset;
+ unsigned flags = backup_type == simple_backups ? 0 : RENAME_NOREPLACE;
+- if (renameatu (olddirfd, file + offset, sdir, s + offset, flags) == 0)
++ if (renameatu (sdir, file + offset, sdir, s + offset, flags) == 0)
+ break;
+ int e = errno;
+ if (! (e == EEXIST && extended))
+