From 6392844f470e985b8a89e0405a54d9991deb9045 Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Thu, 26 Apr 2012 16:44:28 +0200 Subject: [PATCH] fixed specfile to be able to run against stock kernel (in which case kernel_version and the like should not be exported through the build) --- planetlab/ipfwroot.spec | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/planetlab/ipfwroot.spec b/planetlab/ipfwroot.spec index c2fdae5..e0472fc 100644 --- a/planetlab/ipfwroot.spec +++ b/planetlab/ipfwroot.spec @@ -16,10 +16,28 @@ %define version 20120610 %define taglevel 1 +# when no planetlab kernel is being built, kernel_version is defined but empty +%define _with_planetlab_kernel %{?kernel_version:1}%{!?kernel_version:0} # we need to make sure that this rpm gets upgraded when the kernel release changes +%if %{_with_planetlab_kernel} +# with the planetlab kernel %define pl_kernel_taglevel %( echo %{kernel_release} | cut -d. -f1 ) - -%define release %{kernel_version}.%{pl_kernel_taglevel}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} +%define ipfw_release %{kernel_version}.%{pl_kernel_taglevel} +%else +# with the stock kernel +# this line below +#%define ipfw_release %( rpm -q --qf "%{version}" kernel-headers ) +# causes recursive macro definition no matter how much you quote +%define percent % +%define braop \{ +%define bracl \} +%define kernel_version %( rpm -q --qf %{percent}%{braop}version%{bracl} kernel-headers ) +%define kernel_release %( rpm -q --qf %{percent}%{braop}release%{bracl} kernel-headers ) +%define kernel_arch %( rpm -q --qf %{percent}%{braop}arch%{bracl} kernel-headers ) +%define ipfw_release %{kernel_version}.%{kernel_release} +%endif + +%define release %{ipfw_release}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} # guess which convention is used; k27 and before used dash, k32 uses dot %define kernelpath_dash /usr/src/kernels/%{kernel_version}-%{kernel_release}-%{kernel_arch} -- 2.43.0