summary refs log tree commit diff
path: root/pkgs/os-specific/linux/syslinux/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/syslinux/default.nix')
-rw-r--r--pkgs/os-specific/linux/syslinux/default.nix31
1 files changed, 14 insertions, 17 deletions
diff --git a/pkgs/os-specific/linux/syslinux/default.nix b/pkgs/os-specific/linux/syslinux/default.nix
index 42e6f0b8c29..ae9ed8bf539 100644
--- a/pkgs/os-specific/linux/syslinux/default.nix
+++ b/pkgs/os-specific/linux/syslinux/default.nix
@@ -1,23 +1,20 @@
-{stdenv, fetchurl, nasm, perl}:
+{ stdenv, fetchurl, nasm, perl }:
 
-stdenv.mkDerivation {
-  name = "syslinux-3.35";
+stdenv.mkDerivation rec {
+  name = "syslinux-4.02";
+  
   src = fetchurl {
-    url = mirror://kernel/linux/utils/boot/syslinux/Old/syslinux-3.35.tar.bz2;
-    sha256 = "16kf2zhd0c4m3ai9xcls2y0ggvajhmzk1g6mv6jrv8nskkg6w0l6";
+    url = "mirror://kernel/linux/utils/boot/syslinux/4.xx/${name}.tar.bz2";
+    sha256 = "0zrk6magnrfa7nmdk2rll7xaym9rapwqqgy0wdh3cfscjmcw9kwm";
   };
-  buildInputs = [nasm perl];
 
-  preBuild = "
-    makeFlagsArray=(BINDIR=$out/bin SBINDIR=$out/sbin LIBDIR=$out/lib INCDIR=$out/include)
+  patches = [ ./perl-deps.patch ];
+  
+  buildInputs = [ nasm perl ];
 
-    # Really dirty hack to get syslinux to build without needing a GCC
-    # with 32-bit libraries and headers.
-    if test \"$system\" = x86_64-linux; then
-        substituteInPlace memdisk/Makefile \\
-            --replace 'all: memdisk e820test' 'all: memdisk'
-        mkdir gnu
-        touch gnu/stubs-32.h
-    fi
-  ";
+  preBuild =
+    ''
+      substituteInPlace gpxe/src/Makefile.housekeeping --replace /bin/echo $(type -P echo)
+      makeFlagsArray=(BINDIR=$out/bin SBINDIR=$out/sbin LIBDIR=$out/lib INCDIR=$out/include DATADIR=$out/share MANDIR=$out/share/man PERL=perl)
+    '';
 }