Revert "syslinux: 2015-11-09 -> 2019-02-07"

This reverts commit 0b49d5dd68 #55500.
I'm sorry, I'm unable to fix the build quickly in other way than
atop the older version.  Certainly feel free to improve the approach.
This commit is contained in:
Vladimír Čunát 2019-02-19 12:01:27 +01:00
parent 4851a04deb
commit 555912067f
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
2 changed files with 100 additions and 7 deletions

View file

@ -1,19 +1,31 @@
{ stdenv, fetchFromRepoOrCz, fetchpatch, nasm, perl, python, libuuid, mtools, makeWrapper }:
{ stdenv, fetchFromGitHub, fetchurl, nasm, perl, python, libuuid, mtools, makeWrapper }:
stdenv.mkDerivation rec {
# This is syslinux-6.04-pre3^1; syslinux-6.04-pre3 fails to run.
# Same issue here https://www.syslinux.org/archives/2019-February/026330.html
name = "syslinux-2019-02-07";
name = "syslinux-2015-11-09";
src = fetchFromRepoOrCz {
src = fetchFromGitHub {
owner = "geneC";
repo = "syslinux";
rev = "b40487005223a78c3bb4c300ef6c436b3f6ec1f7";
sha256 = "1qrxl1114sr2i2791z9rf8v53g200aq30f08808d7i8qnmgvxl2w";
rev = "0cc9a99e560a2f52bcf052fd85b1efae35ee812f";
sha256 = "0wk3r5ki4lc334f9jpml07wpl8d0bnxi9h1l4h4fyf9a0d7n4kmw";
};
patches = [
./perl-deps.patch
(fetchurl {
# ldlinux.elf: Not enough room for program headers, try linking with -N
name = "not-enough-room.patch";
url = "https://anonscm.debian.org/cgit/collab-maint/syslinux.git/plain/"
+ "debian/patches/0014_fix_ftbfs_no_dynamic_linker.patch?id=a556ad7";
sha256 = "0ijqjsjmnphmvsx0z6ppnajsfv6xh6crshy44i2a5klxw4nlvrsw";
})
];
postPatch = ''
substituteInPlace Makefile --replace /bin/pwd $(type -P pwd)
substituteInPlace gpxe/src/Makefile.housekeeping --replace /bin/echo $(type -P echo)
substituteInPlace utils/ppmtolss16 --replace /usr/bin/perl $(type -P perl)
substituteInPlace gpxe/src/Makefile --replace /usr/bin/perl $(type -P perl)
# fix tests
substituteInPlace tests/unittest/include/unittest/unittest.h \

View file

@ -0,0 +1,81 @@
http://git.ipxe.org/ipxe.git/commitdiff/719b498
diff -ru -x '*~' -x '*.orig' -x '*.rej' syslinux-4.02-orig/gpxe/src/arch/i386/Makefile.pcbios syslinux-4.02/gpxe/src/arch/i386/Makefile.pcbios
--- syslinux-4.02-orig/gpxe/src/arch/i386/Makefile.pcbios 2010-07-21 21:33:13.000000000 +0200
+++ syslinux-4.02/gpxe/src/arch/i386/Makefile.pcbios 2010-08-06 23:32:57.000000000 +0200
@@ -24,11 +24,11 @@
# Padding rules
#
-PAD_rom = $(PADIMG) --blksize=512 --byte=0xff $@
+PAD_rom = $(PERL) $(PADIMG) --blksize=512 --byte=0xff $@
PAD_hrom = $(PAD_rom)
PAD_xrom = $(PAD_rom)
-PAD_dsk = $(PADIMG) --blksize=512 $@
-PAD_hd = $(PADIMG) --blksize=32768 $@
+PAD_dsk = $(PERL) $(PADIMG) --blksize=512 $@
+PAD_hd = $(PERL) $(PADIMG) --blksize=32768 $@
# rule to make a non-emulation ISO boot image
NON_AUTO_MEDIA += iso
diff -ru -x '*~' -x '*.orig' -x '*.rej' syslinux-4.02-orig/gpxe/src/Makefile syslinux-4.02/gpxe/src/Makefile
--- syslinux-4.02-orig/gpxe/src/Makefile 2010-07-21 21:33:13.000000000 +0200
+++ syslinux-4.02/gpxe/src/Makefile 2010-08-06 23:31:15.000000000 +0200
@@ -31,12 +31,12 @@
OBJCOPY := $(CROSS_COMPILE)objcopy
NM := $(CROSS_COMPILE)nm
OBJDUMP := $(CROSS_COMPILE)objdump
-PARSEROM := $(PERL) ./util/parserom.pl
-MAKEROM := $(PERL) ./util/makerom.pl
-SYMCHECK := $(PERL) ./util/symcheck.pl
-SORTOBJDUMP := $(PERL) ./util/sortobjdump.pl
-PADIMG := $(PERL) ./util/padimg.pl
-LICENCE := $(PERL) ./util/licence.pl
+PARSEROM := ./util/parserom.pl
+MAKEROM := ./util/makerom.pl
+SYMCHECK := ./util/symcheck.pl
+SORTOBJDUMP := ./util/sortobjdump.pl
+PADIMG := ./util/padimg.pl
+LICENCE := ./util/licence.pl
NRV2B := ./util/nrv2b
ZBIN := ./util/zbin
ELF2EFI32 := ./util/elf2efi32
diff -ru -x '*~' -x '*.orig' -x '*.rej' syslinux-4.02-orig/gpxe/src/Makefile.housekeeping syslinux-4.02/gpxe/src/Makefile.housekeeping
--- syslinux-4.02-orig/gpxe/src/Makefile.housekeeping 2010-07-21 21:33:13.000000000 +0200
+++ syslinux-4.02/gpxe/src/Makefile.housekeeping 2010-08-06 23:31:49.000000000 +0200
@@ -456,7 +456,7 @@
'\n$(2) : $$($(4)_DEPS)\n' \
'\nTAGS : $$($(4)_DEPS)\n' \
>> $(2)
- @$(PARSEROM) $(1) >> $(2)
+ @$(PERL) $(PARSEROM) $(1) >> $(2)
endef
@@ -657,7 +657,7 @@
$(QM)$(ECHO) " [LD] $@"
$(Q)$(LD) $(LDFLAGS) -T $(LDSCRIPT) $(TGT_LD_FLAGS) $(BLIB) -o $@ \
-Map $(BIN)/$*.tmp.map
- $(Q)$(OBJDUMP) -ht $@ | $(SORTOBJDUMP) >> $(BIN)/$*.tmp.map
+ $(Q)$(OBJDUMP) -ht $@ | $(PERL) $(SORTOBJDUMP) >> $(BIN)/$*.tmp.map
# Keep intermediate object file (useful for debugging)
.PRECIOUS : $(BIN)/%.tmp
@@ -714,7 +714,7 @@
echo "files are missing a licence declaration:" ;\
echo $(call unlicensed_deps_list,$<);\
exit 1,\
- $(LICENCE) $(call licence_list,$<))
+ $(PERL) $(LICENCE) $(call licence_list,$<))
# Extract compression information from intermediate object file
#
@@ -941,7 +941,7 @@
CLEANUP += $(BIN)/symtab
symcheck : $(SYMTAB)
- $(SYMCHECK) $<
+ $(PERL) $(SYMCHECK) $<
endif # defined(BIN)