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