+#
+# Conditional build:
+%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
Name: dar
-Version: 1.2.1
-Release: 2
-License: GPL
-Group: Applications
+Version: 2.3.1
+Release: 1
+License: GPL v2
+Group: Applications/Archiving
Source0: http://dl.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
-Patch0: %{name}-nostatic_compilation.patch
+# Source0-md5: cdeb693c9c4a0adcdb39da67e0067d38
+Patch0: %{name}-opt.patch
URL: http://dar.linux.free.fr/
+%{?with_ea:BuildRequires: attr-devel >= 2.4.16-3}
+BuildRequires: autoconf >= 2.59
+BuildRequires: automake
+BuildRequires: bzip2-devel
+BuildRequires: doxygen >= 1:1.3
+%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: libstdc++-devel
+BuildRequires: libtool >= 2:1.4d
+BuildRequires: openssl-devel >= 0.9.7k
+BuildRequires: zlib-devel
+%if %{with static}
+%{?with_ea:BuildRequires: attr-static}
+BuildRequires: bzip2-static
+BuildRequires: glibc-static
+BuildRequires: libstdc++-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.
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
+ 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
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
+ 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
+Group: Applications
+
+%description static
+Static version of dar backup tool.
+
+%description static -l pl
+Statyczna wersja archiwizatora dar.
+
+%package libs
+Summary: Shared version of dar library
+Summary(pl): Wspó³dzielona wersja biblioteki dar
+Group: Libraries
+
+%description libs
+Shared version of dar library.
+
+%description libs -l pl
+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}
+%{?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
+dara.
+
+%package libs-static
+Summary: Static version of dar library
+Summary(pl): 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
+Statyczna wersja biblioteki dar.
+
+%package doc
+Summary: dar - documentation
+Summary(pl): dar - dokumentacja
+Group: Documentation
+Requires: %{name} = %{version}-%{release}
+
+%description doc
+Dar ducumentation.
+
+%description -l pl
+Dokumentacja dla dar.
+
%prep
%setup -q
%patch0 -p1
%build
-%{__make} BUILD_STATIC="no" OPTIMIZATION="%{rpmcflags}"
+%{__gettextize}
+%{__libtoolize}
+%{__aclocal}
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+%configure \
+ %{!?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}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install BUILD_STATIC="no" \
- INSTALL=install \
- INSTALL_ROOT_DIR=$RPM_BUILD_ROOT \
- BIN_DIR=%{_bindir} \
- MAN_DIR=%{_mandir}
+%{?with_static:install -d $RPM_BUILD_ROOT/bin}
+
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+%{?with_static:mv -f $RPM_BUILD_ROOT{%{_bindir},/bin}/dar_static}
+
+ln -sf %{_datadir}/%{name} misc/doc
+
+%find_lang %{name}
%clean
rm -rf $RPM_BUILD_ROOT
-%files
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
+%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc BUGS CHANGES NOTES README TODO TUTORIAL
+%doc ChangeLog NEWS README THANKS TODO misc/doc
%attr(755,root,root) %{_bindir}/*
-%attr(644,root,root) %{_mandir}/*
+%{_mandir}/man1/*
+
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libdar64.so.*.*.*
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libdar64.so
+%{_libdir}/libdar64.la
+%{_includedir}/dar
+%{_pkgconfigdir}/libdar64.pc
+
+%if %{with static}
+%files static
+%defattr(644,root,root,755)
+%attr(755,root,root) /bin/*
+%endif
+
+%if %{with static_libs}
+%files libs-static
+%defattr(644,root,root,755)
+%{_libdir}/libdar64.a
+%endif
+
+%files doc
+%defattr(644,root,root,755)
+%{_datadir}/%{name}