summary refs log tree commit diff
path: root/pkgs/os-specific/linux/kernel/linux-2.6.15.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/kernel/linux-2.6.15.nix')
-rw-r--r--pkgs/os-specific/linux/kernel/linux-2.6.15.nix48
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.15.nix b/pkgs/os-specific/linux/kernel/linux-2.6.15.nix
new file mode 100644
index 000000000000..2dd67f46167c
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.15.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl, extraConfig ? "", ... } @ args:
+
+let
+  configWithPlatform = kernelPlatform:
+  ''
+    # Don't include any debug features.
+    DEBUG_KERNEL n
+
+    # Support drivers that need external firmware.
+    STANDALONE n
+
+    # Make /proc/config.gz available.
+    IKCONFIG_PROC y
+
+    # Optimize with -O2, not -Os.
+    CC_OPTIMIZE_FOR_SIZE n
+
+    # Enable various subsystems.
+    MTD_COMPLEX_MAPPINGS y # needed for many devices
+
+    # Networking options.
+    IP_PNP n
+    IPV6_PRIVACY y
+
+    # Filesystem options - in particular, enable extended attributes and
+    # ACLs for all filesystems that support them.
+    CIFS_XATTR y
+    CIFS_POSIX y
+
+    ${extraConfig}
+  '';
+in
+
+import ./generic.nix (rec {
+  version = "2.6.15.7";
+  postBuild = "make $makeFlags $kernelTarget";
+
+  src = fetchurl {
+    url = "ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${version}.tar.bz2";
+      sha256 = "43e0c251924324749b06464512532c3002d6294520faabdba5b3aea4e840b48b";
+  };
+
+  config = configWithPlatform stdenv.platform;
+  configCross = configWithPlatform stdenv.cross.platform;
+}
+
+// removeAttrs args ["extraConfig"]
+)
\ No newline at end of file