apply same changes as in madwifi for building against k32
authorThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Tue, 7 Dec 2010 14:06:10 +0000 (15:06 +0100)
committerThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Tue, 7 Dec 2010 14:06:10 +0000 (15:06 +0100)
planetlab/ipfwroot.spec

index ef2c98f..2b1823f 100644 (file)
 %define taglevel 17
 
 %define release %{kernel_version}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
-%define kernel_id_arch %{kernel_version}-%{kernel_release}-%{kernel_arch}
-%define kernel_id %{kernel_version}-%{kernel_release}
+# use any of these two if found
+%define kernelpath_dash /usr/src/kernels/%{kernel_version}-%{kernel_release}-%{kernel_arch}
+%define kernelpath_dot /usr/src/kernels/%{kernel_version}-%{kernel_release}.%{kernel_arch}
+# the k32 kernel currently builds e.g. /lib/modules/2.6.32-0.onelab.2010.12.07-i686
+# the extra star should address the -i686 part, that k27 does not have
+%define kernel_id %{kernel_version}-%{kernel_release}*
 
 Summary: ipfw and dummynet for Linux
 Name: %{name}
@@ -51,7 +55,8 @@ ipfw is the Linux port of the FreeBSD ipfw and dummynet packages
 rm -rf $RPM_BUILD_ROOT
 
 # with the new build, we use the kernel-devel rpm for building
-%define kernelpath /usr/src/kernels/%{kernel_id_arch}
+# guess which convention is used; k27 and before used dash, k32 uses dot
+%define kernelpath %( [ -d %{kernelpath_dot} ] && echo %{kernelpath_dot} || echo %{kernelpath_dash} )
 
 %__make KERNELPATH=%kernelpath clean
 %__make KERNELPATH=%kernelpath IPFW_PLANETLAB=1