I revert my changes to get nixpkgs working on armv5tel-linux.
[nixpkgs-libre.git] / pkgs / os-specific / linux / kernel-headers / 2.6.28.nix
blob3136f52db8e858fa311055f50a88e8be728d6450
1 {stdenv, fetchurl, perl}:
3 assert stdenv.isLinux;
5 let version = "2.6.28.5"; in 
7 stdenv.mkDerivation {
8   name = "linux-headers-${version}";
9   
10   src = fetchurl {
11     url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
12     sha256 = "0hifjh75sinifr5138v22zwbpqln6lhn65k8b57a1dyzlqca7cl9";
13   };
15   platform = 
16     if stdenv.system == "i686-linux" then "i386" else
17     if stdenv.system == "x86_64-linux" then "x86_64" else
18     if stdenv.system == "powerpc-linux" then "powerpc" else
19     abort "don't know what the kernel include directory is called for this platform";
21   buildInputs = [perl];
23   extraIncludeDirs =
24     if stdenv.system == "powerpc-linux" then ["ppc"] else [];
26   patchPhase = ''
27     sed -i '/scsi/d' include/Kbuild
28   '';
30   buildPhase = ''
31     make mrproper headers_check
32   '';
34   installPhase = ''
35     make INSTALL_HDR_PATH=$out headers_install
37     # Some builds (e.g. KVM) want a kernel.release.
38     ensureDir $out/include/config
39     echo "${version}-default" > $out/include/config/kernel.release
40   '';
42   # !!! hacky
43   fixupPhase = ''
44     ln -s asm $out/include/asm-$platform
45     if test "$platform" = "i386" -o "$platform" = "x86_64"; then
46       ln -s asm $out/include/asm-x86
47     fi  
48   '';