summary refs log tree commit diff
path: root/pkgs/os-specific/linux
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2005-02-21 16:03:34 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2005-02-21 16:03:34 +0000
commite6744d0f893e0641b22996382cc6dcb81f8acc3d (patch)
treeba656c68d6348d24c4814a6da79bb204e06ff2d7 /pkgs/os-specific/linux
parentcdaecff49f9b06d74de87e217659c13b2b2bba98 (diff)
parent8125cd8915a1601280327503ce3ac14e0a356771 (diff)
downloadnixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.tar
nixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.tar.gz
nixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.tar.bz2
nixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.tar.lz
nixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.tar.xz
nixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.tar.zst
nixpkgs-e6744d0f893e0641b22996382cc6dcb81f8acc3d.zip
* Merge diff between trunk/pkgs@1646 and branches/nixos-pkgs@2256;
  this contains mostly Armijn's pure stdenv-linux.

* After unpacking the statically linked GCC, patch all store paths to
  /nix/store/ffffffffffffffffffffffffffffffff.  Ugly hack to prevent
  undeclared references but it works.

* We don't need Glib's dynamic libraries in the first bootstrap stage;
  delete them.  Actually the downloaded Glibc binary is only needed
  for building Glibc, since GCC needs a C compiler to build some
  programs in `configure'.  So static linking is fine for that.  Maybe
  it would be better to patch `configure' so that we don't need a
  pre-built Glibc at all.

* Set the svn:executable property on `cp' and `patchelf'.

* In Glibc, revert to LinuxThreads.  Maybe NPTL will work, but TLS
  support is a problem.

* Delete most Glibc patches; they're no longer needed since the branch
  updated it to 20050110.
  
* Some cleanups.

svn path=/nixpkgs/trunk/; revision=2258
Diffstat (limited to 'pkgs/os-specific/linux')
-rw-r--r--pkgs/os-specific/linux/kernel-headers/builder.sh2
-rw-r--r--pkgs/os-specific/linux/kernel-headers/default.nix6
-rw-r--r--pkgs/os-specific/linux/modutils/default.nix10
-rw-r--r--pkgs/os-specific/linux/net-tools/builder.sh1
-rw-r--r--pkgs/os-specific/linux/net-tools/default.nix1
-rw-r--r--pkgs/os-specific/linux/net-tools/net-tools-labels.patch38
6 files changed, 54 insertions, 4 deletions
diff --git a/pkgs/os-specific/linux/kernel-headers/builder.sh b/pkgs/os-specific/linux/kernel-headers/builder.sh
index 823b21ae411..1b734c5f426 100644
--- a/pkgs/os-specific/linux/kernel-headers/builder.sh
+++ b/pkgs/os-specific/linux/kernel-headers/builder.sh
@@ -11,7 +11,7 @@ buildPhase=buildPhase
 installPhase() {
     mkdir $out
     mkdir $out/include
-    cp -prvd include/linux include/asm-i386 $out/include
+    cp -prvd include/linux include/asm-i386 include/asm-generic $out/include
     cd $out/include
     ln -s asm-i386 asm
     echo -n > $out/include/linux/autoconf.h
diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix
index 2981ccb0cef..908f0b055bb 100644
--- a/pkgs/os-specific/linux/kernel-headers/default.nix
+++ b/pkgs/os-specific/linux/kernel-headers/default.nix
@@ -3,10 +3,10 @@
 assert stdenv.system == "i686-linux";
 
 stdenv.mkDerivation {
-  name = "linux-headers-2.4.25-i386";
+  name = "linux-headers-2.6.9-i386";
   builder = ./builder.sh;
   src = fetchurl {
-    url = http://catamaran.labs.cs.uu.nl/dist/tarballs/linux-2.4.25.tar.bz2;
-    md5 = "5fc8e9f43fa44ac29ddf9a9980af57d8";
+    url = ftp://ftp.nluug.nl/pub/os/Linux/system/kernel/v2.6/linux-2.6.9.tar.bz2;
+    md5 = "e921200f074ca97184e150ef5a4af825";
   };
 }
diff --git a/pkgs/os-specific/linux/modutils/default.nix b/pkgs/os-specific/linux/modutils/default.nix
new file mode 100644
index 00000000000..3f2b2a96ac6
--- /dev/null
+++ b/pkgs/os-specific/linux/modutils/default.nix
@@ -0,0 +1,10 @@
+{stdenv, fetchurl, bison, flex}:
+
+stdenv.mkDerivation {
+  name = "modutils-2.4.25";
+  src = fetchurl {
+    url = ftp://ftp.nl.kernel.org/pub/linux/utils/kernel/modutils/v2.4/modutils-2.4.25.tar.bz2;
+    md5 = "2c0cca3ef6330a187c6ef4fe41ecaa4d";
+  };
+  buildInputs = [bison flex];
+}
diff --git a/pkgs/os-specific/linux/net-tools/builder.sh b/pkgs/os-specific/linux/net-tools/builder.sh
index 17dea5297f6..c7f9975866a 100644
--- a/pkgs/os-specific/linux/net-tools/builder.sh
+++ b/pkgs/os-specific/linux/net-tools/builder.sh
@@ -6,6 +6,7 @@ cd net-tools-*
 cp $config config.h
 sed "s^/usr/share/man^/share^"  < man/Makefile > tmp
 mv tmp man/Makefile
+patch -p1 < $patch
 make
 mkdir $out
 make BASEDIR=$out install
diff --git a/pkgs/os-specific/linux/net-tools/default.nix b/pkgs/os-specific/linux/net-tools/default.nix
index 3fb269943fc..240e9b57152 100644
--- a/pkgs/os-specific/linux/net-tools/default.nix
+++ b/pkgs/os-specific/linux/net-tools/default.nix
@@ -8,4 +8,5 @@ stdenv.mkDerivation {
     md5 = "888774accab40217dde927e21979c165";
   };
   config = ./config.h;
+  patch = ./net-tools-labels.patch;
 }
diff --git a/pkgs/os-specific/linux/net-tools/net-tools-labels.patch b/pkgs/os-specific/linux/net-tools/net-tools-labels.patch
new file mode 100644
index 00000000000..82c3a27d9c6
--- /dev/null
+++ b/pkgs/os-specific/linux/net-tools/net-tools-labels.patch
@@ -0,0 +1,38 @@
+diff -ruN net-tools-1.60/hostname.c net-tools-1.60-new/hostname.c
+--- net-tools-1.60/hostname.c	2001-04-08 19:04:23.000000000 +0200
++++ net-tools-1.60-new/hostname.c	2004-12-17 14:48:15.624174382 +0100
+@@ -98,6 +98,7 @@
+ 	    fprintf(stderr, _("%s: name too long\n"), program_name);
+ 	    break;
+ 	default:
++	    break;
+ 	}
+ 	exit(1);
+     };
+@@ -117,6 +118,7 @@
+ 	    fprintf(stderr, _("%s: name too long\n"), program_name);
+ 	    break;
+ 	default:
++	    break;
+ 	}
+ 	exit(1);
+     };
+@@ -174,6 +176,7 @@
+ 	printf("%s\n", hp->h_name);
+ 	break;
+     default:
++	break;
+     }
+ }
+ 
+diff -ruN net-tools-1.60/lib/inet_sr.c net-tools-1.60-new/lib/inet_sr.c
+--- net-tools-1.60/lib/inet_sr.c	2000-02-20 22:46:45.000000000 +0100
++++ net-tools-1.60-new/lib/inet_sr.c	2004-12-17 14:37:15.416349441 +0100
+@@ -105,6 +105,7 @@
+     case 2:
+        isnet = 0; break;
+     default:
++	break;
+     }
+ 
+     /* Fill in the other fields. */