%bcond_without dist_kernel # allow non-distribution kernel
%bcond_without kernel # don't build kernel modules
%bcond_without smp # don't build SMP module
-%bcond_without userspace # don't build userspace module
+%bcond_without userspace # don't build userspace programs
%bcond_with verbose # verbose build (V=1)
+
+%if %{without kernel}
+%undefine with_dist_kernel
+%endif
+
#
# main package.
#
+%define _rel 0.1
Summary: -
Summary(pl): -
Name: -
Version: -
-%define _rel 0.x
Release: %{_rel}
-Epoch: -
-License: - (enter GPL/LGPL/BSD/BSD-like/other license name here)
+Epoch: 0
+#License: - (enter GPL/LGPL/BSD/BSD-like/other license name here)
Group: -
-Vendor: -
-Icon: -
Source0: %{name}-%{version}.tar.gz
# Source0-md5: -
-Source1: -
+#Source1: -
# Source1-md5: -
-Patch0: %{name}-what.patch
-URL: -
+#Patch0: %{name}-what.patch
+#URL: -
%if %{with kernel}
-%{?with_dist_kernel:BuildRequires: kernel-module-build >= 2.6.7}
-BuildRequires: rpmbuild(macros) >= 1.153
+%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.14}
+BuildRequires: rpmbuild(macros) >= 1.308
%endif
-BuildRequires: -
-PreReq: -
-Requires(pre,post): -
-Requires(preun): -
-Requires(postun): -
-Requires: -
-Provides: -
-Obsoletes: -
-Conflicts: -
+#BuildRequires: -
+#Requires(postun): -
+#Requires(pre,post): -
+#Requires(preun): -
+#Requires: -
+#Provides: -
+#Obsoletes: -
+#Conflicts: -
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
# kernel subpackages.
-%package -n kernel-...
-Summary: Linux driver for ...
-Summary(pl): Sterownik dla Linuksa do ...
+%package -n kernel%{_alt_kernel}-MODULE_DIR-MODULE_NAME
+Summary: Linux driver for MODULE_NAME
+Summary(pl): Sterownik dla Linuksa do MODULE_NAME
Release: %{_rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
Requires(postun): %releq_kernel_up
%endif
-%description -n kernel-...
-This is driver for ... for Linux.
+%description -n kernel%{_alt_kernel}-MODULE_DIR-MODULE_NAME
+This is driver for MODULE_NAME for Linux.
This package contains Linux module.
-%description -n kernel-... -l pl
-Sterownik dla Linuksa do ...
+%description -n kernel%{_alt_kernel}-MODULE_DIR-MODULE_NAME -l pl
+Sterownik dla Linuksa do MODULE_NAME.
Ten pakiet zawiera modu³ j±dra Linuksa.
-%package -n kernel-smp-...
-Summary: Linux SMP driver for ...
-Summary(pl): Sterownik dla Linuksa SMP do ...
+%package -n kernel%{_alt_kernel}-smp-MODULE_DIR-MODULE_NAME
+Summary: Linux SMP driver for MODULE_NAME
+Summary(pl): Sterownik dla Linuksa SMP do MODULE_NAME
Release: %{_rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
Requires(postun): %releq_kernel_smp
%endif
-%description -n kernel-smp-...
-This is driver for ... for Linux.
+%description -n kernel%{_alt_kernel}-smp-MODULE_DIR-MODULE_NAME
+This is driver for MODULE_NAME for Linux.
This package contains Linux SMP module.
-%description -n kernel-smp-... -l pl
-Sterownik dla Linuksa do ...
+%description -n kernel%{_alt_kernel}-smp-MODULE_DIR-MODULE_NAME -l pl
+Sterownik dla Linuksa do MODULE_NAME.
Ten pakiet zawiera modu³ j±dra Linuksa SMP.
+%prep
+
%build
%if %{with userspace}
if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
exit 1
fi
- rm -rf include
- install -d include/{linux,config}
- ln -sf %{_kernelsrcdir}/config-$cfg .config
- ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
- ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
- touch include/config/MARKER
+ install -d o/include/linux
+ ln -sf %{_kernelsrcdir}/config-$cfg o/.config
+ ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
+ ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
+%if %{with dist_kernel}
+ %{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts
+%else
+ install -d o/include/config
+ touch o/include/config/MARKER
+ ln -sf %{_kernelsrcdir}/scripts o/scripts
+%endif
#
# patching/creating makefile(s) (optional)
#
%{__make} -C %{_kernelsrcdir} clean \
RCS_FIND_IGNORE="-name '*.ko' -o" \
- M=$PWD O=$PWD \
+ SYSSRC=%{_kernelsrcdir} \
+ SYSOUT=$PWD/o \
+ M=$PWD O=$PWD/o \
%{?with_verbose:V=1}
%{__make} -C %{_kernelsrcdir} modules \
CC="%{__cc}" CPP="%{__cpp}" \
- M=$PWD O=$PWD \
+ SYSSRC=%{_kernelsrcdir} \
+ SYSOUT=$PWD/o \
+ M=$PWD O=$PWD/o \
%{?with_verbose:V=1}
mv MODULE_NAME{,-$cfg}.ko
%clean
rm -rf $RPM_BUILD_ROOT
-%post -n kernel-...
+%post -n kernel%{_alt_kernel}-MODULE_DIR-MODULE_NAME
%depmod %{_kernel_ver}
-%postun -n kernel-...
+%postun -n kernel%{_alt_kernel}-MODULE_DIR-MODULE_NAME
%depmod %{_kernel_ver}
-%post -n kernel-smp-...
+%post -n kernel%{_alt_kernel}-smp-MODULE_DIR-MODULE_NAME
%depmod %{_kernel_ver}smp
-%postun -n kernel-smp-...
+%postun -n kernel%{_alt_kernel}-smp-MODULE_DIR-MODULE_NAME
%depmod %{_kernel_ver}smp
%if %{with kernel}
-%files -n kernel-...
+%files -n kernel%{_alt_kernel}-MODULE_DIR-MODULE_NAME
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/MODULE_DIR/*.ko*
%if %{with smp} && %{with dist_kernel}
-%files -n kernel-smp-...
+%files -n kernel%{_alt_kernel}-smp-MODULE_DIR-MODULE_NAME
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}smp/MODULE_DIR/*.ko*
%endif
%endif
%if %{with userspace}
-%files ...
+%files
%defattr(644,root,root,755)
%endif