X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=dmraid.spec;h=721883d17136359d3bc67f9da6a2afceb07b91bf;hb=722de73adbfbf8fbde7aa3c27a7e5b4f2b47df41;hp=d18c822f49cc0c815c65fe798b51486dc4a45bb0;hpb=66c4e6c1ca92508f419bc23171ed11ba88dad9ef;p=packages%2Fdmraid.git diff --git a/dmraid.spec b/dmraid.spec index d18c822..721883d 100644 --- a/dmraid.spec +++ b/dmraid.spec @@ -1,43 +1,65 @@ # # Conditional build: -%bcond_without initrd # without initrd version +%bcond_without initrd # without initrd version +%bcond_without dietlibc # build initrd version with static glibc instead of dietlibc +%bcond_without selinux # build without SELinux support (needs selinux-disabled device-mapper) # -%define _rc rc10 -%define _rel 1.6 Summary: Device-mapper RAID tool -Summary(pl): Narzêdzie do RAID-u opartego o device-mapper +Summary(pl.UTF-8): Narzędzie do RAID-u opartego o device-mapper Name: dmraid Version: 1.0.0 -Release: 0.%{_rc}.%{_rel} +%define _rc rc15 +Release: 0.%{_rc}.4 License: GPL Group: Base Source0: http://people.redhat.com/~heinzm/sw/dmraid/src/%{name}-%{version}.%{_rc}.tar.bz2 -# Source0-md5: 0206f8166bfdc370c4ee8efcb35af111 +# Source0-md5: 2602887205a35f89b59eeba3a868150f +Source1: %{name}-initramfs-hook +Source2: %{name}-initramfs-local-top Patch0: %{name}-selinux-static.patch Patch1: %{name}-fix.patch Patch2: %{name}-optflags.patch +Patch3: %{name}-as-needed.patch +Patch4: %{name}-unsigned.patch +Patch5: %{name}-diet.patch URL: http://people.redhat.com/~heinzm/sw/dmraid/ BuildRequires: autoconf BuildRequires: automake -BuildRequires: device-mapper-devel >= 1.01.01 -%{?with_initrd:BuildRequires: device-mapper-static >= 1.02.05-0.4} -%{?with_initrd:BuildRequires: glibc-static} -%{?with_initrd:BuildRequires: libselinux-static} -%{?with_initrd:BuildRequires: libsepol-static} +BuildRequires: device-mapper-devel >= 1.02.02 +BuildRequires: zlib-devel +%if %{with initrd} + %if %{with dietlibc} +BuildRequires: device-mapper-dietlibc +BuildRequires: dietlibc-static >= 2:0.31-5 + %else +BuildRequires: device-mapper-static >= 1.02.05-0.4 +BuildRequires: glibc-static +%if %{with selinux} +BuildRequires: libselinux-static +BuildRequires: libsepol-static +%endif + %endif +%endif +%if %{with selinux} +BuildRequires: libselinux-devel +BuildRequires: libsepol-devel +%endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define _sbindir /sbin + %description DMRAID supports device discovery, set activation and display of properties for ATARAID on Linux >= 2.4 using device-mapper. -%description -l pl -DMRAID obs³uguje wykrywanie urz±dzeñ, ustawianie aktywacji i -wy¶wietlanie w³a¶ciwo¶ci ATARAID-u na Linuksie >= 2.4 przy u¿yciu +%description -l pl.UTF-8 +DMRAID obsługuje wykrywanie urządzeń, ustawianie aktywacji i +wyświetlanie właściwości ATARAID-u na Linuksie >= 2.4 przy użyciu device-mappera. %package devel Summary: Header files for dmraid library -Summary(pl): Pliki nag³ówkowe biblioteki dmraid +Summary(pl.UTF-8): Pliki nagłówkowe biblioteki dmraid Group: Development/Libraries Requires: %{name} = %{version}-%{release} @@ -45,14 +67,14 @@ Requires: %{name} = %{version}-%{release} dmraid-devel provides a library interface for RAID device discovery, RAID set activation and display of properties for ATARAID volumes. -%description devel -l pl -Ten pakiet udostêpnia interfejs biblioteczny do wykrywania urz±dzeñ -RAID, w³±czania zestawu RAID i wy¶wietlania w³a¶ciwo¶ci wolumenów +%description devel -l pl.UTF-8 +Ten pakiet udostępnia interfejs biblioteczny do wykrywania urządzeń +RAID, włączania zestawu RAID i wyświetlania właściwości wolumenów ATARAID. %package static Summary: Static library for dmraid -Summary(pl): Statyczna biblioteka dmraid +Summary(pl.UTF-8): Statyczna biblioteka dmraid Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} @@ -60,28 +82,45 @@ Requires: %{name}-devel = %{version}-%{release} dmraid-static provides a library interface for RAID device discovery, RAID set activation and display of properties for ATARAID volumes. -%description static -l pl -Ten pakiet udostêpnia statyczn± bibliotekê do wykrywania urz±dzeñ -RAID, w³±czania zestawu RAID i wy¶wietlania w³a¶ciwo¶ci wolumenów +%description static -l pl.UTF-8 +Ten pakiet udostępnia statyczną bibliotekę do wykrywania urządzeń +RAID, włączania zestawu RAID i wyświetlania właściwości wolumenów ATARAID. %package initrd Summary: Device-mapper RAID tool - statically linked version -Summary(pl): Narzêdzie do RAID-u opartego o device-mapper - wersja statyczna +Summary(pl.UTF-8): Narzędzie do RAID-u opartego o device-mapper - wersja statyczna Group: Base +Conflicts: geninitrd <= 10000.3 %description initrd Statically linked version of dmraid utility. -%description initrd -l pl -Statycznie skonsolidowana wersja programu narzêdziowego dmraid. +%description initrd -l pl.UTF-8 +Statycznie skonsolidowana wersja programu narzędziowego dmraid. + +%package initramfs +Summary: Device-mapper RAID tool - support scripts for initramfs-tools +Summary(pl.UTF-8): Narzędzie do RAID-u opartego o device-mapper - skrypty dla initramfs-tools +Group: Base +Requires: %{name} = %{version}-%{release} +Requires: initramfs-tools + +%description initramfs +Device-mapper RAID tool - support scripts for initramfs-tools. + +%description initramfs -l pl.UTF-8 +Narzędzie do RAID-u opartego o device-mapper - skrypty dla initramfs-tools. %prep %setup -q -n %{name} mv */* ./ -%patch0 -p2 +%{?with_selinux:%patch0 -p2} %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build cp -f /usr/share/automake/config.sub autoconf @@ -90,18 +129,30 @@ cp -f /usr/share/automake/config.sub autoconf %if %{with initrd} %configure \ + %if %{with dietlibc} + CC="diet %{__cc} -Os %{rpmldflags} -static" \ + --disable-libselinux \ + --disable-libsepol \ + %else + %if %{with selinux} + --enable-libselinux \ + --enable-libsepol \ + %endif + %endif --enable-static_link -%{__make} -cp -f tools/dmraid{,-initrd} + +%{__make} -j1 +mv -f tools/dmraid dmraid-initrd %{__make} clean %endif %configure \ --enable-shared_lib -%{__make} +%{__make} -j1 %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT{/%{_lib},%{_datadir}/initramfs-tools/{hooks,scripts/local-top}} %{__make} install \ includedir=$RPM_BUILD_ROOT%{_includedir} \ @@ -109,10 +160,18 @@ rm -rf $RPM_BUILD_ROOT mandir=$RPM_BUILD_ROOT%{_mandir} \ sbindir=$RPM_BUILD_ROOT%{_sbindir} +mv $RPM_BUILD_ROOT%{_libdir}/libdmraid.so.* $RPM_BUILD_ROOT/%{_lib} +ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib} ; echo libdmraid.so.*.*.*) \ + $RPM_BUILD_ROOT%{_libdir}/libdmraid.so + %if %{with initrd} -install -D tools/dmraid-initrd $RPM_BUILD_ROOT/sbin/dmraid-initrd +install -d $RPM_BUILD_ROOT%{_libdir}/initrd +install dmraid-initrd $RPM_BUILD_ROOT%{_libdir}/initrd/dmraid %endif +install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/hooks/dmraid +install %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/scripts/local-top/dmraid + %clean rm -rf $RPM_BUILD_ROOT @@ -123,7 +182,7 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %doc README TODO doc/dmraid_design.txt %attr(755,root,root) %{_sbindir}/dmraid -%attr(755,root,root) %{_libdir}/libdmraid.so.*.*.* +%attr(755,root,root) /%{_lib}/libdmraid.so.*.*.* %{_mandir}/man8/* %files devel @@ -138,5 +197,10 @@ rm -rf $RPM_BUILD_ROOT %if %{with initrd} %files initrd %defattr(644,root,root,755) -%attr(755,root,root) /sbin/dmraid-initrd +%attr(755,root,root) %{_libdir}/initrd/dmraid %endif + +%files initramfs +%defattr(644,root,root,755) +%attr(755,root,root) %{_datadir}/initramfs-tools/hooks/dmraid +%attr(755,root,root) %{_datadir}/initramfs-tools/scripts/local-top/dmraid