Bug#906414: syslinux: FTBFS in buster/sid (mbr.bin: too big (452 > 440))

2018-08-18 Thread Lukas Schwaighofer
On Sat, 18 Aug 2018 12:42:45 +0200
Lukas Schwaighofer  wrote:

> Unfortunately my tests shows that with this new build the efi binary
> no longer works (at least when testing tianocore).  I have not yet
> determined if this is also related to binutils and I suspect this is
> actually a different issue. I'll keep you posted.

That one was also a problem that was caused by a different binutils
version, but I managed to solve it as well :) . Will upload a new
version shortly.

[still wondering why the BTS ate my last message…]



Bug#906414: syslinux: FTBFS in buster/sid (mbr.bin: too big (452 > 440))

2018-08-18 Thread Lukas Schwaighofer
Hi,

On Fri, 17 Aug 2018 21:43:50 +0200
Lukas Schwaighofer  wrote:

> Matthias: As the binutils maintainer, can you provide any help? I
> don't really know how to proceed… and since this was broken by a
> Debian revision, it's probably not an upstream problem? Thanks!

I've made some progress: If I discard the .note.gnu.property section
(which was not added since before binutils 2.31.1-2) I'm able to build
the package again. I've attached a patch to the linker scripts for
reference.

Unfortunately my tests shows that with this new build the efi binary no
longer works (at least when testing tianocore).  I have not yet
determined if this is also related to binutils and I suspect this is
actually a different issue. I'll keep you posted.
Author: Lukas Schwaighofer 
Description: Strip the .note.gnu.property section for the mbr. This section is
 added since binutils Debian version 2.31.1-2 and causes mbr.bin to grow in
 size beyond what can fit into the master boot record.
---
 mbr/i386/mbr.ld   | 1 +
 mbr/x86_64/mbr.ld | 1 +
 2 files changed, 2 insertions(+)

diff --git a/mbr/i386/mbr.ld b/mbr/i386/mbr.ld
index d14ba80..5368346 100644
--- a/mbr/i386/mbr.ld
+++ b/mbr/i386/mbr.ld
@@ -70,4 +70,5 @@ SECTIONS
   .debug_typenames 0 : { *(.debug_typenames) }
   .debug_varnames  0 : { *(.debug_varnames) }
   /DISCARD/ : { *(.note.GNU-stack) }
+  /DISCARD/ : { *(.note.gnu.property) }
 }
diff --git a/mbr/x86_64/mbr.ld b/mbr/x86_64/mbr.ld
index ae27d49..b8c0d89 100644
--- a/mbr/x86_64/mbr.ld
+++ b/mbr/x86_64/mbr.ld
@@ -69,4 +69,5 @@ SECTIONS
   .debug_typenames 0 : { *(.debug_typenames) }
   .debug_varnames  0 : { *(.debug_varnames) }
   /DISCARD/ : { *(.note.GNU-stack) }
+  /DISCARD/ : { *(.note.gnu.property) }
 }


Bug#906414: syslinux: FTBFS in buster/sid (mbr.bin: too big (452 > 440))

2018-08-17 Thread Lukas Schwaighofer
Hi,

the problem started with the upgrade from binutils 2.31.1-1 to
2.31.1-2. If I download the following 4 packages and install them, I
can build syslinux just fine:
https://snapshot.debian.org/archive/debian/20180726T092202Z/pool/main/b/binutils/binutils-x86-64-linux-gnu_2.31.1-1_amd64.deb
https://snapshot.debian.org/archive/debian/20180726T092202Z/pool/main/b/binutils/binutils-common_2.31.1-1_amd64.deb
https://snapshot.debian.org/archive/debian/20180726T092202Z/pool/main/b/binutils/binutils_2.31.1-1_amd64.deb
https://snapshot.debian.org/archive/debian/20180726T092202Z/pool/main/b/binutils/libbinutils_2.31.1-1_amd64.deb


Matthias: As the binutils maintainer, can you provide any help? I don't
really know how to proceed… and since this was broken by a Debian
revision, it's probably not an upstream problem? Thanks!

Regards
Lukas



Bug#906414: syslinux: FTBFS in buster/sid (mbr.bin: too big (452 > 440))

2018-08-17 Thread Lukas Schwaighofer
Control: tags -1 + confirmed

Hi Santiago,

I can confirm the build failures. The same error also happens when
building syslinux on buster from upstream's git repository.

I'll try to find out which dependency change caused the size of mbr.bin
to grow and will then probably need to work with upstream to get this
fixed.

Thanks for your report
Lukas



Bug#906414: syslinux: FTBFS in buster/sid (mbr.bin: too big (452 > 440))

2018-08-17 Thread Santiago Vila
Package: src:syslinux
Version: 3:6.03+dfsg1-2
Severity: serious
Tags: ftbfs

Dear maintainer:

I tried to build this package in buster but it failed:


[...]
 debian/rules build-indep
dh build-indep
   dh_update_autotools_config -i
   dh_autoreconf -i
   dh_auto_configure -i
   debian/rules override_dh_auto_build-indep
make[1]: Entering directory '/<>/syslinux-6.03+dfsg1'
/usr/bin/make DATE="20171017" HEXDATE="0x59e678f1"
make[2]: Entering directory '/<>/syslinux-6.03+dfsg1'
perl /<>/syslinux-6.03+dfsg1/version.pl 
/<>/syslinux-6.03+dfsg1/version 
/<>/syslinux-6.03+dfsg1/version.mk '< := @'
/usr/bin/make -r -C /<>/syslinux-6.03+dfsg1 -f 
/<>/syslinux-6.03+dfsg1/Makefile 
SRC="/<>/syslinux-6.03+dfsg1" \
OBJ=/<>/syslinux-6.03+dfsg1 
objdir=/<>/syslinux-6.03+dfsg1 all
make[3]: Entering directory '/<>/syslinux-6.03+dfsg1'
/usr/bin/make -r -C /<>/syslinux-6.03+dfsg1/bios -f 
/<>/syslinux-6.03+dfsg1/Makefile 
SRC="/<>/syslinux-6.03+dfsg1" \

[... snipped ...]

gcc -Wp,-MT,memcpy.o,-MD,./.memcpy.o.d -g -O2 
-fdebug-prefix-map=/<>/syslinux-6.03+dfsg1=. -fstack-protector-strong 
-Wformat -Werror=format-security -m32 -march=i386 -mpreferred-stack-boundary=2 
-mincoming-stack-boundary=2 -ffreestanding -fno-stack-protector -fwrapv 
-freg-struct-return -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 
-msoft-float -fno-exceptions -fno-asynchronous-unwind-tables 
-fno-strict-aliasing -falign-functions=0 -falign-jumps=0 -falign-labels=0 
-falign-loops=0 -fvisibility=hidden -g -W -Wall -Wstrict-prototypes  
-Wno-sign-compare  -I/<>/syslinux-6.03+dfsg1/com32/include 
-I/<>/syslinux-6.03+dfsg1/bios -D__MEMDISK__ -DDATE='"20171017"' 
-mregparm=3 -DREGPARM=3 -c -o memcpy.o 
/<>/syslinux-6.03+dfsg1/memdisk/memcpy.c
gcc -Wp,-MT,memset.o,-MD,./.memset.o.d -g -O2 
-fdebug-prefix-map=/<>/syslinux-6.03+dfsg1=. -fstack-protector-strong 
-Wformat -Werror=format-security -m32 -march=i386 -mpreferred-stack-boundary=2 
-mincoming-stack-boundary=2 -ffreestanding -fno-stack-protector -fwrapv 
-freg-struct-return -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 
-msoft-float -fno-exceptions -fno-asynchronous-unwind-tables 
-fno-strict-aliasing -falign-functions=0 -falign-jumps=0 -falign-labels=0 
-falign-loops=0 -fvisibility=hidden -g -W -Wall -Wstrict-prototypes  
-Wno-sign-compare  -I/<>/syslinux-6.03+dfsg1/com32/include 
-I/<>/syslinux-6.03+dfsg1/bios -D__MEMDISK__ -DDATE='"20171017"' 
-mregparm=3 -DREGPARM=3 -c -o memset.o 
/<>/syslinux-6.03+dfsg1/memdisk/memset.c
gcc -Wp,-MT,memmove.o,-MD,./.memmove.o.d -g -O2 
-fdebug-prefix-map=/<>/syslinux-6.03+dfsg1=. -fstack-protector-strong 
-Wformat -Werror=format-security -m32 -march=i386 -mpreferred-stack-boundary=2 
-mincoming-stack-boundary=2 -ffreestanding -fno-stack-protector -fwrapv 
-freg-struct-return -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 
-msoft-float -fno-exceptions -fno-asynchronous-unwind-tables 
-fno-strict-aliasing -falign-functions=0 -falign-jumps=0 -falign-labels=0 
-falign-loops=0 -fvisibility=hidden -g -W -Wall -Wstrict-prototypes  
-Wno-sign-compare  -I/<>/syslinux-6.03+dfsg1/com32/include 
-I/<>/syslinux-6.03+dfsg1/bios -D__MEMDISK__ -DDATE='"20171017"' 
-mregparm=3 -DREGPARM=3 -c -o memmove.o 
/<>/syslinux-6.03+dfsg1/memdisk/memmove.c
gcc -Wp,-MT,unzip.o,-MD,./.unzip.o.d -g -O2 
-fdebug-prefix-map=/<>/syslinux-6.03+dfsg1=. -fstack-protector-strong 
-Wformat -Werror=format-security -m32 -march=i386 -mpreferred-stack-boundary=2 
-mincoming-stack-boundary=2 -ffreestanding -fno-stack-protector -fwrapv 
-freg-struct-return -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 
-msoft-float -fno-exceptions -fno-asynchronous-unwind-tables 
-fno-strict-aliasing -falign-functions=0 -falign-jumps=0 -falign-labels=0 
-falign-loops=0 -fvisibility=hidden -g -W -Wall -Wstrict-prototypes  
-Wno-sign-compare  -I/<>/syslinux-6.03+dfsg1/com32/include 
-I/<>/syslinux-6.03+dfsg1/bios -D__MEMDISK__ -DDATE='"20171017"' 
-mregparm=3 -DREGPARM=3 -c -o unzip.o 
/<>/syslinux-6.03+dfsg1/memdisk/unzip.c
gcc -Wp,-MT,dskprobe.o,-MD,./.dskprobe.o.d -g -O2 
-fdebug-prefix-map=/<>/syslinux-6.03+dfsg1=. -fstack-protector-strong 
-Wformat -Werror=format-security -m32 -march=i386 -mpreferred-stack-boundary=2 
-mincoming-stack-boundary=2 -ffreestanding -fno-stack-protector -fwrapv 
-freg-struct-return -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 
-msoft-float -fno-exceptions -fno-asynchronous-unwind-tables 
-fno-strict-aliasing -falign-functions=0 -falign-jumps=0 -falign-labels=0 
-falign-loops=0 -fvisibility=hidden -g -W -Wall -Wstrict-prototypes  
-Wno-sign-compare  -I/<>/syslinux-6.03+dfsg1/com32/include 
-I/<>/syslinux-6.03+dfsg1/bios -D__MEMDISK__ -DDATE='"20171017"' 
-mregparm=3 -DREGPARM=3 -c -o dskprobe.o 
/<>/syslinux-6.03+dfsg1/memdisk/dskprobe.c
gcc -Wp,-MT,eltorito.o,-MD,./.eltorito.o.d -g -O2 
-fdebug-prefix-map=/<>/syslinux-6.03+dfsg1=. -fstack-protector-strong 
-Wformat -Werror=format-security -m32