#
# Conditional build:
%bcond_with rsh # set remote shell command to rsh instead of ssh (old behaviour)
-%bcond_with tests # perform "make test"
+%bcond_with fadvise # apply fadvise patch
+%bcond_without tests # perform "make test"
#
-%ifarch alpha
-%undefine with_tests
-%endif
Summary: Program for efficient remote updates of files
Summary(es.UTF-8): Programa para actualizar archivos remotos de forma eficiente
Summary(ko.UTF-8): 네트워크를 통한 파일동기화를 위한 프로그램
Summary(zh_CN.UTF-8): [通讯]传输工具
Summary(zh_TW.UTF-8): [喙啪]\e$(B6G?i火(c\e(B
Name: rsync
-Version: 3.1.2
-Release: 4
+Version: 3.2.3
+Release: 3
Epoch: 1
License: GPL v3+
Group: Networking/Utilities
-Source0: http://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
-# Source0-md5: 0f758d7e000c0f7f7d3792610fad70cb
-Source1: http://rsync.samba.org/ftp/rsync/rsync-patches-%{version}.tar.gz
-# Source1-md5: f412602a3cba0b872adfaed905a0aa28
+Source0: https://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
+# Source0-md5: 209f8326f5137d8817a6276d9577a2f1
+Source1: https://rsync.samba.org/ftp/rsync/%{name}-patches-%{version}.tar.gz
+# Source1-md5: 884c872b55c7431f4c4e8d8bf182fafa
Source2: %{name}.inet
Source3: %{name}.init
Source4: %{name}.sysconfig
Source5: %{name}d.logrotate
Patch0: %{name}-config.patch
-URL: http://rsync.samba.org/
+Patch1: %{name}-fadvise.patch
+Patch2: lchmod.patch
+URL: https://rsync.samba.org/
BuildRequires: acl-devel
-BuildRequires: autoconf >= 2.59
+BuildRequires: autoconf >= 2.69
BuildRequires: automake
+BuildRequires: libstdc++-devel
+BuildRequires: lz4-devel
+BuildRequires: openssl-devel
BuildRequires: popt-devel
+BuildRequires: python3 >= 1:3
+BuildRequires: python3-commonmark
BuildRequires: rpmbuild(macros) >= 1.318
+BuildRequires: xxHash-devel >= 0.8.0
+BuildRequires: zstd-devel
+%if %{with tests}
+BuildRequires: fakeroot >= 1.26
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _duplicate_files_terminate_build 0
%prep
%setup -q -b1
%patch0 -p1
+%{?with_fadvise:%patch1 -p1}
+%patch2 -p1
-# for compat with previous patched version
-patch -p1 -i patches/acls.diff || exit 1
-patch -p1 -i patches/xattrs.diff || exit 1
+sed -i -e 's|#!/usr/bin/env bash|#!/bin/bash|' rsync-ssl
%build
cp -f /usr/share/automake/config.sub .
%{__autoconf}
%configure \
LIBS="-lcrypto" \
- %{?with_rsh:--with-rsh=rsh} \
- --enable-ipv6 \
--enable-acl-support \
- --enable-xattr-support \
--disable-debug \
+ --enable-ipv6 \
+ --enable-xattr-support \
+ %{?with_rsh:--with-rsh=rsh} \
--with-rsyncd-conf=%{_sysconfdir}/rsyncd.conf
%{__make} proto
%{__make}
#RSYNC_PASSWORD=
EOF
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/rsyncd
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyncd
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rsyncd
-install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/rsyncd
+install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyncd
+cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/rsyncd
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rsyncd
+cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/rsyncd
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc README NEWS OLDNEWS TODO support
+%doc README.md NEWS.md TODO support
%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/CVSIGNORE
%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_PASSWORD
%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_PROXY
%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_RSH
%attr(755,root,root) %{_bindir}/rsync
+%attr(755,root,root) %{_bindir}/rsync-ssl
%{_mandir}/man1/rsync.1*
+%{_mandir}/man1/rsync-ssl.1*
%files -n rsyncd-inetd
%defattr(644,root,root,755)