mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
net-misc/rsync: add 3.4.2
The test framework is changed to runtests.py in this release which accepts an argument for the number of parallel jobs, but it's not clear how we can just build test deps first with make rather than run tests themselves, and there's no env var AFAICT for passing anything down to that script, so let's avoid running tests twice. Bug: https://bugs.gentoo.org/972779 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
@@ -1,2 +1,4 @@
|
||||
DIST rsync-3.4.1.tar.gz 1172739 BLAKE2B 79c1cad697547059ee241e20c26d7f97bed3ad062deb856d31a617fead333a2d9f62c7c47c1efaf70033dbc358fe547d034c35e8181abb51a1fc893557882bc7 SHA512 a3ecde4843ddb795308dca88581b868ac0221eb6f88a1477d7a9a2ecb4e4686042966bdddbab40866f90a4715d3104daa7b83222ddf0f3387b796a86bde8e5c2
|
||||
DIST rsync-3.4.1.tar.gz.asc 862 BLAKE2B 5684bd57423e8e43b973c2c416c4897901a3a8b33c22690eaedc609109088e1d5d70f5cf5deaafefc69f547d198b5f8b17f3c484211d545095b19dac7e0bc7d3 SHA512 c83e187c88110b6119a023d239c76291f15124760fd245ead17e747424946e7864187aae96af6f5930cb84beff7308b99daa0566f306c9f2de51e2475704c320
|
||||
DIST rsync-3.4.2.tar.gz 1190383 BLAKE2B bfc8aa3dc3b75de5e81519eab6d505ebd4d05ebc79c3336ebc925486fa6267cd13a37844d0817183cec68215788bc07e4a281f716bcd0bc7d93daa995df9122c SHA512 74f623e7f5234ffc12fc60d30f4439bc18796404c866365b7c3bfda87f42b33fc01ce6060187534b6b47d799f5b47fcdb84717faff88b6ce30eb230f1b93afe7
|
||||
DIST rsync-3.4.2.tar.gz.asc 862 BLAKE2B b6cc8bbb94fae5111143c9b0fe7aeca07b29494011060b7b00d98d2e6058f1d0474cc87f8db8d2d2812f1b039a4eb6ec386e4d706ee99bc4396ba995da14acae SHA512 c89f24640438566387aeee553c133859667c3e225439c3f113346241e3802c0652ebf6ab6005cc0f412a0f6e4bc055d76dd422691c3f024f347813183f66076e
|
||||
|
||||
204
net-misc/rsync/rsync-3.4.2.ebuild
Normal file
204
net-misc/rsync/rsync-3.4.2.ebuild
Normal file
@@ -0,0 +1,204 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Uncomment when introducing a patch which touches configure
|
||||
RSYNC_NEEDS_AUTOCONF=1
|
||||
PYTHON_COMPAT=( python3_{11..14} )
|
||||
inherit flag-o-matic prefix python-single-r1 systemd
|
||||
|
||||
DESCRIPTION="File transfer program to keep remote files into sync"
|
||||
HOMEPAGE="https://rsync.samba.org/"
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/WayneD/rsync.git"
|
||||
inherit autotools git-r3
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
else
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/andrewtridgell.asc
|
||||
inherit verify-sig
|
||||
|
||||
if [[ -n ${RSYNC_NEEDS_AUTOCONF} ]] ; then
|
||||
inherit autotools
|
||||
fi
|
||||
|
||||
if [[ ${PV} == *_pre* ]] ; then
|
||||
SRC_DIR="src-previews"
|
||||
else
|
||||
SRC_DIR="src"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
SRC_URI="https://rsync.samba.org/ftp/rsync/${SRC_DIR}/${P/_/}.tar.gz
|
||||
verify-sig? ( https://rsync.samba.org/ftp/rsync/${SRC_DIR}/${P/_/}.tar.gz.asc )"
|
||||
S="${WORKDIR}"/${P/_/}
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="acl examples iconv lz4 rrsync ssl stunnel system-zlib xattr +xxhash zstd"
|
||||
REQUIRED_USE+=" examples? ( ${PYTHON_REQUIRED_USE} )"
|
||||
REQUIRED_USE+=" rrsync? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/popt-1.19
|
||||
acl? ( virtual/acl )
|
||||
examples? (
|
||||
${PYTHON_DEPS}
|
||||
dev-lang/perl
|
||||
)
|
||||
lz4? ( app-arch/lz4:= )
|
||||
rrsync? (
|
||||
${PYTHON_DEPS}
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/bracex[${PYTHON_USEDEP}]
|
||||
')
|
||||
)
|
||||
ssl? ( dev-libs/openssl:= )
|
||||
system-zlib? ( virtual/zlib:= )
|
||||
xxhash? ( >=dev-libs/xxhash-0.8 )
|
||||
zstd? ( >=app-arch/zstd-1.4:= )
|
||||
iconv? ( virtual/libiconv )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
examples? ( ${PYTHON_DEPS} )
|
||||
rrsync? ( ${PYTHON_DEPS} )
|
||||
"
|
||||
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
BDEPEND+=" ${PYTHON_DEPS}
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/commonmark[${PYTHON_USEDEP}]
|
||||
')"
|
||||
else
|
||||
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-andrewtridgell )"
|
||||
fi
|
||||
|
||||
pkg_setup() {
|
||||
# - USE=examples needs Python itself at runtime, but nothing else
|
||||
# - 9999 needs commonmark at build time
|
||||
if [[ ${PV} == *9999 ]] || use examples || use rrsync; then
|
||||
python-single-r1_pkg_setup
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i -e 's/AC_HEADER_MAJOR_FIXED/AC_HEADER_MAJOR/' configure.ac
|
||||
|
||||
if [[ ${PV} == *9999 || -n ${RSYNC_NEEDS_AUTOCONF} ]] ; then
|
||||
eaclocal -I m4
|
||||
eautoconf -o configure.sh
|
||||
eautoheader && touch config.h.in
|
||||
fi
|
||||
|
||||
if use examples || use rrsync; then
|
||||
python_fix_shebang support/
|
||||
fi
|
||||
|
||||
if [[ -f rrsync.1 ]]; then
|
||||
# If the pre-build rrsync.1 man page exists, then link to it
|
||||
# from support/rrsync.1 to avoid rsync's build system attempting
|
||||
# re-creating the man page (bug #883049).
|
||||
ln -s ../rrsync.1 support/rrsync.1 || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--with-rsyncd-conf="${EPREFIX}"/etc/rsyncd.conf
|
||||
--without-included-popt
|
||||
--enable-ipv6
|
||||
$(use_enable acl acl-support)
|
||||
$(use_enable iconv)
|
||||
$(use_enable lz4)
|
||||
$(use_with rrsync)
|
||||
$(use_enable ssl openssl)
|
||||
$(use_with !system-zlib included-zlib)
|
||||
$(use_enable xattr xattr-support)
|
||||
$(use_enable xxhash)
|
||||
$(use_enable zstd)
|
||||
)
|
||||
|
||||
# https://github.com/WayneD/rsync/pull/428
|
||||
if is-flagq -fsanitize=undefined ; then
|
||||
sed -E -i \
|
||||
-e 's:#define CAREFUL_ALIGNMENT (0|1):#define CAREFUL_ALIGNMENT 1:' \
|
||||
byteorder.h || die
|
||||
append-flags -DCAREFUL_ALIGNMENT
|
||||
fi
|
||||
|
||||
# workaround for autoconf-2.73 using C23:
|
||||
# https://bugs.gentoo.org/972320
|
||||
append-cflags -std=gnu17
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
newconfd "${FILESDIR}"/rsyncd.conf.d rsyncd
|
||||
newinitd "${FILESDIR}"/rsyncd.init.d-r1 rsyncd
|
||||
|
||||
dodoc NEWS.md README.md TODO tech_report.tex
|
||||
|
||||
insinto /etc
|
||||
newins "${FILESDIR}"/rsyncd.conf-3.2.7-r5 rsyncd.conf
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/rsyncd.logrotate rsyncd
|
||||
|
||||
insinto /etc/xinetd.d
|
||||
newins "${FILESDIR}"/rsyncd.xinetd-3.0.9-r1 rsyncd
|
||||
|
||||
# Install stunnel helpers
|
||||
if use stunnel ; then
|
||||
emake DESTDIR="${D}" install-ssl-daemon
|
||||
fi
|
||||
|
||||
# Install the useful contrib scripts
|
||||
if use examples ; then
|
||||
# The 'rrsync' script is installed conditionally via the 'rrysnc'
|
||||
# USE flag, and not via the 'examples' USE flag.
|
||||
rm support/rrsync* || die
|
||||
|
||||
exeinto /usr/share/rsync
|
||||
doexe support/*
|
||||
|
||||
rm -f "${ED}"/usr/share/rsync/{Makefile*,*.c}
|
||||
fi
|
||||
|
||||
eprefixify "${ED}"/etc/{,xinetd.d}/rsyncd*
|
||||
|
||||
systemd_newunit packaging/systemd/rsync.service rsyncd.service
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if grep -Eqis '^[[:space:]]use chroot[[:space:]]*=[[:space:]]*(no|0|false)' \
|
||||
"${EROOT}"/etc/rsyncd.conf "${EROOT}"/etc/rsync/rsyncd.conf ; then
|
||||
ewarn "You have disabled chroot support in your rsyncd.conf. This"
|
||||
ewarn "is a security risk which you should fix. Please check your"
|
||||
ewarn "/etc/rsyncd.conf file and fix the setting 'use chroot'."
|
||||
fi
|
||||
|
||||
if use stunnel ; then
|
||||
einfo "Please install \">=net-misc/stunnel-4\" in order to use stunnel feature."
|
||||
einfo
|
||||
einfo "You maybe have to update the certificates configured in"
|
||||
einfo "${EROOT}/etc/stunnel/rsync.conf"
|
||||
fi
|
||||
|
||||
if use system-zlib ; then
|
||||
ewarn "Using system-zlib is incompatible with <rsync-3.1.1 when"
|
||||
ewarn "using the --compress option."
|
||||
ewarn
|
||||
ewarn "When syncing with >=rsync-3.1.1 built with bundled zlib,"
|
||||
ewarn "and the --compress option, add --new-compress (-zz)."
|
||||
ewarn
|
||||
ewarn "For syncing the portage tree, add:"
|
||||
ewarn "PORTAGE_RSYNC_EXTRA_OPTS=\"--new-compress\" to make.conf"
|
||||
fi
|
||||
}
|
||||
@@ -41,8 +41,6 @@ IUSE="acl examples iconv lz4 rrsync ssl stunnel system-zlib xattr +xxhash zstd"
|
||||
REQUIRED_USE+=" examples? ( ${PYTHON_REQUIRED_USE} )"
|
||||
REQUIRED_USE+=" rrsync? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# attr is autodetected and then dropped by -Wl,--as-needed:
|
||||
# https://github.com/RsyncProject/rsync/pull/753
|
||||
RDEPEND="
|
||||
>=dev-libs/popt-1.19
|
||||
acl? ( virtual/acl )
|
||||
|
||||
Reference in New Issue
Block a user