X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=transforward.spec;h=394a9b0259ed8991f64d5cf20a90f635da355f10;hb=1e03324dbd36e661ba19a86bdbfae8823f314552;hp=ac0d0d4402bc93af1902321c4600cdb7b6a2ba7c;hpb=71b2cf441369c34aff3033d39e1c79e27bc39eb4;p=transforward.git diff --git a/transforward.spec b/transforward.spec index ac0d0d4..394a9b0 100644 --- a/transforward.spec +++ b/transforward.spec @@ -1,15 +1,35 @@ -%define url $URL$ - %define name transforward %define version 0.1 -%define taglevel 1 +%define taglevel 3 + +### legacy from locally-built kernels, used to define these +# kernel_release : 1.fc16 (24 is then the planetlab taglevel) +# kernel_version : 3.3.7 +# kernel_arch : i686 | x86_64 + +# compute this with "rpm -q --qf .. kernel-devel" when with the stock kernel +# this line below +#%define module_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 ) + +# this is getting really a lot of stuff, could be made simpler probably +%define release %{kernel_version}.%{kernel_release}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} + +%define kernel_id %{kernel_version}-%{kernel_release}.%{kernel_arch} +%define kernelpath /usr/src/kernels/%{kernel_id} -%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} Vendor: PlanetLab Packager: PlanetLab Central Distribution: PlanetLab %{plrelease} -URL: %(echo %{url} | cut -d ' ' -f 2) +URL: %{SCMURL} +Requires: kernel = %{kernel_version}-%{kernel_release} Summary: Kernel module that transparently forwards ports between containers Name: %{name} @@ -27,20 +47,27 @@ Kernel module that transparently forwards ports between containers %setup -q %build -make -C /lib/modules/`ls /lib/modules | head -1`/build M=$PWD modules +make -C %{kernelpath} V=1 M=$(pwd) modules %install -mkdir -p $RPM_BUILD_ROOT/lib/modules/`ls /lib/modules | head -1`/kernel/net/transforward -cp transforward.ko $RPM_BUILD_ROOT/lib/modules/`ls /lib/modules | head -1`/kernel/net/transforward +install -D -m 755 transforward.ko $RPM_BUILD_ROOT/lib/modules/%{kernel_id}/net/transforward/transforward.ko +mkdir -p $RPM_BUILD_ROOT/etc/modules-load.d +install -m 644 transforward.conf $RPM_BUILD_ROOT/etc/modules-load.d/transforward.conf %clean rm -rf $RPM_BUILD_ROOT %files -/lib +/lib/modules/%{kernel_id} +/etc/modules-load.d/transforward.conf %post +/sbin/depmod -a %postun %changelog +* Mon Jul 09 2012 Thierry Parmentelat - transforward-0.1-2 +- load module at boot-time +- various tweaks, remove debugging statements +