# (un)define the next line to either build for the newest or all current kernels %define buildforkernels current # used to get buildsys-build-%{repo}-kerneldevpkgs %define repo rpmfusion Name: VirtualBox-OSE-kmod Version: 2.0.2 Release: 1%{?dist} Summary: Kernel module for VirtualBox-OSE Group: System Environment/Kernel License: GPLv2 URL: http://www.virtualbox.org/wiki/VirtualBox # This filters out the XEN kernel, since we don't run on XEN Source1: VirtualBox-OSE-kmod-1.6.4-kernel-variants.txt BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_bindir}/kmodtool BuildRequires: VirtualBox-OSE-kmodsrc = %{version} Requires: VirtualBox-OSE = %{version}-%{release} # needed for plague to make sure it builds for i586 and i686 ExclusiveArch: i586 i686 x86_64 # get the proper build-sysbuild package from the repo, which # tracks in all the kernel-devel packages %{!?kernels:BuildRequires: buildsys-build-%{repo}-kerneldevpkgs-%{?buildforkernels:%{buildforkernels}}%{!?buildforkernels:current}-%{_target_cpu} } # kmodtool does its magic here %{expand:%(kmodtool --target %{_target_cpu} --repo %{repo} --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} --filterfile %{SOURCE1} 2>/dev/null) } %description Kernel module for VirtualBox-OSE %prep %setup -T -c # error out if there was something wrong with kmodtool %{?kmodtool_check} # print kmodtool output for debugging purposes: kmodtool --target %{_target_cpu} --repo %{repo} --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} --filterfile %{SOURCE1} 2>/dev/null for kernel_version in %{kernel_versions} ; do cp -a %{_prefix}/src/%{name}-%{version} _kmod_build_${kernel_version%%___*} done %build for kernel_version in %{kernel_versions}; do make %{?_smp_mflags} -C "${kernel_version##*___}" SUBDIRS=${PWD}/_kmod_build_${kernel_version%%___*} modules done %install rm -rf $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT for kernel_version in %{kernel_versions}; do install -D -m 755 _kmod_build_${kernel_version%%___*}/vboxdrv.ko ${RPM_BUILD_ROOT}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/vboxdrv.ko done %{?akmod_install} %clean rm -rf $RPM_BUILD_ROOT %changelog * Tue Sep 02 2008 Lubomir Rintel - 1.6.4-2 - Use the VirtualBox-OSE build-time generated source tree * Tue Sep 02 2008 Lubomir Rintel - 1.6.4-1 - New upstream version, don't build for Xen needlessly * Sat Mar 08 2008 Till Maas - 1.5.6-3 - rewrite to a kmodspec for rpmfusion * Fri Mar 07 2008 Lubomir Kundrak - 1.5.6-2 - Fix build by passing kernel source tree path to make * Sun Feb 24 2008 Till Maas - 1.5.6-1 - update to new version * Sun Jan 20 2008 Till Maas - 1.5.4-1 - initial spec, split out from VirtualBox-OSE spec