# Define the kmod package name here. %define kmod_name openswan # If kversion isn't defined on the rpmbuild line, define it here. %{!?kversion: %define kversion 2.6.18-238.9.1.el5} Name: %{kmod_name}-kmod Version: 2.6.34dr1 Release: 1%{?dist} Group: System Environment/Kernel License: GPL v2 Summary: %{kmod_name} kernel module URL: http://www.kernel.org/ BuildRequires: rpm-build, redhat-rpm-config BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-build-%(%{__id_u} -n) ExclusiveArch: i386 i686 x86_64 # Sources. Source0: %{kmod_name}-%{version}.tar.gz Source10: kmodtool-el5-%{kmod_name}.sh # Define the variants for each architecture. %define basevar "" %ifarch i686 %define paevar PAE %endif %ifarch i686 x86_64 %define xenvar xen %endif # If kvariants isn't defined on the rpmbuild line, build all variants for this architecture. %{!?kvariants: %define kvariants %{?basevar} %{?xenvar} %{?paevar}} # Magic hidden here. %define kmodtool sh %{SOURCE10} %{expand:%(%{kmodtool} rpmtemplate_kmp %{kmod_name} %{kversion} %{kvariants} 2>/dev/null)} # Disable the building of the debug package(s). %define debug_package %{nil} # Define the filter. %define __find_requires sh %{_builddir}/%{buildsubdir}/filter-requires.sh %description Openswan klips module %prep %setup -q -c -T -a 0 echo "/usr/lib/rpm/redhat/find-requires | %{__sed} -e '/^ksym.*/d'" > filter-requires.sh for kvariant in %{kvariants} ; do %{__cp} -a %{kmod_name}-%{version} _kmod_build_$kvariant %{__cat} <<-EOF > _kmod_build_$kvariant/%{kmod_name}.conf override %{kmod_name} * weak-updates/%{kmod_name} EOF done %build for kvariant in %{kvariants} ; do ksrc=%{_usrsrc}/kernels/%{kversion}${kvariant:+-$kvariant}-%{_target_cpu} pushd _kmod_build_$kvariant pwd #%{__make} -C "${ksrc}" %{?_smp_mflags} module M=$PWD %{__make} KERNELSRC="${ksrc}" %{?_smp_mflags} module #M=$PWD popd done %install export INSTALL_MOD_PATH=$RPM_BUILD_ROOT export INSTALL_MOD_DIR=kernel/net/ipsec/ for kvariant in %{kvariants} ; do ksrc=%{_usrsrc}/kernels/%{kversion}${kvariant:+-$kvariant}-%{_target_cpu} pushd _kmod_build_$kvariant %{__make} KERNELSRC="${ksrc}" module_install #M=$PWD %{__install} -d ${INSTALL_MOD_PATH}/etc/depmod.d/ %{__install} %{kmod_name}.conf ${INSTALL_MOD_PATH}/etc/depmod.d/ popd done # Strip the module(s). find ${INSTALL_MOD_PATH} -type f -name \*.ko -exec %{__strip} --strip-debug \{\} \; %clean %{__rm} -rf $RPM_BUILD_ROOT %changelog * Wed Apr 20 2010 Paul Wouters - 2.6.34dr1 - Initial kmod-openswan package - Completely based on the kmod for coretemp. Thanks people!