]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # Conditional build: | |
3 | %bcond_with initrd # without initrd version | |
4 | %bcond_with dietlibc # build initrd version with static glibc instead of dietlibc | |
5 | %bcond_without selinux # build without SELinux support (needs selinux-disabled device-mapper) | |
6 | # | |
7 | Summary: Device-mapper RAID tool | |
8 | Summary(pl.UTF-8): Narzędzie do RAID-u opartego o device-mapper | |
9 | Name: dmraid | |
10 | Version: 1.0.0 | |
11 | %define subver rc16.3 | |
12 | Release: 0.%{subver}.1 | |
13 | License: GPL v2+ | |
14 | Group: Base | |
15 | Source0: http://people.redhat.com/~heinzm/sw/dmraid/src/%{name}-%{version}.rc16-3.tar.bz2 | |
16 | # Source0-md5: 819338fcef98e8e25819f0516722beeb | |
17 | Patch0: %{name}-selinux-static.patch | |
18 | Patch1: %{name}-optflags.patch | |
19 | Patch2: %{name}-unsigned.patch | |
20 | Patch3: %{name}-diet.patch | |
21 | Patch4: %{name}-format.patch | |
22 | URL: http://people.redhat.com/~heinzm/sw/dmraid/ | |
23 | BuildRequires: autoconf | |
24 | BuildRequires: automake | |
25 | BuildRequires: device-mapper-devel >= 1.02.02 | |
26 | BuildRequires: zlib-devel | |
27 | %if %{with initrd} | |
28 | %if %{with dietlibc} | |
29 | BuildRequires: device-mapper-dietlibc | |
30 | BuildRequires: dietlibc-static >= 2:0.31-5 | |
31 | %else | |
32 | BuildRequires: device-mapper-static >= 1.02.05-0.4 | |
33 | BuildRequires: glibc-static | |
34 | BuildRequires: udev-static | |
35 | %if %{with selinux} | |
36 | BuildRequires: libselinux-static | |
37 | BuildRequires: libsepol-static | |
38 | %endif | |
39 | %endif | |
40 | %endif | |
41 | %if %{with selinux} | |
42 | BuildRequires: libselinux-devel | |
43 | BuildRequires: libsepol-devel | |
44 | %endif | |
45 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
46 | ||
47 | %define _sbindir /sbin | |
48 | ||
49 | %description | |
50 | DMRAID supports device discovery, set activation and display of | |
51 | properties for ATARAID on Linux >= 2.4 using device-mapper. | |
52 | ||
53 | %description -l pl.UTF-8 | |
54 | DMRAID obsługuje wykrywanie urządzeń, ustawianie aktywacji i | |
55 | wyświetlanie właściwości ATARAID-u na Linuksie >= 2.4 przy użyciu | |
56 | device-mappera. | |
57 | ||
58 | %package devel | |
59 | Summary: Header files for dmraid library | |
60 | Summary(pl.UTF-8): Pliki nagłówkowe biblioteki dmraid | |
61 | Group: Development/Libraries | |
62 | Requires: %{name} = %{version}-%{release} | |
63 | ||
64 | %description devel | |
65 | dmraid-devel provides a library interface for RAID device discovery, | |
66 | RAID set activation and display of properties for ATARAID volumes. | |
67 | ||
68 | %description devel -l pl.UTF-8 | |
69 | Ten pakiet udostępnia interfejs biblioteczny do wykrywania urządzeń | |
70 | RAID, włączania zestawu RAID i wyświetlania właściwości wolumenów | |
71 | ATARAID. | |
72 | ||
73 | %package static | |
74 | Summary: Static library for dmraid | |
75 | Summary(pl.UTF-8): Statyczna biblioteka dmraid | |
76 | Group: Development/Libraries | |
77 | Requires: %{name}-devel = %{version}-%{release} | |
78 | ||
79 | %description static | |
80 | dmraid-static provides a library interface for RAID device discovery, | |
81 | RAID set activation and display of properties for ATARAID volumes. | |
82 | ||
83 | %description static -l pl.UTF-8 | |
84 | Ten pakiet udostępnia statyczną bibliotekę do wykrywania urządzeń | |
85 | RAID, włączania zestawu RAID i wyświetlania właściwości wolumenów | |
86 | ATARAID. | |
87 | ||
88 | %package initrd | |
89 | Summary: Device-mapper RAID tool - statically linked version | |
90 | Summary(pl.UTF-8): Narzędzie do RAID-u opartego o device-mapper - wersja statyczna | |
91 | Group: Base | |
92 | Conflicts: geninitrd < 10000.10 | |
93 | ||
94 | %description initrd | |
95 | Statically linked version of dmraid utility. | |
96 | ||
97 | %description initrd -l pl.UTF-8 | |
98 | Statycznie skonsolidowana wersja programu narzędziowego dmraid. | |
99 | ||
100 | %prep | |
101 | %setup -q -n %{name} | |
102 | mv %{version}.*/dmraid/* . | |
103 | %{?with_selinux:%patch0 -p2} | |
104 | %patch1 -p1 | |
105 | %patch2 -p1 | |
106 | %patch3 -p1 | |
107 | %patch4 -p1 | |
108 | ||
109 | %build | |
110 | cp -f /usr/share/automake/config.sub autoconf | |
111 | %{__aclocal} | |
112 | %{__autoconf} | |
113 | ||
114 | %if %{with initrd} | |
115 | %configure \ | |
116 | %if %{with dietlibc} | |
117 | CC="diet %{__cc} %{rpmcflags} %{rpmldflags} -Os -static" \ | |
118 | --disable-libselinux \ | |
119 | --disable-libsepol \ | |
120 | %else | |
121 | %if %{with selinux} | |
122 | --enable-libselinux \ | |
123 | --enable-libsepol \ | |
124 | %endif | |
125 | %endif | |
126 | --enable-static_link | |
127 | ||
128 | %{__make} -j1 | |
129 | mv -f tools/dmraid dmraid-initrd | |
130 | %{__make} clean | |
131 | %endif | |
132 | ||
133 | %configure \ | |
134 | --with-usrlibdir=%{_libdir} \ | |
135 | --disable-static_link \ | |
136 | --enable-led \ | |
137 | --enable-intel_led | |
138 | %{__make} -j1 | |
139 | ||
140 | %install | |
141 | rm -rf $RPM_BUILD_ROOT | |
142 | install -d $RPM_BUILD_ROOT/%{_lib} | |
143 | ||
144 | %{__make} install \ | |
145 | DESTDIR=$RPM_BUILD_ROOT | |
146 | ||
147 | mv $RPM_BUILD_ROOT%{_libdir}/libdmraid.so.* $RPM_BUILD_ROOT/%{_lib} | |
148 | ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib} ; echo libdmraid.so.*.*.*) \ | |
149 | $RPM_BUILD_ROOT%{_libdir}/libdmraid.so | |
150 | ||
151 | %if %{with initrd} | |
152 | install -d $RPM_BUILD_ROOT%{_libdir}/initrd | |
153 | install dmraid-initrd $RPM_BUILD_ROOT%{_libdir}/initrd/dmraid | |
154 | %endif | |
155 | ||
156 | %clean | |
157 | rm -rf $RPM_BUILD_ROOT | |
158 | ||
159 | %post -p /sbin/ldconfig | |
160 | %postun -p /sbin/ldconfig | |
161 | ||
162 | %files | |
163 | %defattr(644,root,root,755) | |
164 | %doc CHANGELOG CREDITS KNOWN_BUGS README TODO doc/dmraid_design.txt | |
165 | %attr(755,root,root) %{_sbindir}/dmevent_tool | |
166 | %attr(755,root,root) %{_sbindir}/dmraid | |
167 | %attr(755,root,root) /%{_lib}/libdmraid.so.*.*.* | |
168 | %attr(755,root,root) %ghost /%{_lib}/libdmraid.so.1 | |
169 | %attr(755,root,root) %{_libdir}/libdmraid-events-isw.so | |
170 | %attr(755,root,root) %{_libdir}/device-mapper/libdmraid-events-isw.so | |
171 | %{_mandir}/man8/dmevent_tool.8* | |
172 | %{_mandir}/man8/dmraid.8* | |
173 | ||
174 | %files devel | |
175 | %defattr(644,root,root,755) | |
176 | %attr(755,root,root) %{_libdir}/libdmraid.so | |
177 | %{_includedir}/dmraid | |
178 | ||
179 | %files static | |
180 | %defattr(644,root,root,755) | |
181 | %{_libdir}/libdmraid.a | |
182 | ||
183 | %if %{with initrd} | |
184 | %files initrd | |
185 | %defattr(644,root,root,755) | |
186 | %attr(755,root,root) %{_libdir}/initrd/dmraid | |
187 | %endif |