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
16 License: BSD (library), GPL (Linux kernel module)
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 kernel} && %{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 kernel} && %{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
94 Group: Development/Libraries
97 Example code for Dazuko.
99 %description examples -l pl
100 Przyk³adowy kod dla Dazuko.
103 Summary: Headers for Dazuko
104 Summary(pl): Pliki nag³ówkowe Dazuko
106 Group: Development/Libraries
107 Requires: %{name} = %{version}-%{release}
112 %description devel -l pl
113 Pliki nag³ówkowe Dazuko.
116 Summary: Static libraries for Dazuko
117 Summary(pl): Statyczne biblioteki Dazuko
119 Group: Development/Libraries
120 Requires: %{name}-devel = %{version}-%{release}
123 Static libraries for Dazuko.
125 %description static -l pl
126 Statyczne biblioteki Dazuko.
132 # NOTE: It's not autoconf configure.
134 --kernelsrcdir=%{_kernelsrcdir} \
135 --disable-local-dpath \
136 %{!?with_userspace:--without-library} \
137 %{!?with_kernel:--without-module}
140 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
141 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
145 install -d include/{linux,config}
146 ln -sf %{_kernelsrcdir}/config-$cfg .config
147 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
148 ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
149 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
150 touch include/config/MARKER
152 # patching/creating makefile(s) (optional)
154 %{__make} -C %{_kernelsrcdir} clean \
155 RCS_FIND_IGNORE="-name '*.ko' -o" \
158 %{__make} -C %{_kernelsrcdir} modules \
159 CC="%{__cc}" CPP="%{__cpp}" \
167 %if %{with userspace}
171 CFLAGS="%{rpmcflags} -fPIC"
172 %{__cc} -shared -Wl,-soname,libdazuko.so.0 -o libdazuko.so.0.0.0 *.o
173 ln -s libdazuko.so.0.0.0 libdazuko.so.0
174 ln -s libdazuko.so.0.0.0 libdazuko.so
179 rm -rf $RPM_BUILD_ROOT
181 %if %{with userspace}
182 install -d $RPM_BUILD_ROOT{%{_examplesdir}/%{name}-%{version},%{_libdir},%{_includedir}}
184 cp -a example* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
186 cp -af library/libdazuko.* $RPM_BUILD_ROOT%{_libdir}
187 install dazukoio.h $RPM_BUILD_ROOT%{_includedir}
191 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
192 install dazuko-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
193 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/dazuko.ko
194 %if %{with smp} && %{with dist_kernel}
195 install dazuko-smp.ko \
196 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/dazuko.ko
201 rm -rf $RPM_BUILD_ROOT
203 %post -p /sbin/ldconfig
204 %postun -p /sbin/ldconfig
206 %post -n kernel-misc-dazuko
207 %depmod %{_kernel_ver}
209 %postun -n kernel-misc-dazuko
210 %depmod %{_kernel_ver}
212 %post -n kernel-smp-misc-dazuko
213 %depmod %{_kernel_ver}smp
215 %postun -n kernel-smp-misc-dazuko
216 %depmod %{_kernel_ver}smp
219 %files -n kernel-misc-dazuko
220 %defattr(644,root,root,755)
221 /lib/modules/%{_kernel_ver}/misc/*.ko*
223 %if %{with smp} && %{with dist_kernel}
224 %files -n kernel-smp-misc-dazuko
225 %defattr(644,root,root,755)
226 /lib/modules/%{_kernel_ver}smp/misc/*.ko*
230 %if %{with userspace}
232 %defattr(644,root,root,755)
233 %attr(755,root,root) %{_libdir}/libdazuko.so.*.*.*
236 %defattr(644,root,root,755)
238 %{_examplesdir}/%{name}-%{version}
241 %defattr(644,root,root,755)
242 %attr(755,root,root) %{_libdir}/libdazuko.so
243 %{_includedir}/dazukoio.h
246 %defattr(644,root,root,755)