]>
Commit | Line | Data |
---|---|---|
259173cc | 1 | # |
8fb27c84 ER |
2 | # Conditional build: |
3 | %bcond_without dist_kernel # allow non-distribution kernel | |
4 | %bcond_without kernel # don't build kernel modules | |
5 | %bcond_without smp # don't build SMP module | |
6 | %bcond_without userspace # don't build userspace module | |
7 | %bcond_with verbose # verbose build (V=1) | |
8 | # | |
0884e6b9 | 9 | %if !%{with kernel} |
7096ef6c ER |
10 | %undefine with_dist_kernel |
11 | %endif | |
12 | # | |
45179628 | 13 | %define _rel 1 |
259173cc | 14 | Summary: Linux Dazuko driver |
2603f225 | 15 | Summary(pl.UTF-8): Sterownik Dazuko dla Linuksa |
8fb27c84 | 16 | Name: dazuko |
a14c06af | 17 | Version: 2.3.2 |
8fb27c84 ER |
18 | Release: %{_rel} |
19 | Epoch: 0 | |
3bd07a72 | 20 | License: BSD (library), GPL (Linux kernel module) |
259173cc | 21 | Group: Base/Kernel |
7096ef6c | 22 | Source0: http://www.dazuko.org/files/%{name}-%{version}.tar.gz |
a14c06af | 23 | # Source0-md5: bb32e24ad60a31dbfc419d3341287f68 |
b8a3cf17 | 24 | Patch0: %{name}-kbuild.patch |
a14c06af | 25 | Patch1: %{name}-caps.patch |
8fb27c84 ER |
26 | URL: http://www.dazuko.org/ |
27 | %if %{with kernel} | |
a14c06af | 28 | %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.14} |
58826144 | 29 | BuildRequires: rpmbuild(macros) >= 1.286 |
8fb27c84 | 30 | %endif |
8fb27c84 ER |
31 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
32 | ||
33 | %description | |
259173cc JB |
34 | Dazuko aims to be a cross-platform device driver that allows |
35 | applications to control file access on a system. By installing the | |
36 | driver, your system will be able to support file access control | |
37 | applications that are based on Dazuko. As this project becomes more | |
38 | popular and more applications choose Dazuko for their file access | |
7096ef6c ER |
39 | needs, it is hoped that this driver will become a common component of |
40 | most systems. | |
8fb27c84 | 41 | |
259173cc JB |
42 | To install the dazuko kernel module install kernel-misc-dazuko or |
43 | kernel-smp-misc-dazuko. | |
44 | ||
2603f225 JR |
45 | %description -l pl.UTF-8 |
46 | Dazuko ma być wieloplatformowym sterownikiem urządzenia pozwalającym | |
47 | aplikacjom sterować dostępem do plików w systemie. Poprzez | |
48 | zainstalowanie sterownika system będzie mógł wspierać aplikacje | |
49 | sterujące dostępem do plików w oparciu o Dazuko. Kiedy ten projekt | |
50 | stanie się popularny, autorzy mają nadzieję, że sterownik ten będzie | |
51 | popularnym elementem większości systemów. | |
259173cc | 52 | |
2603f225 | 53 | Aby zainstalować moduł jądra należy zainstalować pakiet |
259173cc | 54 | kernel-misc-dazuko lub kernel-smp-misc-dazuko. |
8fb27c84 ER |
55 | |
56 | # kernel subpackages. | |
a14c06af | 57 | %package -n kernel%{_alt_kernel}-misc-%{name} |
8fb27c84 | 58 | Summary: Linux driver for dazuko |
2603f225 | 59 | Summary(pl.UTF-8): Linuksowy sterownik dazuko |
8fb27c84 ER |
60 | Release: %{_rel}@%{_kernel_ver_str} |
61 | Group: Base/Kernel | |
62 | Requires(post,postun): /sbin/depmod | |
7096ef6c | 63 | %if %{with dist_kernel} |
2a3e9c1a ER |
64 | %requires_releq_kernel_up |
65 | Requires(postun): %releq_kernel_up | |
8fb27c84 ER |
66 | %endif |
67 | ||
a14c06af | 68 | %description -n kernel%{_alt_kernel}-misc-%{name} |
8fb27c84 ER |
69 | This is driver for dazuko for Linux. |
70 | ||
71 | This package contains Linux module. | |
72 | ||
2603f225 | 73 | %description -n kernel%{_alt_kernel}-misc-%{name} -l pl.UTF-8 |
259173cc JB |
74 | Ten pakiet zawiera sterownik dazuko dla Linuksa. |
75 | ||
a14c06af | 76 | %package -n kernel%{_alt_kernel}-smp-misc-%{name} |
8fb27c84 | 77 | Summary: Linux SMP driver for dazuko |
2603f225 | 78 | Summary(pl.UTF-8): Sterownik dazuko dla Linuksa SMP |
8fb27c84 ER |
79 | Release: %{_rel}@%{_kernel_ver_str} |
80 | Group: Base/Kernel | |
81 | Requires(post,postun): /sbin/depmod | |
7096ef6c | 82 | %if %{with dist_kernel} |
2a3e9c1a ER |
83 | %requires_releq_kernel_smp |
84 | Requires(postun): %releq_kernel_smp | |
8fb27c84 ER |
85 | %endif |
86 | ||
a14c06af | 87 | %description -n kernel%{_alt_kernel}-smp-misc-%{name} |
8fb27c84 ER |
88 | This is driver for dazuko for Linux. |
89 | ||
90 | This package contains Linux SMP module. | |
91 | ||
2603f225 | 92 | %description -n kernel%{_alt_kernel}-smp-misc-%{name} -l pl.UTF-8 |
259173cc JB |
93 | Ten pakiet zawiera sterownik dazuko dla Linuksa SMP. |
94 | ||
d0c8e146 | 95 | %package examples |
96 | Summary: Example code for Dazuko | |
2603f225 | 97 | Summary(pl.UTF-8): Przykładowy kod dla Dazuko |
3bd07a72 | 98 | License: BSD |
d0c8e146 | 99 | Group: Development/Libraries |
100 | ||
101 | %description examples | |
102 | Example code for Dazuko. | |
103 | ||
2603f225 JR |
104 | %description examples -l pl.UTF-8 |
105 | Przykładowy kod dla Dazuko. | |
d0c8e146 | 106 | |
107 | %package devel | |
108 | Summary: Headers for Dazuko | |
2603f225 | 109 | Summary(pl.UTF-8): Pliki nagłówkowe Dazuko |
3bd07a72 | 110 | License: BSD |
d0c8e146 | 111 | Group: Development/Libraries |
0767dc6b | 112 | Requires: %{name} = %{version}-%{release} |
d0c8e146 | 113 | |
114 | %description devel | |
115 | Headers for Dazuko. | |
116 | ||
2603f225 JR |
117 | %description devel -l pl.UTF-8 |
118 | Pliki nagłówkowe Dazuko. | |
0767dc6b JB |
119 | |
120 | %package static | |
121 | Summary: Static libraries for Dazuko | |
2603f225 | 122 | Summary(pl.UTF-8): Statyczne biblioteki Dazuko |
3bd07a72 | 123 | License: BSD |
0767dc6b JB |
124 | Group: Development/Libraries |
125 | Requires: %{name}-devel = %{version}-%{release} | |
126 | ||
127 | %description static | |
128 | Static libraries for Dazuko. | |
129 | ||
2603f225 | 130 | %description static -l pl.UTF-8 |
0767dc6b JB |
131 | Statyczne biblioteki Dazuko. |
132 | ||
8fb27c84 ER |
133 | %prep |
134 | %setup -q | |
b8a3cf17 | 135 | %patch0 -p1 |
a14c06af | 136 | %patch1 -p1 |
8fb27c84 ER |
137 | |
138 | %build | |
3bd07a72 | 139 | %if %{with kernel} |
8fb27c84 ER |
140 | for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do |
141 | if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then | |
142 | exit 1 | |
143 | fi | |
7096ef6c ER |
144 | install -d o/include/linux |
145 | ln -sf %{_kernelsrcdir}/config-$cfg o/.config | |
146 | ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers | |
147 | ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h | |
148 | %if %{with dist_kernel} | |
58826144 | 149 | %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts |
7096ef6c ER |
150 | %else |
151 | install -d o/include/config | |
152 | touch o/include/config/MARKER | |
153 | ln -sf %{_kernelsrcdir}/scripts o/scripts | |
154 | %endif | |
8fb27c84 ER |
155 | # |
156 | # patching/creating makefile(s) (optional) | |
b8a3cf17 ER |
157 | |
158 | # NOTE: It's not autoconf configure. | |
a14c06af | 159 | ./configure \ |
b8a3cf17 ER |
160 | --kernelsrcdir=%{_kernelsrcdir} \ |
161 | %{?debug:--enable-debug} \ | |
b8a3cf17 ER |
162 | --disable-compat1 \ |
163 | --without-library | |
164 | ||
8fb27c84 ER |
165 | %{__make} -C %{_kernelsrcdir} clean \ |
166 | RCS_FIND_IGNORE="-name '*.ko' -o" \ | |
7096ef6c ER |
167 | SYSSRC=%{_kernelsrcdir} \ |
168 | SYSOUT=$PWD/o \ | |
169 | M=$PWD O=$PWD/o \ | |
8fb27c84 ER |
170 | %{?with_verbose:V=1} |
171 | %{__make} -C %{_kernelsrcdir} modules \ | |
172 | CC="%{__cc}" CPP="%{__cpp}" \ | |
7096ef6c ER |
173 | SYSSRC=%{_kernelsrcdir} \ |
174 | SYSOUT=$PWD/o \ | |
175 | M=$PWD O=$PWD/o \ | |
8fb27c84 ER |
176 | %{?with_verbose:V=1} |
177 | ||
178 | mv dazuko{,-$cfg}.ko | |
179 | done | |
180 | %endif | |
181 | ||
d0c8e146 | 182 | %if %{with userspace} |
b8a3cf17 | 183 | # NOTE: It's not autoconf configure. |
a14c06af | 184 | ./configure \ |
b8a3cf17 | 185 | %{?debug:--enable-debug} \ |
b8a3cf17 ER |
186 | --disable-compat1 \ |
187 | --without-module | |
188 | ||
d0c8e146 | 189 | cd library |
0767dc6b | 190 | %{__make} \ |
3bd07a72 JB |
191 | CC="%{__cc}" \ |
192 | CFLAGS="%{rpmcflags} -fPIC" | |
0767dc6b | 193 | %{__cc} -shared -Wl,-soname,libdazuko.so.0 -o libdazuko.so.0.0.0 *.o |
d0c8e146 | 194 | ln -s libdazuko.so.0.0.0 libdazuko.so.0 |
195 | ln -s libdazuko.so.0.0.0 libdazuko.so | |
196 | cd .. | |
197 | %endif | |
198 | ||
8fb27c84 ER |
199 | %install |
200 | rm -rf $RPM_BUILD_ROOT | |
201 | ||
202 | %if %{with userspace} | |
d0c8e146 | 203 | install -d $RPM_BUILD_ROOT{%{_examplesdir}/%{name}-%{version},%{_libdir},%{_includedir}} |
8fb27c84 ER |
204 | |
205 | cp -a example* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
d0c8e146 | 206 | |
3bd07a72 JB |
207 | cp -af library/libdazuko.* $RPM_BUILD_ROOT%{_libdir} |
208 | install dazukoio.h $RPM_BUILD_ROOT%{_includedir} | |
8fb27c84 ER |
209 | %endif |
210 | ||
211 | %if %{with kernel} | |
212 | install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc | |
213 | install dazuko-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \ | |
214 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/dazuko.ko | |
215 | %if %{with smp} && %{with dist_kernel} | |
216 | install dazuko-smp.ko \ | |
217 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/dazuko.ko | |
218 | %endif | |
219 | %endif | |
220 | ||
221 | %clean | |
222 | rm -rf $RPM_BUILD_ROOT | |
223 | ||
0767dc6b JB |
224 | %post -p /sbin/ldconfig |
225 | %postun -p /sbin/ldconfig | |
226 | ||
a14c06af | 227 | %post -n kernel%{_alt_kernel}-misc-dazuko |
8fb27c84 ER |
228 | %depmod %{_kernel_ver} |
229 | ||
a14c06af | 230 | %postun -n kernel%{_alt_kernel}-misc-dazuko |
8fb27c84 ER |
231 | %depmod %{_kernel_ver} |
232 | ||
a14c06af | 233 | %post -n kernel%{_alt_kernel}-smp-misc-dazuko |
8fb27c84 ER |
234 | %depmod %{_kernel_ver}smp |
235 | ||
a14c06af | 236 | %postun -n kernel%{_alt_kernel}-smp-misc-dazuko |
8fb27c84 ER |
237 | %depmod %{_kernel_ver}smp |
238 | ||
239 | %if %{with kernel} | |
a14c06af | 240 | %files -n kernel%{_alt_kernel}-misc-dazuko |
8fb27c84 ER |
241 | %defattr(644,root,root,755) |
242 | /lib/modules/%{_kernel_ver}/misc/*.ko* | |
243 | ||
244 | %if %{with smp} && %{with dist_kernel} | |
a14c06af | 245 | %files -n kernel%{_alt_kernel}-smp-misc-dazuko |
8fb27c84 ER |
246 | %defattr(644,root,root,755) |
247 | /lib/modules/%{_kernel_ver}smp/misc/*.ko* | |
248 | %endif | |
249 | %endif | |
250 | ||
251 | %if %{with userspace} | |
252 | %files | |
0767dc6b JB |
253 | %defattr(644,root,root,755) |
254 | %attr(755,root,root) %{_libdir}/libdazuko.so.*.*.* | |
d0c8e146 | 255 | |
256 | %files examples | |
8fb27c84 | 257 | %defattr(644,root,root,755) |
0767dc6b | 258 | %doc README |
8fb27c84 | 259 | %{_examplesdir}/%{name}-%{version} |
d0c8e146 | 260 | |
261 | %files devel | |
0767dc6b JB |
262 | %defattr(644,root,root,755) |
263 | %attr(755,root,root) %{_libdir}/libdazuko.so | |
d0c8e146 | 264 | %{_includedir}/dazukoio.h |
d0c8e146 | 265 | |
266 | %files static | |
0767dc6b JB |
267 | %defattr(644,root,root,755) |
268 | %{_libdir}/lib*.a | |
8fb27c84 | 269 | %endif |