summary refs log tree commit diff
path: root/pkgs/tools/networking
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-03-10 22:22:43 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-03-10 22:22:43 +0000
commit4a44d3244429c35444938bec2307a321966fa90f (patch)
tree9ff5b621689a3af00100594f8df9fa9f32008f1b /pkgs/tools/networking
parent5b7f1ef09a10adc515e3386bd0cb38fb3e4167a6 (diff)
downloadnixpkgs-4a44d3244429c35444938bec2307a321966fa90f.tar
nixpkgs-4a44d3244429c35444938bec2307a321966fa90f.tar.gz
nixpkgs-4a44d3244429c35444938bec2307a321966fa90f.tar.bz2
nixpkgs-4a44d3244429c35444938bec2307a321966fa90f.tar.lz
nixpkgs-4a44d3244429c35444938bec2307a321966fa90f.tar.xz
nixpkgs-4a44d3244429c35444938bec2307a321966fa90f.tar.zst
nixpkgs-4a44d3244429c35444938bec2307a321966fa90f.zip
Made tcpdump crossbuild.
svn path=/nixpkgs/trunk/; revision=20543
Diffstat (limited to 'pkgs/tools/networking')
-rw-r--r--pkgs/tools/networking/tcpdump/default.nix10
-rw-r--r--pkgs/tools/networking/tcpdump/disable-ipv6.patch17
2 files changed, 26 insertions, 1 deletions
diff --git a/pkgs/tools/networking/tcpdump/default.nix b/pkgs/tools/networking/tcpdump/default.nix
index b7b00599616..939bc400eae 100644
--- a/pkgs/tools/networking/tcpdump/default.nix
+++ b/pkgs/tools/networking/tcpdump/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libpcap }:
+{ stdenv, fetchurl, libpcap, enableStatic ? false }:
 
 stdenv.mkDerivation rec {
   name = "tcpdump-4.0.0";
@@ -10,6 +10,14 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libpcap ];
 
+  patches = [ ./disable-ipv6.patch ];
+
+  crossAttrs = {
+    LDFLAGS = if enableStatic then "-static" else "";
+    configureFlags = [ "ac_cv_linux_vers=2" ] ++ (stdenv.lib.optional
+      (stdenv.cross.platform.kernelMajor == "2.4") "--disable-ipv6");
+  };
+
   meta = {
     description = "tcpdump, a famous network sniffer";
     homepage = http://www.tcpdump.org/;
diff --git a/pkgs/tools/networking/tcpdump/disable-ipv6.patch b/pkgs/tools/networking/tcpdump/disable-ipv6.patch
new file mode 100644
index 00000000000..0c869369faa
--- /dev/null
+++ b/pkgs/tools/networking/tcpdump/disable-ipv6.patch
@@ -0,0 +1,17 @@
+Needed for proper building with ipv6 disabled
+http://marc.info/?l=tcpdump-workers&m=122606195828825&w=2
+--- a/print-enc.c	2008-11-04 16:24:30 +0000
++++ b/print-enc.c	2008-11-04 16:45:04 +0000
+@@ -77,9 +77,11 @@
+ 	case AF_INET:
+ 		ip_print(gndo, p, length);
+ 		break;
++#ifdef INET6
+ 	case AF_INET6:
+ 		ip6_print(p, length);
+ 		break;
++#endif /*INET6*/
+ 	}
+ 
+ out:
+