1 %define name transforward
5 ### legacy from locally-built kernels, used to define these
6 # kernel_release, kernel_version and kernel_arch are expected to be set by the build to e.g.
7 # kernel_release : 24.onelab (24 is then the planetlab taglevel)
8 # kernel_version : 2.6.27.57 | 2.6.32 (57 in the 27 case is the patch level)
9 # kernel_arch : i686 | x86_64
11 # with the stock kernel
13 #%define module_release %( rpm -q --qf "%{version}" kernel-headers )
14 # causes recursive macro definition no matter how much you quote
18 %define kernel_version %( rpm -q --qf %{percent}%{braop}version%{bracl} kernel-headers )
19 %define kernel_release %( rpm -q --qf %{percent}%{braop}release%{bracl} kernel-headers )
20 %define kernel_arch %( rpm -q --qf %{percent}%{braop}arch%{bracl} kernel-headers )
22 # this is getting really a lot of stuff, could be made simpler probably
23 %define release %{kernel_version}.%{kernel_release}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
25 %define kernel_id %{kernel_version}-%{kernel_release}.%{kernel_arch}
26 %define kernelpath /usr/src/kernels/%{kernel_id}
30 Packager: PlanetLab Central <support@planet-lab.org>
31 Distribution: PlanetLab %{plrelease}
34 Summary: Kernel module that transparently forwards ports between containers
39 Group: System Environment/Kernel
40 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
41 Source0: transforward-%{version}.tar.gz
44 Kernel module that transparently forwards ports between containers
50 make -C %{kernelpath} V=1 M=$(pwd) modules
53 install -D -m 755 transforward.ko $RPM_BUILD_ROOT/lib/modules/%{kernel_id}/net/transforward/transforward.ko
56 rm -rf $RPM_BUILD_ROOT
59 /lib/modules/%{kernel_id}