2 # Replace MODULE_NAME with real module name and MODULE_DIR
3 # with required directory name.
6 %bcond_without dist_kernel # allow non-distribution kernel
7 %bcond_without kernel # don't build kernel modules
8 %bcond_without smp # don't build SMP module
9 %bcond_without userspace # don't build userspace module
10 %bcond_with verbose # verbose build (V=1)
20 License: - (enter GPL/LGPL/BSD/BSD-like/other license name here)
24 Source0: %{name}-%{version}.tar.gz
28 Patch0: %{name}-what.patch
31 %{?with_dist_kernel:BuildRequires: kernel-module-build >= 2.6.7}
32 BuildRequires: rpmbuild(macros) >= 1.153
43 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51 %package -n kernel-...
52 Summary: Linux driver for ...
53 Summary(pl): Sterownik dla Linuksa do ...
54 Release: %{_rel}@%{_kernel_ver_str}
56 %{?with_dist_kernel:%requires_releq_kernel_up}
57 Requires(post,postun): /sbin/depmod
58 %{?with_dist_kernel:Requires(postun): kernel}
60 %description -n kernel-smp-...
61 This is driver for ... for Linux.
63 This package contains Linux module.
65 %description -n kernel-smp-... -l pl
66 Sterownik dla Linuksa do ...
68 Ten pakiet zawiera modu³ j±dra Linuksa.
70 %package -n kernel-smp-...
71 Summary: Linux SMP driver for ...
72 Summary(pl): Sterownik dla Linuksa SMP do ...
73 Release: %{_rel}@%{_kernel_ver_str}
75 %{?with_dist_kernel:%requires_releq_kernel_smp}
76 Requires(post,postun): /sbin/depmod
77 %{?with_dist_kernel:Requires(postun): kernel-smp}
79 %description -n kernel-smp-...
80 This is driver for ... for Linux.
82 This package contains Linux SMP module.
84 %description -n kernel-smp-... -l pl
85 Sterownik dla Linuksa do ...
87 Ten pakiet zawiera modu³ j±dra Linuksa SMP.
97 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
98 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
102 install -d include/{linux,config}
103 ln -sf %{_kernelsrcdir}/config-$cfg .config
104 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
105 ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
106 touch include/config/MARKER
108 # patching/creating makefile(s) (optional)
110 %{__make} -C %{_kernelsrcdir} clean \
111 RCS_FIND_IGNORE="-name '*.ko' -o" \
114 %{__make} -C %{_kernelsrcdir} modules \
115 CC="%{__cc}" CPP="%{__cpp}" \
119 mv MODULE_NAME{,-$cfg}.ko
124 rm -rf $RPM_BUILD_ROOT
126 %if %{with userspace}
132 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/MODULE_DIR
133 install MODULE_NAME-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
134 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/MODULE_DIR/MODULE_NAME.ko
135 %if %{with smp} && %{with dist_kernel}
136 install MODULE_NAME-smp.ko \
137 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/MODULE_DIR/MODULE_NAME.ko
142 rm -rf $RPM_BUILD_ROOT
145 %depmod %{_kernel_ver}
148 %depmod %{_kernel_ver}
150 %post -n kernel-smp-...
151 %depmod %{_kernel_ver}smp
153 %postun -n kernel-smp-...
154 %depmod %{_kernel_ver}smp
158 %defattr(644,root,root,755)
159 /lib/modules/%{_kernel_ver}/MODULE_DIR/*.ko*
161 %if %{with smp} && %{with dist_kernel}
162 %files -n kernel-smp-...
163 %defattr(644,root,root,755)
164 /lib/modules/%{_kernel_ver}smp/MODULE_DIR/*.ko*
168 %if %{with userspace}
170 %defattr(644,root,root,755)