#
# Conditional build:
-%bcond_without static # build without dar_static
+%bcond_without ea # build without support for linux extented attributes
+%bcond_without static # build without dar_static
+%bcond_without static_libs # don't build static libraries
+#
+%if %{with static}
+%define with_static_libs 1
+%endif
#
Summary: dar makes backup of a directory tree and files
-Summary(pl): dar - narzêdzie do tworzenia kopii zapasowych drzew katalogów i plików
+Summary(pl.UTF-8): dar - narzędzie do tworzenia kopii zapasowych drzew katalogów i plików
Name: dar
-Version: 2.1.0
-Release: 0.2
+Version: 2.4.0
+Release: 1
License: GPL v2
-Group: Applications
+Group: Applications/Archiving
Source0: http://dl.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
-# Source0-md5: 4cf38abcf6c7e39722b7c8654630192a
+# Source0-md5: 1e0e02d3c90cdaaaf2850eff25599fba
Patch0: %{name}-opt.patch
URL: http://dar.linux.free.fr/
-BuildRequires: attr-devel
-BuildRequires: autoconf >= 2.54
+%{?with_ea:BuildRequires: attr-devel >= 2.4.16-3}
+BuildRequires: autoconf >= 2.59
BuildRequires: automake
BuildRequires: bzip2-devel
+BuildRequires: doxygen >= 1:1.3
+BuildRequires: e2fsprogs-devel
%ifarch alpha
# ICE in 3.3.x up to 3.3.2 - require patched version
BuildRequires: gcc-c++ >= 5:3.3.2-0.3
%endif
+BuildRequires: gettext-devel
+BuildRequires: groff
+BuildRequires: libgcrypt
+BuildRequires: libgpg-error
BuildRequires: libstdc++-devel
BuildRequires: libtool >= 2:1.4d
+BuildRequires: lzo-devel
+BuildRequires: openssl-devel >= 0.9.7k
BuildRequires: zlib-devel
%if %{with static}
-BuildRequires: attr-static
+%{?with_ea:BuildRequires: attr-static}
BuildRequires: bzip2-static
BuildRequires: glibc-static
+BuildRequires: libgcrypt-static
+BuildRequires: libgpg-error-static
BuildRequires: libstdc++-static
+BuildRequires: lzo-static
+BuildRequires: openssl-static
BuildRequires: zlib-static
%endif
Requires: %{name}-libs = %{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# don't generate `Requires' for sample scripts
+%define _noautoreq bash perl
+
%description
dar is a shell command, that makes backup of a directory tree and
files.
created by dar. Source archive can be taken from a set of slice, from
standard input or even a named pipe.
-%description -l pl
-dar jest poleceniem pow³oki, które tworzy kopie zapasowe drzew
-katalogów i plików. Mo¿liwo¶ci:
-- Filtry: dar mo¿e tworzyæ kopiê zapasow± ca³ego systemu plików do
- pojedynczego pliku; mechanizm filtrów pozwala wy³±czaæ lub do³±czaæ
+%description -l pl.UTF-8
+dar jest poleceniem powłoki, które tworzy kopie zapasowe drzew
+katalogów i plików. Możliwości:
+- Filtry: dar może tworzyć kopię zapasową całego systemu plików do
+ pojedynczego pliku; mechanizm filtrów pozwala wyłączać lub dołączać
pliki przy tworzeniu kopii lub odtwarzaniu z niej.
-- Backup ró¿nicowy: dar mo¿e tworzyæ kopie pe³ne lub ró¿nicowe
- (zawieraj±ce tylko te pliki, które zmieni³y siê od innego backupu)
-- Czê¶ci (slices): dar oznacza "Disk ARchive". Od pocz±tku ma
- mo¿liwo¶æ dzielenia archiwów na ró¿ne no¶niki wymienialne,
- niezale¿nie od ich liczby i rozmiaru (mo¿na tworzyæ kopie na CD-R,
+- Backup różnicowy: dar może tworzyć kopie pełne lub różnicowe
+ (zawierające tylko te pliki, które zmieniły się od innego backupu)
+- Części (slices): dar oznacza "Disk ARchive". Od początku ma
+ możliwość dzielenia archiwów na różne nośniki wymienialne,
+ niezależnie od ich liczby i rozmiaru (można tworzyć kopie na CD-R,
DVD-R, CD-RW, Zip, Jazz...).
-- Kompresja: domy¶lnie dar nie kompresuje danych; ma zaimplementowany
+- Kompresja: domyślnie dar nie kompresuje danych; ma zaimplementowany
algorytm gzip, jest przygotowywany do bzip2 i innych. Kompresja jest
- wykonywana przed podzia³em na czê¶ci.
-- Bezpo¶redni dostêp: nawet w przypadku u¿ycia kompresji, dar nie musi
- czytaæ ca³ej kopii aby odtworzyæ jeden plik. Najpierw odczytuje
- katalog, nastêpnie skacze od razu do w³a¶ciwego miejsca.
-- Obs³uga twardych dowi±zañ: dar zachowuje i odtwarza je w miarê
- mo¿liwo¶ci; w przypadku niemo¿liwo¶ci wykonania dowi±zania, powiela
- plik i wypisuje ostrze¿enie.
-- Obs³uga rozszerzonych atrybutów (zale¿nie od opcji kompilacji): dar
- potrafi zachowywaæ i odtwarzaæ rozszerzone atrubuty - wszystkie lub
- tylko dotycz±ce danej przestrzeni nazw (systemowej lub u¿ytkownika).
-- Testowanie archiwów: dziêki u¿yciu CRC dar wykrywa uszkodzone dane;
- tylko uszkodzone pliki nie zostan± odtworzone, reszta tak - nawet w
- przypadku u¿ycia kompresji.
-- U¿ycie rurek - dar mo¿e wyprodukowaæ archiwum na standardowe wyj¶cie
- lub do nazwanej rurki. Mo¿e tak¿e czytaæ archiwum z pary rurek, a
- nawet odtwarzaæ ze zdalnego archiwum.
-- Rozdzielenie: katalog (zawarto¶æ archiwum) mo¿e byæ wyci±gniêty do
- ma³ego pliku, który mo¿e byæ u¿ywany jako odniesienie dla
- ró¿nicowego backupu.
-- Przekszta³canie czê¶ci istniej±cego archiwum: zewnêtrzny program o
- nazwie dar_xform jest w stanie zmieniaæ rozmiary czê¶ci podanego
- archiwum. Mo¿e czytaæ z zestawu kata³ków, standardowego wej¶cia lub
+ wykonywana przed podziałem na części.
+- Bezpośredni dostęp: nawet w przypadku użycia kompresji, dar nie musi
+ czytać całej kopii aby odtworzyć jeden plik. Najpierw odczytuje
+ katalog, następnie skacze od razu do właściwego miejsca.
+- Obsługa twardych dowiązań: dar zachowuje i odtwarza je w miarę
+ możliwości; w przypadku niemożliwości wykonania dowiązania, powiela
+ plik i wypisuje ostrzeżenie.
+- Obsługa rozszerzonych atrybutów (zależnie od opcji kompilacji): dar
+ potrafi zachowywać i odtwarzać rozszerzone atrybuty - wszystkie lub
+ tylko dotyczące danej przestrzeni nazw (systemowej lub użytkownika).
+- Testowanie archiwów: dzięki użyciu CRC dar wykrywa uszkodzone dane;
+ tylko uszkodzone pliki nie zostaną odtworzone, reszta tak - nawet w
+ przypadku użycia kompresji.
+- Użycie rurek - dar może wyprodukować archiwum na standardowe wyjście
+ lub do nazwanej rurki. Może także czytać archiwum z pary rurek, a
+ nawet odtwarzać ze zdalnego archiwum.
+- Rozdzielenie: katalog (zawartość archiwum) może być wyciągnięty do
+ małego pliku, który może być używany jako odniesienie dla
+ różnicowego backupu.
+- Przekształcanie części istniejącego archiwum: zewnętrzny program o
+ nazwie dar_xform jest w stanie zmieniać rozmiary części podanego
+ archiwum. Może czytać z zestawu kawałków, standardowego wejścia lub
nazwanej rurki.
%package static
Summary: Static version of dar backup tool
-Summary(pl): Statyczna wersja archiwizatora dar
+Summary(pl.UTF-8): Statyczna wersja archiwizatora dar
Group: Applications
%description static
Static version of dar backup tool.
-%description static -l pl
+%description static -l pl.UTF-8
Statyczna wersja archiwizatora dar.
%package libs
Summary: Shared version of dar library
-Summary(pl): Wspó³dzielona wersja biblioteki dar
-Group: Libraries
+Summary(pl.UTF-8): Współdzielona wersja biblioteki dar
+Group: Libraries
%description libs
Shared version of dar library.
-%description libs -l pl
-Wspó³dzielona wersja biblioteki dar.
+%description libs -l pl.UTF-8
+Współdzielona wersja biblioteki dar.
%package devel
-Summary: Header files to develop dar software
-Summary(pl): Pliki nag³ówkowe biblioteki dar
-Group: Development/Libraries
-Requires: %{name}-libs = %{version}-%{release}
+Summary: Header files to develop dar software
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki dar
+Group: Development/Libraries
+Requires: %{name}-libs = %{version}-%{release}
+%{?with_ea:Requires: attr-devel >= 2.4.16-3}
+Requires: bzip2-devel
+Requires: libstdc++-devel
+Requires: openssl-devel
+Requires: zlib-devel
%description devel
Header files to develop software which operates on dar.
-%description devel -l pl
-Pliki nag³ówkowe potrzebne do rozwoju oprogramowania korzystaj±cego z
+%description devel -l pl.UTF-8
+Pliki nagłówkowe potrzebne do rozwoju oprogramowania korzystającego z
dara.
%package libs-static
Summary: Static version of dar library
-Summary(pl): Statyczna wersja biblioteki dar
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
+Summary(pl.UTF-8): Statyczna wersja biblioteki dar
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
%description libs-static
Static version of dar library.
-%description libs-static -l pl
+%description libs-static -l pl.UTF-8
Statyczna wersja biblioteki dar.
+%package doc
+Summary: dar - documentation
+Summary(pl.UTF-8): dar - dokumentacja
+Group: Documentation
+Requires: %{name} = %{version}-%{release}
+
+%description doc
+Dar ducumentation.
+
+%description doc -l pl.UTF-8
+Dokumentacja dla dar.
+
%prep
%setup -q
-%patch -p1
+%patch0 -p1
%build
+%{__gettextize}
%{__libtoolize}
%{__aclocal}
%{__autoconf}
%{__autoheader}
%{__automake}
%configure \
- --enable-ea-support \
-%{?without_static:--disable-dar-static} \
+ %{!?with_ea:--disable-ea-support} \
+ %{!?with_static:--disable-dar-static} \
+ --enable-static=%{?with_static_libs:yes}%{!?with_static_libs:no} \
+ --enable-mode=64 \
--disable-upx
%{__make}
%{?with_static:mv -f $RPM_BUILD_ROOT{%{_bindir},/bin}/dar_static}
-find $RPM_BUILD_DIR/%{name}-%{version}/doc -name "Makefile*" | xargs rm -fv
+ln -sf %{_datadir}/%{name} misc/doc
+
+%find_lang %{name}
%clean
rm -rf $RPM_BUILD_ROOT
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
-%files
+%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc BUGS README TODO doc
+%doc ChangeLog NEWS README THANKS TODO misc/doc
+%dir %{_datadir}/%{name}
%attr(755,root,root) %{_bindir}/*
-%{_datadir}/%{name}
-%{_mandir}/man1/*
+%{_mandir}/man1/*.1*
%files libs
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdar.so.*.*.*
+%attr(755,root,root) %{_libdir}/libdar64.so.*.*.*
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdar.so
-%{_libdir}/libdar.la
+%attr(755,root,root) %{_libdir}/libdar64.so
+%{_libdir}/libdar64.la
%{_includedir}/dar
+%{_pkgconfigdir}/libdar64.pc
%if %{with static}
%files static
%attr(755,root,root) /bin/*
%endif
+%if %{with static_libs}
%files libs-static
%defattr(644,root,root,755)
-%{_libdir}/libdar.a
+%{_libdir}/libdar64.a
+%endif
+
+%files doc
+%defattr(644,root,root,755)
+%{_datadir}/%{name}/*