]> git.pld-linux.org Git - packages/rsync.git/blobdiff - rsync.spec
- rel 2; lchmod can return ENOTSUP on glibc 2.32 and older kernels (like 4.4)
[packages/rsync.git] / rsync.spec
index 74df5ebc0edf35ccb185a4debe81d9869fa85754..ac0243a426134e09aa201ce2879329af59355c97 100644 (file)
@@ -1,6 +1,10 @@
+# TODO:
+#   3.1.3 rsyncd segfaults very early in server rsync:// mode (both inetd and standalone)
+#   rsync[27223]: segfault at 7468 ip 00007f4281c56e81 sp 00007ffc29186160 error 4 in libc-2.27.so[7f4281bd3000+1b4000]
 #
 # Conditional build:
 %bcond_with    rsh     # set remote shell command to rsh instead of ssh (old behaviour)
+%bcond_with    fadvise # apply fadvise patch
 %bcond_with    tests   # perform "make test"
 #
 %ifarch alpha
@@ -16,29 +20,38 @@ Summary(uk.UTF-8):  Програма для ефективного віддале
 Summary(zh_CN.UTF-8):  [通讯]传输工具
 Summary(zh_TW.UTF-8):  [喙啪]\e$(B6G?i火(c\e(B
 Name:          rsync
-Version:       3.0.9
-Release:       1
-License:       GPL
+Version:       3.2.3
+Release:       2
+Epoch:         1
+License:       GPL v3+
 Group:         Networking/Utilities
-Source0:       http://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
-# Source0-md5: 5ee72266fe2c1822333c407e1761b92b
-Source1:       http://rsync.samba.org/ftp/rsync/rsync-patches-%{version}.tar.gz
-# Source1-md5: 992677c7f1ac2884d9469b3a0eff594a
+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
-Patch1:                %{name}-dparam.patch
-URL:           http://rsync.samba.org/
+Patch1:                %{name}-fadvise.patch
+Patch2:                lchmod.patch
+URL:           https://rsync.samba.org/
 BuildRequires: acl-devel
-BuildRequires: autoconf >= 2.52
+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
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                _duplicate_files_terminate_build        0
 %define                _sysconfdir     /etc/rsyncd
 
 %description
@@ -103,7 +116,7 @@ rsync - це швидша та гнучкіша альтернатива rcp, я
 Summary:       Files necessary to run rsync in daemon mode
 Summary(pl.UTF-8):     Pliki niezbędne do uruchomienia rsynca w trybie serwera
 Group:         Networking/Daemons
-Requires:      %{name} = %{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      rc-inetd
 Provides:      rsyncd
 Obsoletes:     rsyncd
@@ -131,7 +144,7 @@ Summary:    Files necessary to run rsync in daemon mode
 Summary(pl.UTF-8):     Pliki niezbędne do uruchomienia rsynca w trybie serwera
 Group:         Networking/Daemons
 Requires(post,preun):  /sbin/chkconfig
-Requires:      %{name} = %{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Provides:      rsyncd
 Obsoletes:     rsyncd
 Obsoletes:     rsyncd-inetd
@@ -156,12 +169,10 @@ techniczna nowego algorytmu została również dołączona do pakietu.
 %prep
 %setup -q -b1
 %patch0 -p1
-%patch1 -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
-patch -p1 < patches/openssl-support.diff || exit 1
+sed -i -e 's|#!/usr/bin/env bash|#!/bin/bash|' rsync-ssl
 
 %build
 cp -f /usr/share/automake/config.sub .
@@ -169,12 +180,11 @@ cp -f /usr/share/automake/config.sub .
 %{__autoconf}
 %configure \
        LIBS="-lcrypto" \
-       %{?with_rsh:--with-rsh=rsh} \
-       --enable-ipv6 \
        --enable-acl-support \
-       --enable-openssl \
-       --enable-xattr-support \
        --disable-debug \
+       --enable-ipv6 \
+       --enable-xattr-support \
+       %{?with_rsh:--with-rsh=rsh} \
        --with-rsyncd-conf=%{_sysconfdir}/rsyncd.conf
 %{__make} proto
 %{__make}
@@ -210,10 +220,10 @@ cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PASSWORD
 #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
@@ -244,10 +254,15 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc README NEWS OLDNEWS TODO
-%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/*
-%attr(755,root,root) %{_bindir}/*
-%{_mandir}/man1/*
+%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)
@@ -257,7 +272,7 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/rsyncd
 %attr(640,root,root) %ghost /var/log/rsyncd.log
-%{_mandir}/man5/*
+%{_mandir}/man5/rsyncd.conf.5*
 
 %files -n rsyncd-standalone
 %defattr(644,root,root,755)
@@ -268,4 +283,4 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
 %attr(640,root,root) %ghost /var/log/rsyncd.log
 %attr(754,root,root) /etc/rc.d/init.d/rsyncd
-%{_mandir}/man5/*
+%{_mandir}/man5/rsyncd.conf.5*
This page took 1.140202 seconds and 4 git commands to generate.