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