summary refs log tree commit diff
path: root/pkgs/os-specific/linux/kernel-headers
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2009-01-16 10:59:27 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2009-01-16 10:59:27 +0000
commitc1579d2e78f76e7ad3b30cc2961fafe7b8a24a74 (patch)
tree904516c8b572724b240f93e7901d324caf12daa3 /pkgs/os-specific/linux/kernel-headers
parent821de7706a4a44d919c95f0e990ac01840788c94 (diff)
parent4eedf7dae894a40f6c70cc80735f1500ded9bff3 (diff)
downloadnixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.tar
nixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.tar.gz
nixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.tar.bz2
nixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.tar.lz
nixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.tar.xz
nixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.tar.zst
nixlib-c1579d2e78f76e7ad3b30cc2961fafe7b8a24a74.zip
* stdenv branch: synced with the trunk.
svn path=/nixpkgs/branches/stdenv-updates/; revision=13785
Diffstat (limited to 'pkgs/os-specific/linux/kernel-headers')
-rw-r--r--pkgs/os-specific/linux/kernel-headers/2.6.26.2.nix24
-rw-r--r--pkgs/os-specific/linux/kernel-headers/2.6.28.nix44
2 files changed, 64 insertions, 4 deletions
diff --git a/pkgs/os-specific/linux/kernel-headers/2.6.26.2.nix b/pkgs/os-specific/linux/kernel-headers/2.6.26.2.nix
index 1226754e1fbe..6f0c01e6ee51 100644
--- a/pkgs/os-specific/linux/kernel-headers/2.6.26.2.nix
+++ b/pkgs/os-specific/linux/kernel-headers/2.6.26.2.nix
@@ -2,13 +2,13 @@
 
 assert stdenv.isLinux;
 
+let version = "2.6.26.2"; in 
+
 stdenv.mkDerivation {
-  name = "linux-headers-2.6.26.2";
-  
-  builder = ./builder.sh;
+  name = "linux-headers-${version}";
   
   src = fetchurl {
-    url = "mirror://kernel/linux/kernel/v2.6/linux-2.6.26.2.tar.bz2";
+    url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
     sha256 = "0xrkv6wk5l4qhza35a76cd00a7g9xv3ymw7znwskig2kmqswnp1m";
   };
 
@@ -23,4 +23,20 @@ stdenv.mkDerivation {
 
   extraIncludeDirs =
     if stdenv.system == "powerpc-linux" then ["ppc"] else [];
+
+  patchPhase = ''
+    sed -i '/scsi/d' include/Kbuild
+  '';
+
+  buildPhase = ''
+    make mrproper headers_check
+  '';
+
+  installPhase = ''
+    make INSTALL_HDR_PATH=$out headers_install
+
+    # Some builds (e.g. KVM) want a kernel.release.
+    ensureDir $out/include/config
+    echo "${version}-default" > $out/include/config/kernel.release
+  '';
 }
diff --git a/pkgs/os-specific/linux/kernel-headers/2.6.28.nix b/pkgs/os-specific/linux/kernel-headers/2.6.28.nix
new file mode 100644
index 000000000000..46f662e46b1b
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel-headers/2.6.28.nix
@@ -0,0 +1,44 @@
+{stdenv, fetchurl, perl}:
+
+assert stdenv.isLinux;
+
+let version = "2.6.28"; in 
+
+stdenv.mkDerivation {
+  name = "linux-headers-${version}";
+  
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
+    sha256 = "1023nl992s4qmnwzbfz385azzpph58azi5rw4w0wwzzybv2rf3df";
+  };
+
+  platform = 
+    if stdenv.system == "i686-linux" then "i386" else
+    if stdenv.system == "x86_64-linux" then "x86_64" else
+    if stdenv.system == "powerpc-linux" then "powerpc" else
+    abort "don't know what the kernel include directory is called for this platform";
+
+  buildInputs = [perl];
+
+  # !!! hacky
+  fixupPhase = "ln -s $out/include/asm $out/include/asm-$platform";
+
+  extraIncludeDirs =
+    if stdenv.system == "powerpc-linux" then ["ppc"] else [];
+
+  patchPhase = ''
+    sed -i '/scsi/d' include/Kbuild
+  '';
+
+  buildPhase = ''
+    make mrproper headers_check
+  '';
+
+  installPhase = ''
+    make INSTALL_HDR_PATH=$out headers_install
+
+    # Some builds (e.g. KVM) want a kernel.release.
+    ensureDir $out/include/config
+    echo "${version}-default" > $out/include/config/kernel.release
+  '';
+}