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)
9 Summary: Linux Dazuko driver
10 Summary(pl): Sterownik Dazuko dla Linuksa
18 Source0: http://www.dazuko.org/files/dazuko-%{version}.tar.gz
19 # Source0-md5: 844498651d22ddd76bea4104bf7c3e43
20 URL: http://www.dazuko.org/
22 %{?with_dist_kernel:BuildRequires: kernel-module-build >= 2.6.7}
23 BuildRequires: rpmbuild(macros) >= 1.153
26 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 Dazuko aims to be a cross-platform device driver that allows
30 applications to control file access on a system. By installing the
31 driver, your system will be able to support file access control
32 applications that are based on Dazuko. As this project becomes more
33 popular and more applications choose Dazuko for their file access
34 needs, it is hoped that this driver will become a common component
37 To install the dazuko kernel module install kernel-misc-dazuko or
38 kernel-smp-misc-dazuko.
41 Dazuko ma byæ wieloplatformowym sterownikiem urz±dzenia pozwalaj±cym
42 aplikacjom sterowaæ dostêpem do plików w systemie. Poprzez
43 zainstalowanie sterownika system bêdzie móg³ wspieraæ aplikacje
44 steruj±ce dostêpem do plików w oparciu o Dazuko. Kiedy ten projekt
45 stanie siê popularny, autorzy maj± nadziejê, ¿e sterownik ten bêdzie
46 popularnym elementem wiêkszo¶ci systemów.
48 Aby zainstalowaæ modu³ j±dra nale¿y zainstalowaæ pakiet
49 kernel-misc-dazuko lub kernel-smp-misc-dazuko.
52 %package -n kernel-misc-%{name}
53 Summary: Linux driver for dazuko
54 Summary(pl): Linuksowy sterownik dazuko
55 Release: %{_rel}@%{_kernel_ver_str}
57 Requires(post,postun): /sbin/depmod
58 %if %{with dist_kernel}
59 %requires_releq_kernel_up
60 Requires(postun): %releq_kernel_up
63 %description -n kernel-misc-%{name}
64 This is driver for dazuko for Linux.
66 This package contains Linux module.
68 %description -n kernel-misc-%{name} -l pl
69 Ten pakiet zawiera sterownik dazuko dla Linuksa.
71 %package -n kernel-smp-misc-%{name}
72 Summary: Linux SMP driver for dazuko
73 Summary(pl): Sterownik dazuko dla Linuksa SMP
74 Release: %{_rel}@%{_kernel_ver_str}
76 Requires(post,postun): /sbin/depmod
77 %if %{with dist_kernel}
78 %requires_releq_kernel_smp
79 Requires(postun): %releq_kernel_smp
82 %description -n kernel-smp-misc-%{name}
83 This is driver for dazuko for Linux.
85 This package contains Linux SMP module.
87 %description -n kernel-smp-misc-%{name} -l pl
88 Ten pakiet zawiera sterownik dazuko dla Linuksa SMP.
91 Summary: Example code for Dazuko
92 Summary(pl): Przyk³adowy kod dla Dazuko
93 Group: Development/Libraries
96 Example code for Dazuko.
98 %description examples -l pl
99 Przyk³adowy kod dla Dazuko.
102 Summary: Headers for Dazuko
103 Summary(pl): Pliki nag³ówkowe Dazuko
104 Group: Development/Libraries
105 Requires: %{name} = %{version}-%{release}
110 %description devel -l pl
111 Pliki nag³ówkowe Dazuko.
114 Summary: Static libraries for Dazuko
115 Summary(pl): Statyczne biblioteki Dazuko
116 Group: Development/Libraries
117 Requires: %{name}-devel = %{version}-%{release}
120 Static libraries for Dazuko.
122 %description static -l pl
123 Statyczne biblioteki Dazuko.
131 # NOTE: It's not autoconf configure.
133 --kernelsrcdir=%{_kernelsrcdir} \
134 --disable-local-dpath
137 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
138 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
142 install -d include/{linux,config}
143 ln -sf %{_kernelsrcdir}/config-$cfg .config
144 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
145 ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
146 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
147 touch include/config/MARKER
149 # patching/creating makefile(s) (optional)
151 %{__make} -C %{_kernelsrcdir} clean \
152 RCS_FIND_IGNORE="-name '*.ko' -o" \
155 %{__make} -C %{_kernelsrcdir} modules \
156 CC="%{__cc}" CPP="%{__cpp}" \
164 %if %{with userspace}
168 %{__cc} -shared -Wl,-soname,libdazuko.so.0 -o libdazuko.so.0.0.0 *.o
169 ln -s libdazuko.so.0.0.0 libdazuko.so.0
170 ln -s libdazuko.so.0.0.0 libdazuko.so
175 rm -rf $RPM_BUILD_ROOT
177 %if %{with userspace}
178 install -d $RPM_BUILD_ROOT{%{_examplesdir}/%{name}-%{version},%{_libdir},%{_includedir}}
180 cp -a example* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
182 cp -af library/libdazuko.* $RPM_BUILD_ROOT/%{_libdir}
183 install dazukoio.h $RPM_BUILD_ROOT/%{_includedir}
187 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
188 install dazuko-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
189 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/dazuko.ko
190 %if %{with smp} && %{with dist_kernel}
191 install dazuko-smp.ko \
192 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/dazuko.ko
197 rm -rf $RPM_BUILD_ROOT
199 %post -p /sbin/ldconfig
200 %postun -p /sbin/ldconfig
202 %post -n kernel-misc-dazuko
203 %depmod %{_kernel_ver}
205 %postun -n kernel-misc-dazuko
206 %depmod %{_kernel_ver}
208 %post -n kernel-smp-misc-dazuko
209 %depmod %{_kernel_ver}smp
211 %postun -n kernel-smp-misc-dazuko
212 %depmod %{_kernel_ver}smp
215 %files -n kernel-misc-dazuko
216 %defattr(644,root,root,755)
217 /lib/modules/%{_kernel_ver}/misc/*.ko*
219 %if %{with smp} && %{with dist_kernel}
220 %files -n kernel-smp-misc-dazuko
221 %defattr(644,root,root,755)
222 /lib/modules/%{_kernel_ver}smp/misc/*.ko*
226 %if %{with userspace}
228 %defattr(644,root,root,755)
229 %attr(755,root,root) %{_libdir}/libdazuko.so.*.*.*
232 %defattr(644,root,root,755)
234 %{_examplesdir}/%{name}-%{version}
237 %defattr(644,root,root,755)
238 %attr(755,root,root) %{_libdir}/libdazuko.so
239 %{_includedir}/dazukoio.h
242 %defattr(644,root,root,755)