summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2020-06-21 11:30:29 +0200
committerLars Wendler <polynomial-c@gentoo.org>2020-06-21 11:31:07 +0200
commit6e2a72e6b9381c465f0e95914d044ba373f656ae (patch)
treeedd1439ff8c18c8f1f9abc5a7b94a10de4832981 /net-misc
parentnet-misc/rsync: Added live ebuild (diff)
downloadgentoo-6e2a72e6b9381c465f0e95914d044ba373f656ae.tar.gz
gentoo-6e2a72e6b9381c465f0e95914d044ba373f656ae.tar.bz2
gentoo-6e2a72e6b9381c465f0e95914d044ba373f656ae.zip
net-misc/rsync: Revbump fixing stunnel build and removed execstack
Closes: https://bugs.gentoo.org/728882 Closes: https://bugs.gentoo.org/728898 Package-Manager: Portage-2.3.101, Repoman-2.3.22 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/rsync/files/rsync-3.2.0-noexecstack.patch24
-rw-r--r--net-misc/rsync/files/rsync-3.2.0-simd_check.patch11
-rw-r--r--net-misc/rsync/rsync-3.2.0-r1.ebuild (renamed from net-misc/rsync/rsync-3.2.0.ebuild)48
3 files changed, 56 insertions, 27 deletions
diff --git a/net-misc/rsync/files/rsync-3.2.0-noexecstack.patch b/net-misc/rsync/files/rsync-3.2.0-noexecstack.patch
new file mode 100644
index 000000000000..918346062e6a
--- /dev/null
+++ b/net-misc/rsync/files/rsync-3.2.0-noexecstack.patch
@@ -0,0 +1,24 @@
+From 75901616c5f38a9ff6ba736c8281933e8ce64b8b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Holger=20Hoffst=C3=A4tte?= <holger@applied-asynchrony.com>
+Date: Sat, 20 Jun 2020 16:54:11 +0200
+Subject: [PATCH] Pass --noexecstack to assembler.
+
+This prevents Linux from rightfully complaining about an executable
+stack segment, which is widely considered a security hazard.
+---
+ Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 31ddc43b..60aff920 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -135,7 +135,7 @@ simd-checksum-x86_64.o: simd-checksum-x86_64.cpp
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/simd-checksum-x86_64.cpp
+
+ lib/md5-asm-x86_64.o: lib/md5-asm-x86_64.s
+- $(CC) -c -o $@ $(srcdir)/lib/md5-asm-x86_64.s
++ $(CC) -Wa,--noexecstack -c -o $@ $(srcdir)/lib/md5-asm-x86_64.s
+
+ tls$(EXEEXT): $(TLS_OBJ)
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TLS_OBJ) $(LIBS)
diff --git a/net-misc/rsync/files/rsync-3.2.0-simd_check.patch b/net-misc/rsync/files/rsync-3.2.0-simd_check.patch
index db3ee83dc0d0..255f2792dc07 100644
--- a/net-misc/rsync/files/rsync-3.2.0-simd_check.patch
+++ b/net-misc/rsync/files/rsync-3.2.0-simd_check.patch
@@ -11,14 +11,3 @@ https://github.com/WayneD/rsync/pull/24
CXX_VERSION=`$CXX -dumpversion | sed 's/\..*//g'`
if test "$CXX_VERSION" -ge "5"; then
CXX_OK=yes
---- rsync-3.2.0/configure.sh 2020-06-19 23:11:01.000000000 +0200
-+++ rsync-3.2.0/configure.sh 2020-06-19 23:11:01.000000000 +0200
-@@ -4889,7 +4889,7 @@
- if test x"$CXX" != x""; then
- CXX_VERSION=`$CXX --version 2>/dev/null | head -n 1`
- case "$CXX_VERSION" in
-- g++*)
-+ *g++*)
- CXX_VERSION=`$CXX -dumpversion | sed 's/\..*//g'`
- if test "$CXX_VERSION" -ge "5"; then
- CXX_OK=yes
diff --git a/net-misc/rsync/rsync-3.2.0.ebuild b/net-misc/rsync/rsync-3.2.0-r1.ebuild
index a14bbfdf048a..672e23e2d33b 100644
--- a/net-misc/rsync/rsync-3.2.0.ebuild
+++ b/net-misc/rsync/rsync-3.2.0-r1.ebuild
@@ -3,19 +3,27 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit flag-o-matic prefix python-any-r1 systemd
+inherit autotools flag-o-matic prefix systemd
DESCRIPTION="File transfer program to keep remote files into sync"
HOMEPAGE="https://rsync.samba.org/"
-SRC_URI="https://rsync.samba.org/ftp/rsync/src/${P}.tar.gz"
-[[ "${PV}" = *_pre* ]] && SRC_URI="https://rsync.samba.org/ftp/rsync/src-previews/${P/_/}.tar.gz"
+if [[ "${PV}" == *9999 ]] ; then
+ PYTHON_COMPAT=( python3_{6,7,8} )
+ inherit git-r3 python-any-r1
+ EGIT_REPO_URI="https://github.com/WayneD/rsync.git"
+else
+ if [[ "${PV}" == *_pre* ]] ; then
+ SRC_DIR="src-previews"
+ else
+ SRC_DIR="src"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ fi
+ SRC_URI="https://rsync.samba.org/ftp/rsync/${SRC_DIR}/${P/_/}.tar.gz"
+ S="${WORKDIR}/${P/_/}"
+fi
LICENSE="GPL-3"
SLOT="0"
-[[ ${PV} = *_pre* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE_CPU_FLAGS_X86=" sse2"
IUSE="acl examples iconv ipv6 libressl lz4 ssl static stunnel system-zlib xattr xxhash zstd"
IUSE+=" ${IUSE_CPU_FLAGS_X86// / cpu_flags_x86_}"
@@ -36,20 +44,29 @@ RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )"
-BDEPEND="${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/commonmark[${PYTHON_USEDEP}]
- ')"
-
-S="${WORKDIR}/${P/_/}"
+if [[ "${PV}" == *9999 ]] ; then
+ BDEPEND="${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/commonmark[${PYTHON_USEDEP}]
+ ')"
+fi
+# Only required for live ebuild
python_check_deps() {
has_version "dev-python/commonmark[${PYTHON_USEDEP}]"
}
+PATCHES=(
+ "${FILESDIR}/${P}-simd_check.patch"
+ "${FILESDIR}/${P}-noexecstack.patch" #728882
+)
+
src_prepare() {
default
- eapply -Z "${FILESDIR}/${PN}-3.2.0-simd_check.patch"
+
+ eaclocal -I m4
+ eautoconf -o configure.sh
+ eautoheader && touch config.h.in
}
src_configure() {
@@ -76,7 +93,7 @@ src_configure() {
fi
econf "${myeconfargs[@]}"
- touch proto.h-tstamp #421625
+ [[ "${PV}" == *9999 ]] || touch proto.h-tstamp #421625
}
src_install() {
@@ -98,7 +115,6 @@ src_install() {
# Install stunnel helpers
if use stunnel ; then
- emake DESTDIR="${D}" install-ssl-client
emake DESTDIR="${D}" install-ssl-daemon
fi