]> git.pld-linux.org Git - packages/dar.git/blame - dar.spec
- 2.3.10
[packages/dar.git] / dar.spec
CommitLineData
5f5a8b21 1#
2# Conditional build:
248dd4dd 3%bcond_without ea # build without support for linux extented attributes
12760b79 4%bcond_without static # build without dar_static
9369df59 5%bcond_without static_libs # don't build static libraries
097d504f 6#
a5f8478f 7%if %{with static}
8%define with_static_libs 1
9%endif
10#
fbe89be6 11Summary: dar makes backup of a directory tree and files
83798cfc 12Summary(pl.UTF-8): dar - narzędzie do tworzenia kopii zapasowych drzew katalogów i plików
fbe89be6 13Name: dar
d146c115 14Version: 2.3.10
afbac5c1 15Release: 1
9f50fcb5 16License: GPL v2
0e3cdb42 17Group: Applications/Archiving
845d862f 18Source0: http://dl.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
d146c115 19# Source0-md5: f134276bb9dc761dbb318c5511e65833
097d504f 20Patch0: %{name}-opt.patch
fbe89be6 21URL: http://dar.linux.free.fr/
248dd4dd 22%{?with_ea:BuildRequires: attr-devel >= 2.4.16-3}
8732677b 23BuildRequires: autoconf >= 2.59
097d504f 24BuildRequires: automake
efc8da18 25BuildRequires: bzip2-devel
e4cfcb7c 26BuildRequires: doxygen >= 1:1.3
c5440f43 27BuildRequires: e2fsprogs-devel
b9414f71
JB
28%ifarch alpha
29# ICE in 3.3.x up to 3.3.2 - require patched version
30BuildRequires: gcc-c++ >= 5:3.3.2-0.3
31%endif
d900f495 32BuildRequires: gettext-devel
853009b5 33BuildRequires: groff
efc8da18 34BuildRequires: libstdc++-devel
57d80953 35BuildRequires: libtool >= 2:1.4d
0e3cdb42 36BuildRequires: openssl-devel >= 0.9.7k
efc8da18 37BuildRequires: zlib-devel
42343508 38%if %{with static}
248dd4dd 39%{?with_ea:BuildRequires: attr-static}
efc8da18 40BuildRequires: bzip2-static
5f5a8b21 41BuildRequires: glibc-static
42BuildRequires: libstdc++-static
d900f495 43BuildRequires: openssl-static
5f5a8b21 44BuildRequires: zlib-static
45%endif
5a9f3364 46Requires: %{name}-libs = %{version}-%{release}
fbe89be6 47BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
a5f8478f 49# don't generate `Requires' for sample scripts
50%define _noautoreq bash perl
51
fbe89be6 52%description
fbe89be6 53dar is a shell command, that makes backup of a directory tree and
54files.
55
56FILTERS: dar is able to backup from total file system to a single
57file. Additionally a mechanism of filters permits, based on the
58filename, to exclude or include some files while backing up or
59restoring a directory tree. In the other side, a secondary filter
60mechanism permits to exclude some branches of a directory tree, or to
61only include some branches.
62
63DIFFERENTIAL BACKUP: When making a backup with dar, you have the
64possibility to make a full backup or a differential backup. A full
65backup, as expected makes backup of all files as specified on the
66command line (with or without filters). Instead, a differential
67backup, (over filter mechanism), saves only files that have changed
68since a given reference backup. Additionally, files that existed in
69the reference backup and which do no more exist at the time of the
70differential backup are recorded in the backup. At recovery time,
71(unless you deactivate it), restoring a differential backup will
72update changed files and new files, but also remove files that have
73been recorded as deleted. Note that the reference backup can be a full
74backup or another differential backup. This way you can make a first
75full backup, then many differential backup, each taking as reference
76the last backup made.
77
78SLICES: Dar stands for Disk ARchive. From the beginning it was
79designed to be able to split an archive over several removable media
80whatever their number is and whatever their size is. Thus dar is able
81to save over old floppy disk, CD-R, DVD-R, CD-RW, DVD-RW, Zip, Jazz,
82etc... Dar is not concerned by un/mounting a removable medium, instead
83it is independent of hardware. Given the size, it will split the
84archive in several files (called SLICES), eventually pausing before
85creating the next one, allowing this way, the user to un/mount a
86medium, burn the file on CD-R, send it by email (if your mail system
87does not allow huge file in emails, dar can help you here also). By
88default, (no size specified), dar will make one slice whatever its
89size is. Additionally, the size of the first slice can be specified
90separately, if for example you want first to fulfil a partially filled
91disk before starting using empty ones. Last, at restoration time, dar
92will just pause and prompt the user asking a slice only if it is
93missing.
94
95COMPRESSION: last, dar can use compression. By default no compression
96is used. Actually only gzip algorithm is implemented, but some room
97has been done for bzip2 and any other compression algorithm. Note
98that, compression is made before slices, which means that using
99compression with slices, will not make slices smaller, but will
100probably make less slices in the backup.
101
102DIRECT ACCESS: even using compression dar has not to read the whole
103backup to extract one file. This way if you just want to restore one
104file from a huge backup, the process will be much faster than using
105tar. Dar first reads the catalogue (i.e. the contents of the backup),
106then it goes directly to the location of the saved file(s) you want to
107restore and proceed to restoration. In particular using slices dar
108will ask only for the slice(s) containing the file(s) to restore.
109
110HARD LINK CONSIDERATION: hard links are now properly saved. They are
111properly restored if possible. If for example restoring across a
112mounted filesystem, hard linking will fail, but dar will then
113duplicate the inode and file content, issuing a warning.
114
115EXTENDED ATTRIBUTES: support for extended attributes have to be
116activated at compilation time (see INSTALL). Dar is able to save and
117restore EA, all or just those of a given namespace (system or user).
118If no EA have been saved and restoration occurs over a file that has
119EA, they will be preserved. But if they have been saved empty for a
120given file, any existing EA for that file will be removed at
121restoration time, unless -u and/or -U is given on command-line.
122
123ARCHIVE TESTING thanks to CRC (cyclic redundancy checks), dar is able
124to detect data corruption in the archive. Only the file where data
125corruption occurred will not be possible to restore, but dar will
126restore the other even when compression is used.
127
128USING PIPES dar is now able to produce an archive to its standard
129output or named pipe. it is also able to read an archive through a
130pair of pipes, to take a remote archive as reference, or even to
131restore data from a remote archive. This way it is now possible to
132store an archive remotely and in total security (if using encrypted
133means)
134
135ISOLATION the catalogue (i.e.: the contents of an archive), can be
136extracted (this operation is called isolation) to a small file, that
137can in turn be used as reference for differential archive. There is no
138more need to provide an archive to be able to create a differential
139backup over it, just its catalogue is necessary.
140
141RE-SHAPE SLICES OF AN EXISTING ARCHIVE the external program named
142"dar_xform" is able to change the size of slices of a given archive.
143The resulting archive is totally identical to archives directly
144created by dar. Source archive can be taken from a set of slice, from
145standard input or even a named pipe.
146
9b828d75
JR
147%description -l pl.UTF-8
148dar jest poleceniem powłoki, które tworzy kopie zapasowe drzew
149katalogów i plików. Możliwości:
150- Filtry: dar może tworzyć kopię zapasową całego systemu plików do
151 pojedynczego pliku; mechanizm filtrów pozwala wyłączać lub dołączać
b0d714a3 152 pliki przy tworzeniu kopii lub odtwarzaniu z niej.
9b828d75
JR
153- Backup różnicowy: dar może tworzyć kopie pełne lub różnicowe
154 (zawierające tylko te pliki, które zmieniły się od innego backupu)
155- Części (slices): dar oznacza "Disk ARchive". Od początku ma
156 możliwość dzielenia archiwów na różne nośniki wymienialne,
157 niezależnie od ich liczby i rozmiaru (można tworzyć kopie na CD-R,
b0d714a3 158 DVD-R, CD-RW, Zip, Jazz...).
9b828d75 159- Kompresja: domyślnie dar nie kompresuje danych; ma zaimplementowany
b0d714a3 160 algorytm gzip, jest przygotowywany do bzip2 i innych. Kompresja jest
9b828d75
JR
161 wykonywana przed podziałem na części.
162- Bezpośredni dostęp: nawet w przypadku użycia kompresji, dar nie musi
163 czytać całej kopii aby odtworzyć jeden plik. Najpierw odczytuje
164 katalog, następnie skacze od razu do właściwego miejsca.
165- Obsługa twardych dowiązań: dar zachowuje i odtwarza je w miarę
166 możliwości; w przypadku niemożliwości wykonania dowiązania, powiela
167 plik i wypisuje ostrzeżenie.
168- Obsługa rozszerzonych atrybutów (zależnie od opcji kompilacji): dar
169 potrafi zachowywać i odtwarzać rozszerzone atrybuty - wszystkie lub
170 tylko dotyczące danej przestrzeni nazw (systemowej lub użytkownika).
171- Testowanie archiwów: dzięki użyciu CRC dar wykrywa uszkodzone dane;
172 tylko uszkodzone pliki nie zostaną odtworzone, reszta tak - nawet w
173 przypadku użycia kompresji.
174- Użycie rurek - dar może wyprodukować archiwum na standardowe wyjście
175 lub do nazwanej rurki. Może także czytać archiwum z pary rurek, a
176 nawet odtwarzać ze zdalnego archiwum.
177- Rozdzielenie: katalog (zawartość archiwum) może być wyciągnięty do
178 małego pliku, który może być używany jako odniesienie dla
179 różnicowego backupu.
180- Przekształcanie części istniejącego archiwum: zewnętrzny program o
181 nazwie dar_xform jest w stanie zmieniać rozmiary części podanego
182 archiwum. Może czytać z zestawu kawałków, standardowego wejścia lub
b0d714a3
JB
183 nazwanej rurki.
184
5f5a8b21 185%package static
b67216c8 186Summary: Static version of dar backup tool
83798cfc 187Summary(pl.UTF-8): Statyczna wersja archiwizatora dar
5f5a8b21 188Group: Applications
189
190%description static
191Static version of dar backup tool.
192
9b828d75 193%description static -l pl.UTF-8
5f5a8b21 194Statyczna wersja archiwizatora dar.
195
5a9f3364
JB
196%package libs
197Summary: Shared version of dar library
83798cfc 198Summary(pl.UTF-8): Współdzielona wersja biblioteki dar
c8a764ad 199Group: Libraries
5a9f3364
JB
200
201%description libs
202Shared version of dar library.
203
9b828d75
JR
204%description libs -l pl.UTF-8
205Współdzielona wersja biblioteki dar.
5a9f3364 206
09a398d2 207%package devel
c8a764ad 208Summary: Header files to develop dar software
83798cfc 209Summary(pl.UTF-8): Pliki nagłówkowe biblioteki dar
c8a764ad 210Group: Development/Libraries
211Requires: %{name}-libs = %{version}-%{release}
b7684ca4
JB
212%{?with_ea:Requires: attr-devel >= 2.4.16-3}
213Requires: bzip2-devel
214Requires: libstdc++-devel
c33a8d55 215Requires: openssl-devel
3cc31188 216Requires: zlib-devel
09a398d2 217
218%description devel
097d504f 219Header files to develop software which operates on dar.
09a398d2 220
9b828d75
JR
221%description devel -l pl.UTF-8
222Pliki nagłówkowe potrzebne do rozwoju oprogramowania korzystającego z
097d504f
JB
223dara.
224
225%package libs-static
226Summary: Static version of dar library
83798cfc 227Summary(pl.UTF-8): Statyczna wersja biblioteki dar
c8a764ad 228Group: Development/Libraries
229Requires: %{name}-devel = %{version}-%{release}
097d504f
JB
230
231%description libs-static
232Static version of dar library.
233
9b828d75 234%description libs-static -l pl.UTF-8
097d504f 235Statyczna wersja biblioteki dar.
09a398d2 236
bca9e56e 237%package doc
238Summary: dar - documentation
83798cfc 239Summary(pl.UTF-8): dar - dokumentacja
bca9e56e 240Group: Documentation
241Requires: %{name} = %{version}-%{release}
242
243%description doc
244Dar ducumentation.
245
9b828d75 246%description -l pl.UTF-8
bca9e56e 247Dokumentacja dla dar.
248
fbe89be6 249%prep
250%setup -q
e42712d8 251%patch0 -p1
fbe89be6 252
253%build
a5f8478f 254%{__gettextize}
09a398d2 255%{__libtoolize}
256%{__aclocal}
257%{__autoconf}
258%{__autoheader}
259%{__automake}
260%configure \
bac87f6c 261 %{!?with_ea:--disable-ea-support} \
248dd4dd 262 %{!?with_static:--disable-dar-static} \
a5f8478f 263 --enable-static=%{?with_static_libs:yes}%{!?with_static_libs:no} \
12760b79 264 --enable-mode=64 \
09a398d2 265 --disable-upx
266%{__make}
fbe89be6 267
268%install
269rm -rf $RPM_BUILD_ROOT
42343508 270%{?with_static:install -d $RPM_BUILD_ROOT/bin}
5f5a8b21 271
097d504f
JB
272%{__make} install \
273 DESTDIR=$RPM_BUILD_ROOT
fbe89be6 274
42343508 275%{?with_static:mv -f $RPM_BUILD_ROOT{%{_bindir},/bin}/dar_static}
5f5a8b21 276
bca9e56e 277ln -sf %{_datadir}/%{name} misc/doc
a9720b1c 278
bac87f6c
KK
279%find_lang %{name}
280
fbe89be6 281%clean
282rm -rf $RPM_BUILD_ROOT
283
5a9f3364
JB
284%post libs -p /sbin/ldconfig
285%postun libs -p /sbin/ldconfig
09a398d2 286
bac87f6c 287%files -f %{name}.lang
fbe89be6 288%defattr(644,root,root,755)
bca9e56e 289%doc ChangeLog NEWS README THANKS TODO misc/doc
edcac7c2 290%dir %{_datadir}/%{name}
d428284d 291%attr(755,root,root) %{_bindir}/*
f0835823 292%{_mandir}/man1/*.1*
5f5a8b21 293
97597b5c 294%files libs
5a9f3364 295%defattr(644,root,root,755)
12760b79 296%attr(755,root,root) %{_libdir}/libdar64.so.*.*.*
97597b5c 297
09a398d2 298%files devel
299%defattr(644,root,root,755)
12760b79
KK
300%attr(755,root,root) %{_libdir}/libdar64.so
301%{_libdir}/libdar64.la
09a398d2 302%{_includedir}/dar
853009b5 303%{_pkgconfigdir}/libdar64.pc
09a398d2 304
42343508 305%if %{with static}
5f5a8b21 306%files static
307%defattr(644,root,root,755)
308%attr(755,root,root) /bin/*
309%endif
097d504f 310
9369df59 311%if %{with static_libs}
097d504f
JB
312%files libs-static
313%defattr(644,root,root,755)
12760b79 314%{_libdir}/libdar64.a
9369df59 315%endif
bca9e56e 316
317%files doc
318%defattr(644,root,root,755)
edcac7c2 319%{_datadir}/%{name}/*
This page took 0.163301 seconds and 4 git commands to generate.