]> git.pld-linux.org Git - packages/rsync.git/blame - rsync.spec
- rel 6; actually apply the patch
[packages/rsync.git] / rsync.spec
CommitLineData
9323ad32
JR
1# TODO:
2# 3.1.3 rsyncd segfaults very early in server rsync:// mode (both inetd and standalone)
3# rsync[27223]: segfault at 7468 ip 00007f4281c56e81 sp 00007ffc29186160 error 4 in libc-2.27.so[7f4281bd3000+1b4000]
b555150c 4#
18124c65 5# Conditional build:
6%bcond_with rsh # set remote shell command to rsh instead of ssh (old behaviour)
83e6a663 7%bcond_with tests # perform "make test"
18124c65 8#
082eeb69
ER
9%ifarch alpha
10%undefine with_tests
11%endif
e1feaa4b 12Summary: Program for efficient remote updates of files
24cc1053
ER
13Summary(es.UTF-8): Programa para actualizar archivos remotos de forma eficiente
14Summary(ko.UTF-8): 네트워크를 통한 파일동기화를 위한 프로그램
15Summary(pl.UTF-8): Program do wydajnego zdalnego uaktualniania plików
16Summary(pt_BR.UTF-8): Programa para atualizar arquivos remotos de forma eficiente
17Summary(ru.UTF-8): Программа для эффективного удаленного обновления файлов
18Summary(uk.UTF-8): Програма для ефективного віддаленого оновлення файлів
19Summary(zh_CN.UTF-8): [通讯]传输工具
20Summary(zh_TW.UTF-8): [喙啪]\e$(B6G?i火(c\e(B
44a71ba1 21Name: rsync
615041e0 22Version: 3.1.2
2f505fee 23Release: 6
615041e0 24Epoch: 1
c9e14be2 25License: GPL v3+
b7135bf0 26Group: Networking/Utilities
11097142 27Source0: http://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
615041e0 28# Source0-md5: 0f758d7e000c0f7f7d3792610fad70cb
61a6555f 29Source1: http://rsync.samba.org/ftp/rsync/rsync-patches-%{version}.tar.gz
615041e0 30# Source1-md5: f412602a3cba0b872adfaed905a0aa28
61a6555f
AM
31Source2: %{name}.inet
32Source3: %{name}.init
33Source4: %{name}.sysconfig
34Source5: %{name}d.logrotate
d32c1932 35Patch0: %{name}-config.patch
f5c6b2d3
AM
36Patch1: https://tobi.oetiker.ch/patches/rsync-3.1.2-1-fadvise.patch
37# Patch1-md5: b055468e7cbc5d829aa943f07916d458
7846f798 38URL: http://rsync.samba.org/
148780a3 39BuildRequires: acl-devel
ee3bf881 40BuildRequires: autoconf >= 2.59
fd592fcf 41BuildRequires: automake
bbd47287 42BuildRequires: popt-devel
36bd60dd 43BuildRequires: rpmbuild(macros) >= 1.318
9e694c62 44BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
f6135b0e 45
94b2676a 46%define _duplicate_files_terminate_build 0
b555150c
JB
47%define _sysconfdir /etc/rsyncd
48
f6135b0e 49%description
50rsync is a replacement for rcp that has many more features.
51
52rsync uses the "rsync algorithm" which provides a very fast method for
53bringing remote files into sync. It does this by sending just the
54differences in the files across the link, without requiring that both
55sets of files are present at one of the ends of the link beforehand.
56
57A technical report describing the rsync algorithm is included with
854040a4 58this package.
f6135b0e 59
829ded76
JR
60%description -l es.UTF-8
61rsync es un substituto más rápido y flexible para rcp que permite la
62sincronización de archivos o directorios, vía red, de forma rápida y
63eficiente, entre diferentes máquinas transfiriendo solamente las
1d21ccde 64diferencias entre estos directorios de forma compactada. No necesita
829ded76
JR
65que ninguna de las máquinas tengan una copia de lo que está en la
66otra. Está disponible en este paquete, una relación técnica
1d21ccde 67describiendo el algoritmo usado por el rsync.
68
829ded76
JR
69%description -l ko.UTF-8
70Rsync는 원격 호스트 파일을 매우 빨리 동기화하는데 신뢰할만한
71알고리즘을 사용한다. Rsync는 파일의 전체를 보내는 것 대신에 네트웍을
72통해 파일의 다른 부분만을 전송하기 때문에 빠르다. Rsync는 강력한 미러
73프로세스 혹은 rcp 커멘드를 통한 더 우수한 대체용으로써 사용된다. rsync
74알고리즘을 묘사하는 기술적인 내용은 이 꾸러미에 포함되어 있다.
75
76%description -l pl.UTF-8
77Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
78poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
79komunikacji i transportu plików do systemu zdalnego. Dokumentacja
80techniczna nowego algorytmu została również dołączona do pakietu.
81
82%description -l pt_BR.UTF-8
83O rsync é um substituto mais rápido e flexível para o rcp permitindo
84sincronização de arquivos ou diretórios via rede de forma rápida e
85eficiente entre diferentes máquinas transferindo somente as diferenças
86entre estes diretórios de forma compactada. Ele não precisa que
87nenhuma das máquinas tenha uma cópia do que está na outra.
88
89Um relatório técnico descrevendo o algoritmo usado pelo rsync está
90disponível neste pacote.
91
92%description -l ru.UTF-8
93rsync - это более быстрая и гибкая альтернатива rcp, позволяющая
94быструю и эффективную по отношению к ресурсам сети синхронизацию
95файлов или каталогов на различных машинах путем передачи только
96различий между ними в компрессированном виде. При этом совершенно не
97обязательно, чтобы одна машина имела у себя копию того, что есть на
98другой машине.
99
100%description -l uk.UTF-8
101rsync - це швидша та гнучкіша альтернатива rcp, яка забезпечує швидку
102та ефективну по відношенню до ресурсів мережі синхронізацію файлів чи
103каталогів на різних машинах шляхом передачі лише відмінностей між ними
104в компресованому виді. При цьому зовсім не обов'язково, щоб одна
105машина мала в себе копію того, що є на іншій машині.
1d21ccde 106
c0ab8b55 107%package -n rsyncd-inetd
be076d3d 108Summary: Files necessary to run rsync in daemon mode
24cc1053 109Summary(pl.UTF-8): Pliki niezbędne do uruchomienia rsynca w trybie serwera
b7135bf0 110Group: Networking/Daemons
f2db5eb2 111Requires: %{name} = %{epoch}:%{version}-%{release}
148780a3 112Requires: rc-inetd
c0ab8b55
PG
113Provides: rsyncd
114Obsoletes: rsyncd
115Obsoletes: rsyncd-standalone
be076d3d 116
c0ab8b55 117%description -n rsyncd-inetd
be076d3d
SZ
118rsync is a replacement for rcp that has many more features.
119
120rsync uses the "rsync algorithm" which provides a very fast method for
121bringing remote files into sync. It does this by sending just the
122differences in the files across the link, without requiring that both
123sets of files are present at one of the ends of the link beforehand.
124
125A technical report describing the rsync algorithm is included with
126this package.
127
829ded76
JR
128%description -n rsyncd-inetd -l pl.UTF-8
129Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
130poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
131komunikacji i transportu plików do systemu zdalnego. Dokumentacja
132techniczna nowego algorytmu została również dołączona do pakietu.
c0ab8b55
PG
133
134%package -n rsyncd-standalone
135Summary: Files necessary to run rsync in daemon mode
24cc1053 136Summary(pl.UTF-8): Pliki niezbędne do uruchomienia rsynca w trybie serwera
b7135bf0 137Group: Networking/Daemons
94148ea8 138Requires(post,preun): /sbin/chkconfig
f2db5eb2 139Requires: %{name} = %{epoch}:%{version}-%{release}
c0ab8b55 140Provides: rsyncd
b51fca32 141Obsoletes: rsyncd
c0ab8b55
PG
142Obsoletes: rsyncd-inetd
143
144%description -n rsyncd-standalone
145rsync is a replacement for rcp that has many more features.
146
147rsync uses the "rsync algorithm" which provides a very fast method for
148bringing remote files into sync. It does this by sending just the
149differences in the files across the link, without requiring that both
150sets of files are present at one of the ends of the link beforehand.
151
152A technical report describing the rsync algorithm is included with
153this package.
154
829ded76
JR
155%description -n rsyncd-standalone -l pl.UTF-8
156Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
157poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
158komunikacji i transportu plików do systemu zdalnego. Dokumentacja
159techniczna nowego algorytmu została również dołączona do pakietu.
be076d3d 160
f6135b0e 161%prep
61a6555f 162%setup -q -b1
d7ff894b 163%patch0 -p1
2f505fee 164%patch1 -p1
b73c62ab 165
61a6555f
AM
166# for compat with previous patched version
167patch -p1 -i patches/acls.diff || exit 1
168patch -p1 -i patches/xattrs.diff || exit 1
81cacf5d 169
f6135b0e 170%build
7846f798 171cp -f /usr/share/automake/config.sub .
48d3c2cd 172%{__autoheader}
4490f3a0 173%{__autoconf}
bbd47287 174%configure \
78dff7ac 175 LIBS="-lcrypto" \
18124c65 176 %{?with_rsh:--with-rsh=rsh} \
fbf643ad 177 --enable-ipv6 \
8ecc7ace
AM
178 --enable-acl-support \
179 --enable-xattr-support \
d46e8c94 180 --disable-debug \
fbc75855 181 --with-rsyncd-conf=%{_sysconfdir}/rsyncd.conf
233a0aea 182%{__make} proto
0fef7fa8 183%{__make}
f6135b0e 184
8ecc7ace
AM
185%{?with_tests:%{__make} test}
186
f6135b0e 187%install
188rm -rf $RPM_BUILD_ROOT
464464f2 189install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{sysconfig/rc-inetd,rc.d/init.d,logrotate.d,env.d},/var/log}
44a71ba1 190
95bf7754 191%{__make} install \
a3e2831a 192 prefix=$RPM_BUILD_ROOT%{_prefix} \
193 mandir=$RPM_BUILD_ROOT%{_mandir} \
51d15609 194 bindir=$RPM_BUILD_ROOT%{_bindir}
d7ff894b 195
3972ad9b 196:> $RPM_BUILD_ROOT/var/log/rsyncd.log
854040a4 197:> $RPM_BUILD_ROOT%{_sysconfdir}/rsyncd.secrets
44a71ba1 198
3972ad9b 199cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/rsyncd.conf
a6f19059 200#log file = /var/log/rsyncd.log
3972ad9b
PG
201EOF
202
7495c7e7 203cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/CVSIGNORE
8d6034a2
PG
204#CVSIGNORE=
205EOF
7495c7e7 206cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_RSH
8d6034a2
PG
207#RSYNC_RSH=
208EOF
7495c7e7 209cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PROXY
8d6034a2
PG
210#RSYNC_PROXY=
211EOF
7495c7e7 212cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PASSWORD
8d6034a2
PG
213#RSYNC_PASSWORD=
214EOF
215
61a6555f
AM
216install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/rsyncd
217install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyncd
218install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rsyncd
219install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/rsyncd
be076d3d 220
5e338362
JB
221%clean
222rm -rf $RPM_BUILD_ROOT
223
7495c7e7
ER
224%post
225%env_update
226
227%postun
228%env_update
229
c0ab8b55 230%post -n rsyncd-inetd
148780a3 231%service -q rc-inetd reload
be076d3d 232
c0ab8b55 233%postun -n rsyncd-inetd
148780a3
ER
234if [ "$1" = "0" ]; then
235 %service -q rc-inetd reload
46fe218b 236fi
be076d3d 237
c0ab8b55
PG
238%post -n rsyncd-standalone
239/sbin/chkconfig --add rsyncd
148780a3 240%service rsyncd restart "rsync server"
c0ab8b55 241
5e338362 242%preun -n rsyncd-standalone
c0ab8b55 243if [ "$1" = "0" ]; then
148780a3 244 %service rsyncd stop
c0ab8b55
PG
245 /sbin/chkconfig --del rsyncd
246fi
247
f6135b0e 248%files
44a71ba1 249%defattr(644,root,root,755)
ccf03c22 250%doc README NEWS OLDNEWS TODO support
ee3bf881
JB
251%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/CVSIGNORE
252%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_PASSWORD
253%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_PROXY
254%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_RSH
255%attr(755,root,root) %{_bindir}/rsync
256%{_mandir}/man1/rsync.1*
be076d3d 257
c0ab8b55 258%files -n rsyncd-inetd
be076d3d
SZ
259%defattr(644,root,root,755)
260%dir %{_sysconfdir}
652c814a
KK
261%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.conf
262%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.secrets
94148ea8 263%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
264%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/rsyncd
3972ad9b 265%attr(640,root,root) %ghost /var/log/rsyncd.log
ee3bf881 266%{_mandir}/man5/rsyncd.conf.5*
c0ab8b55
PG
267
268%files -n rsyncd-standalone
269%defattr(644,root,root,755)
270%dir %{_sysconfdir}
652c814a
KK
271%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.conf
272%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.secrets
94148ea8 273%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyncd
274%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
3972ad9b 275%attr(640,root,root) %ghost /var/log/rsyncd.log
86951d3a 276%attr(754,root,root) /etc/rc.d/init.d/rsyncd
ee3bf881 277%{_mandir}/man5/rsyncd.conf.5*
This page took 0.163836 seconds and 4 git commands to generate.