changed debian/source/format to native
This commit is contained in:
parent
a03d16bae2
commit
084124db05
|
@ -1,76 +0,0 @@
|
|||
From: Lukas Schwaighofer <lukas@schwaighofer.name>
|
||||
Date: Sun, 25 Nov 2018 16:41:41 +0100
|
||||
Subject: Include changes since 6.03 in the changelog
|
||||
|
||||
Origin: http://www.syslinux.org/wiki/index.php?title=Syslinux_6_Changelog
|
||||
Forwarded: not-needed
|
||||
---
|
||||
NEWS | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 55 insertions(+)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index c0846d8..ce80940 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -2,6 +2,61 @@ Starting with 1.47, changes marked with SYSLINUX, PXELINUX, ISOLINUX
|
||||
or EXTLINUX apply to that specific program only; other changes apply
|
||||
to all derivatives.
|
||||
|
||||
+Changes in 6.04~git20190221.05ac953c (unreleased):
|
||||
+ * zlib: Update to version 1.2.11.
|
||||
+ * libpng: Update to version 1.6.36.
|
||||
+ * core/Makefile: Sort to be reproducible.
|
||||
+ * efi/udp: Improve performance (Julien Viard de Galbert).
|
||||
+ * keeppxe: Partial fix; the LINUX directive can pass
|
||||
+ the keeppxe parameter (Adam Goldman).
|
||||
+ * chain.c32: Update "reactos=" option.
|
||||
+ * keytab-lilo: Update to support kbd 2.0.3 format (Olivier Brunel).
|
||||
+ * menu: Apply VSHIFT to scrollbar (Bruno Levert).
|
||||
+ * ext4: Support 64bit feature (Paulo Alcantara).
|
||||
+ * isohybrid: Use binary mode for compatibility with DOS/Windows
|
||||
+ (Colin Finck).
|
||||
+ * isohybrid, MBR: Fix compatibility with CHS mode
|
||||
+ in certain BIOS (Martin Str|mberg, Thomas Schmitt).
|
||||
+ * ISOLINUX: Fix the calculation of the boot info table
|
||||
+ default checksum (Thomas Schmitt); it was broken since 4.00.
|
||||
+ * diag/geodsp improvements (Gene Cumm).
|
||||
+ * HDT: Fixes, updates and improvements (Erwan Velu).
|
||||
+ * load_linux: relocate protected-mode code as intended
|
||||
+ (Scot Doyle).
|
||||
+ * SYSAPPEND: Fix space stripping (Dany St-Amant).
|
||||
+ * SERIAL: Fix, allow octal and hex values on "port" and
|
||||
+ on "flow control" parameters (Andrew J. Schorr, Dany St-Amant).
|
||||
+ * efi: Fix hang when no keyboard is present (Oliver Wagner).
|
||||
+ * efi: Add support for firmware's architecture-specific
|
||||
+ optional configuration file names.
|
||||
+ * core: Re-add gPXE/iPXE support for HTTP on pxelinux.0
|
||||
+ (Gene Cumm).
|
||||
+ * core/http: Append port number to Host field if needed
|
||||
+ (Gene Cumm).
|
||||
+ * chain.c32: Add options to ignore GPT crc checks
|
||||
+ (Michal Soltys).
|
||||
+ * mboot.c32: Add ELF64 support for Multiboot1
|
||||
+ (Alex Barracuda72, Gene Cumm).
|
||||
+ * XFS: Support XFS on-disk V5, node directories version 3,
|
||||
+ xfsprogs 4.x. (Paulo Alcantara).
|
||||
+ * BTRFS: Fix logical_to_physical block address mapping
|
||||
+ (Paulo Alcantara).
|
||||
+ * lua: Fixes and improvements;
|
||||
+ correct and improve its documentation (Ferenc Wágner).
|
||||
+ * Old unmaintained gPXE code is no longer included.
|
||||
+ * Code improvements.
|
||||
+ * efi/udp: Improve performance (Julien Viard de Galbert).
|
||||
+ * isohybrid: Use binary mode for compatibility with DOS/Windows
|
||||
+ (Colin Finck).
|
||||
+ * isohybrid, MBR: Fix compatibility with CHS mode
|
||||
+ in certain BIOS (Martin Str|mberg, Thomas Schmitt).
|
||||
+ * keeppxe: Partial fix; the LINUX directive can pass
|
||||
+ the keeppxe parameter (Adam Goldman).
|
||||
+ * chain.c32: Update "reactos=" option.
|
||||
+ * keytab-lilo: Update to support kbd 2.0.3 format (Olivier Brunel).
|
||||
+ * menu: Apply VSHIFT to scrollbar (Bruno Levert).
|
||||
+ * ext4: Support 64bit feature (Paulo Alcantara).
|
||||
+
|
||||
Changes in 6.03:
|
||||
* chain: Fix chainloading on 6.02 (Raphael S. Carvalho).
|
||||
* core: Do not leak the __lowmem and __bss16 macros to modules;
|
|
@ -1,53 +0,0 @@
|
|||
From: Colin Watson <cjwatson@ubuntu.com>
|
||||
Date: Wed, 2 Nov 2011 07:57:23 +0100
|
||||
Subject: Allow boot entry to start with label instead of menu_label.
|
||||
|
||||
menu_ptr->menu_label is human-readable (perhaps even translatable!) text if
|
||||
the MENU LABEL command is used, which isn't very convenient at the start of
|
||||
a boot entry. Allow the entry to start with menu_ptr->label (an
|
||||
identifier) as an alternative.
|
||||
---
|
||||
com32/gfxboot/gfxboot.c | 16 ++++++++++------
|
||||
1 file changed, 10 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/com32/gfxboot/gfxboot.c b/com32/gfxboot/gfxboot.c
|
||||
index f67132c..4c76a35 100644
|
||||
--- a/com32/gfxboot/gfxboot.c
|
||||
+++ b/com32/gfxboot/gfxboot.c
|
||||
@@ -818,7 +818,7 @@ void boot(int index)
|
||||
{
|
||||
char *arg, *alt_kernel;
|
||||
menu_t *menu_ptr;
|
||||
- int i, label_len;
|
||||
+ int i, label_len, menu_label_len;
|
||||
unsigned ipapp;
|
||||
const struct syslinux_ipappend_strings *ipappend;
|
||||
char *gfxboot_cwd = (char *) gfx_config.gfxboot_cwd;
|
||||
@@ -836,18 +836,22 @@ void boot(int index)
|
||||
if(!menu_ptr || !menu_ptr->menu_label) return;
|
||||
|
||||
arg = skipspace(cmdline);
|
||||
- label_len = strlen(menu_ptr->menu_label);
|
||||
+ label_len = strlen(menu_ptr->label);
|
||||
+ menu_label_len = strlen(menu_ptr->menu_label);
|
||||
|
||||
// if it does not start with label string, assume first word is kernel name
|
||||
- if(strncmp(arg, menu_ptr->menu_label, label_len)) {
|
||||
+ if(!strncmp(arg, menu_ptr->label, label_len)) {
|
||||
+ arg += label_len;
|
||||
+ }
|
||||
+ else if(!strncmp(arg, menu_ptr->menu_label, menu_label_len)) {
|
||||
+ arg += menu_label_len;
|
||||
+ }
|
||||
+ else {
|
||||
alt_kernel = arg;
|
||||
arg = skip_nonspaces(arg);
|
||||
if(*arg) *arg++ = 0;
|
||||
if(*alt_kernel) menu_ptr->alt_kernel = alt_kernel;
|
||||
}
|
||||
- else {
|
||||
- arg += label_len;
|
||||
- }
|
||||
|
||||
arg = skipspace(arg);
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
From: Lukas Schwaighofer <lukas@schwaighofer.name>
|
||||
Date: Tue, 3 Oct 2017 18:29:13 +0200
|
||||
Subject: Link against gnu-efi from Debian
|
||||
|
||||
Adjust EFIINC, LIBDIR and LIBEFI variables in mk/efi.mk to point to the
|
||||
files installed by Debian's gnu-efi package.
|
||||
- The LIBDIR path depends on the build hosts' architecture, so the
|
||||
DEB_HOST_ARCH variable needs to be exported to determine the correct
|
||||
paths.
|
||||
|
||||
Forwarded: not-needed
|
||||
---
|
||||
mk/efi.mk | 13 ++++++++++---
|
||||
1 file changed, 10 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/mk/efi.mk b/mk/efi.mk
|
||||
index f097ad2..dc2b708 100644
|
||||
--- a/mk/efi.mk
|
||||
+++ b/mk/efi.mk
|
||||
@@ -8,8 +8,15 @@ core = $(topdir)/core
|
||||
# gnuefi sets up architecture specifics in ia32 or x86_64 sub directories
|
||||
# set up the LIBDIR and EFIINC for building for the appropriate architecture
|
||||
GCCOPT := $(call gcc_ok,-fno-stack-protector,)
|
||||
-EFIINC = $(objdir)/include/efi
|
||||
-LIBDIR = $(objdir)/lib
|
||||
+EFIINC = /usr/include/efi
|
||||
+LIBDIR = /usr/lib
|
||||
+ifeq ($(DEB_HOST_ARCH)/$(ARCH),amd64/i386)
|
||||
+ LIBDIR = /usr/lib32
|
||||
+endif
|
||||
+ifeq ($(DEB_HOST_ARCH)/$(ARCH),i386/x86_64)
|
||||
+ LIBDIR = /usr/lib64
|
||||
+endif
|
||||
+
|
||||
|
||||
ifeq ($(ARCH),i386)
|
||||
ARCHOPT = -m32 -march=i386
|
||||
@@ -44,7 +51,7 @@ SFLAGS = $(GCCOPT) $(GCCWARN) $(ARCHOPT) \
|
||||
-nostdinc -iwithprefix include \
|
||||
-I$(com32)/libutil/include -I$(com32)/include -I$(com32)/include/sys $(GPLINCLUDE)
|
||||
|
||||
-LIBEFI = $(objdir)/lib/libefi.a
|
||||
+LIBEFI = $(LIBDIR)/libefi.a
|
||||
|
||||
$(LIBEFI):
|
||||
@echo Building gnu-efi for $(EFI_SUBARCH)
|
|
@ -1,41 +0,0 @@
|
|||
From: Lukas Schwaighofer <lukas@schwaighofer.name>
|
||||
Date: Mon, 6 May 2019 00:43:10 +0200
|
||||
Subject: Strip memtest and memcpy from libefi
|
||||
|
||||
Repack libefi.a to not contain the memset and memcpy symbols to make sure the
|
||||
implementation from syslinux is used and no multiple symbol definitions are
|
||||
present.
|
||||
---
|
||||
efi/Makefile | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/efi/Makefile b/efi/Makefile
|
||||
index f4501e7..adae73f 100644
|
||||
--- a/efi/Makefile
|
||||
+++ b/efi/Makefile
|
||||
@@ -43,8 +43,10 @@ CORE_OBJS += $(addprefix $(OBJ)/../core/, \
|
||||
fs/pxe/pxe.o fs/pxe/tftp.o fs/pxe/urlparse.o fs/pxe/dhcp_option.o \
|
||||
fs/pxe/ftp.o fs/pxe/ftp_readdir.o fs/pxe/http.o fs/pxe/http_readdir.o)
|
||||
|
||||
+LIBEFI_STRIPPED = $(objdir)/libefi_stripped.a
|
||||
+
|
||||
LIB_OBJS = $(addprefix $(objdir)/com32/lib/,$(CORELIBOBJS)) \
|
||||
- $(LIBEFI)
|
||||
+ $(LIBEFI_STRIPPED)
|
||||
|
||||
CSRC = $(sort $(wildcard $(SRC)/*.c))
|
||||
OBJS = $(subst $(SRC)/,,$(filter-out %wrapper.o, $(patsubst %.c,%.o,$(CSRC))))
|
||||
@@ -73,6 +75,13 @@ BTARGET = syslinux.efi
|
||||
syslinux.so: $(OBJS) $(CORE_OBJS) $(LIB_OBJS)
|
||||
$(LD) $(LDFLAGS) --strip-debug -o $@ $^ -lgnuefi -lefi
|
||||
|
||||
+$(LIBEFI_STRIPPED): $(LIBEFI)
|
||||
+ cp $(LIBEFI) $(LIBEFI_STRIPPED)
|
||||
+ ar x $(LIBEFI_STRIPPED) init.o
|
||||
+ strip -N memset -N memcpy init.o
|
||||
+ ar r $(LIBEFI_STRIPPED) init.o
|
||||
+ rm init.o
|
||||
+
|
||||
# We need to rename the .hash section because the EFI firmware
|
||||
# linker really doesn't like it.
|
||||
# $(OBJCOPY) --rename-section .gnu.hash=.sdata,load,data,alloc $^ $@
|
|
@ -1,43 +0,0 @@
|
|||
From: Lukas Schwaighofer <lukas@schwaighofer.name>
|
||||
Date: Sat, 18 Aug 2018 12:48:21 +0200
|
||||
Subject: 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.
|
||||
|
||||
Forwarded: https://www.syslinux.org/archives/2018-August/026168.html
|
||||
---
|
||||
mbr/i386/mbr.ld | 6 +++++-
|
||||
mbr/x86_64/mbr.ld | 6 +++++-
|
||||
2 files changed, 10 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/mbr/i386/mbr.ld b/mbr/i386/mbr.ld
|
||||
index d14ba80..6d48990 100644
|
||||
--- a/mbr/i386/mbr.ld
|
||||
+++ b/mbr/i386/mbr.ld
|
||||
@@ -69,5 +69,9 @@ SECTIONS
|
||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||
.debug_typenames 0 : { *(.debug_typenames) }
|
||||
.debug_varnames 0 : { *(.debug_varnames) }
|
||||
- /DISCARD/ : { *(.note.GNU-stack) }
|
||||
+ /DISCARD/ :
|
||||
+ {
|
||||
+ *(.note.GNU-stack)
|
||||
+ *(.note.gnu.property)
|
||||
+ }
|
||||
}
|
||||
diff --git a/mbr/x86_64/mbr.ld b/mbr/x86_64/mbr.ld
|
||||
index ae27d49..5b46db6 100644
|
||||
--- a/mbr/x86_64/mbr.ld
|
||||
+++ b/mbr/x86_64/mbr.ld
|
||||
@@ -68,5 +68,9 @@ SECTIONS
|
||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||
.debug_typenames 0 : { *(.debug_typenames) }
|
||||
.debug_varnames 0 : { *(.debug_varnames) }
|
||||
- /DISCARD/ : { *(.note.GNU-stack) }
|
||||
+ /DISCARD/ :
|
||||
+ {
|
||||
+ *(.note.GNU-stack)
|
||||
+ *(.note.gnu.property)
|
||||
+ }
|
||||
}
|
|
@ -1,306 +0,0 @@
|
|||
From: Lukas Schwaighofer <lukas@schwaighofer.name>
|
||||
Date: Sat, 18 Aug 2018 16:56:35 +0200
|
||||
Subject: Force the linker to put all sections into a single PT_LOAD segment
|
||||
|
||||
This is required when using binutils >= 2.31 which writes two PT_LOAD segments
|
||||
by default. This is not supported by the wrapper.c script used to convert the
|
||||
shared object into an elf binary.
|
||||
|
||||
Forwarded: https://www.syslinux.org/archives/2018-August/026167.html
|
||||
---
|
||||
efi/i386/syslinux.ld | 37 +++++++++++++++++++++----------------
|
||||
efi/x86_64/syslinux.ld | 37 +++++++++++++++++++++----------------
|
||||
2 files changed, 42 insertions(+), 32 deletions(-)
|
||||
|
||||
diff --git a/efi/i386/syslinux.ld b/efi/i386/syslinux.ld
|
||||
index bab3fc7..19c1647 100644
|
||||
--- a/efi/i386/syslinux.ld
|
||||
+++ b/efi/i386/syslinux.ld
|
||||
@@ -19,6 +19,11 @@ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
|
||||
OUTPUT_ARCH(i386)
|
||||
ENTRY(_start)
|
||||
|
||||
+PHDRS
|
||||
+{
|
||||
+ all PT_LOAD ;
|
||||
+}
|
||||
+
|
||||
SECTIONS
|
||||
{
|
||||
. = 0;
|
||||
@@ -31,7 +36,7 @@ SECTIONS
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
__text_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(16);
|
||||
|
||||
@@ -40,7 +45,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata.*)
|
||||
__rodata_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -49,14 +54,14 @@ SECTIONS
|
||||
KEEP (*(SORT(.ctors.*)))
|
||||
KEEP (*(.ctors))
|
||||
__ctors_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.dtors : {
|
||||
__dtors_start = .;
|
||||
KEEP (*(SORT(.dtors.*)))
|
||||
KEEP (*(.dtors))
|
||||
__dtors_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4096);
|
||||
.rel : {
|
||||
@@ -64,7 +69,7 @@ SECTIONS
|
||||
*(.rel.data)
|
||||
*(.rel.data.*)
|
||||
*(.rel.ctors)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -72,14 +77,14 @@ SECTIONS
|
||||
__gnu_hash_start = .;
|
||||
*(.gnu.hash)
|
||||
__gnu_hash_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
|
||||
.dynsym : {
|
||||
__dynsym_start = .;
|
||||
*(.dynsym)
|
||||
__dynsym_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -87,7 +92,7 @@ SECTIONS
|
||||
__dynstr_start = .;
|
||||
*(.dynstr)
|
||||
__dynstr_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -104,7 +109,7 @@ SECTIONS
|
||||
KEEP (*(.got.plt))
|
||||
KEEP (*(.got))
|
||||
__got_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -112,7 +117,7 @@ SECTIONS
|
||||
__dynamic_start = .;
|
||||
*(.dynamic)
|
||||
__dynamic_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(16);
|
||||
|
||||
@@ -122,19 +127,19 @@ SECTIONS
|
||||
*(.data.*)
|
||||
*(.lowmem)
|
||||
__data_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.reloc : {
|
||||
*(.reloc)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.symtab : {
|
||||
*(.symtab)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.strtab : {
|
||||
*(.strtab)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.bss (NOLOAD) : {
|
||||
/* the EFI loader doesn't seem to like a .bss section,
|
||||
@@ -148,7 +153,7 @@ SECTIONS
|
||||
__bss_end = .;
|
||||
*(.sbss)
|
||||
*(.scommon)
|
||||
- }
|
||||
+ } :all
|
||||
__bss_len = ABSOLUTE(__bss_end) - ABSOLUTE(__bss_start);
|
||||
__bss_dwords = (__bss_len + 3) >> 2;
|
||||
|
||||
@@ -161,7 +166,7 @@ SECTIONS
|
||||
*(.hugebss)
|
||||
*(.hugebss.*)
|
||||
__hugebss_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
_end = .;
|
||||
|
||||
diff --git a/efi/x86_64/syslinux.ld b/efi/x86_64/syslinux.ld
|
||||
index 450641c..a2c124f 100644
|
||||
--- a/efi/x86_64/syslinux.ld
|
||||
+++ b/efi/x86_64/syslinux.ld
|
||||
@@ -19,6 +19,11 @@ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
|
||||
OUTPUT_ARCH(i386:x86-64)
|
||||
ENTRY(_start)
|
||||
|
||||
+PHDRS
|
||||
+{
|
||||
+ all PT_LOAD ;
|
||||
+}
|
||||
+
|
||||
SECTIONS
|
||||
{
|
||||
. = 0;
|
||||
@@ -31,7 +36,7 @@ SECTIONS
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
__text_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(16);
|
||||
|
||||
@@ -40,7 +45,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata.*)
|
||||
__rodata_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -49,14 +54,14 @@ SECTIONS
|
||||
KEEP (*(SORT(.ctors.*)))
|
||||
KEEP (*(.ctors))
|
||||
__ctors_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.dtors : {
|
||||
__dtors_start = .;
|
||||
KEEP (*(SORT(.dtors.*)))
|
||||
KEEP (*(.dtors))
|
||||
__dtors_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4096);
|
||||
.rel : {
|
||||
@@ -64,7 +69,7 @@ SECTIONS
|
||||
*(.rel.data)
|
||||
*(.rel.data.*)
|
||||
*(.rel.ctors)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -72,14 +77,14 @@ SECTIONS
|
||||
__gnu_hash_start = .;
|
||||
*(.gnu.hash)
|
||||
__gnu_hash_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
|
||||
.dynsym : {
|
||||
__dynsym_start = .;
|
||||
*(.dynsym)
|
||||
__dynsym_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -87,7 +92,7 @@ SECTIONS
|
||||
__dynstr_start = .;
|
||||
*(.dynstr)
|
||||
__dynstr_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -104,7 +109,7 @@ SECTIONS
|
||||
KEEP (*(.got.plt))
|
||||
KEEP (*(.got))
|
||||
__got_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(4);
|
||||
|
||||
@@ -112,7 +117,7 @@ SECTIONS
|
||||
__dynamic_start = .;
|
||||
*(.dynamic)
|
||||
__dynamic_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
. = ALIGN(16);
|
||||
|
||||
@@ -122,19 +127,19 @@ SECTIONS
|
||||
*(.data.*)
|
||||
*(.lowmem)
|
||||
__data_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.reloc : {
|
||||
*(.reloc)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.symtab : {
|
||||
*(.symtab)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.strtab : {
|
||||
*(.strtab)
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
.bss (NOLOAD) : {
|
||||
/* the EFI loader doesn't seem to like a .bss section,
|
||||
@@ -148,7 +153,7 @@ SECTIONS
|
||||
__bss_end = .;
|
||||
*(.sbss)
|
||||
*(.scommon)
|
||||
- }
|
||||
+ } :all
|
||||
__bss_len = ABSOLUTE(__bss_end) - ABSOLUTE(__bss_start);
|
||||
__bss_dwords = (__bss_len + 3) >> 2;
|
||||
|
||||
@@ -161,7 +166,7 @@ SECTIONS
|
||||
*(.hugebss)
|
||||
*(.hugebss.*)
|
||||
__hugebss_end = .;
|
||||
- }
|
||||
+ } :all
|
||||
|
||||
_end = .;
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
From: Lukas Schwaighofer <lukas@schwaighofer.name>
|
||||
Date: Tue, 26 Feb 2019 23:13:58 +0100
|
||||
Subject: Prevent optimizing the pow() function
|
||||
|
||||
With the current GCC 8.2.0 from Debian, a section of code calling pow() in
|
||||
zzjson_parse.c is turned into a sequence calling exp(). Since no exp()
|
||||
implementation is available in syslinux those optimizations need to be
|
||||
disabled.
|
||||
---
|
||||
com32/gpllib/zzjson/zzjson_parse.c | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/com32/gpllib/zzjson/zzjson_parse.c b/com32/gpllib/zzjson/zzjson_parse.c
|
||||
index ecb6f61..e66a9d8 100644
|
||||
--- a/com32/gpllib/zzjson/zzjson_parse.c
|
||||
+++ b/com32/gpllib/zzjson/zzjson_parse.c
|
||||
@@ -138,6 +138,10 @@ static ZZJSON *parse_string2(ZZJSON_CONFIG *config) {
|
||||
return zzjson;
|
||||
}
|
||||
|
||||
+static double __attribute__((optimize("O0"))) pow_noopt(double x, double y) {
|
||||
+ return pow(x, y);
|
||||
+}
|
||||
+
|
||||
static ZZJSON *parse_number(ZZJSON_CONFIG *config) {
|
||||
ZZJSON *zzjson;
|
||||
unsigned long long ival = 0, expo = 0;
|
||||
@@ -213,7 +217,7 @@ skipexpo:
|
||||
if (dbl) {
|
||||
dval = sign * (long long) ival;
|
||||
dval += sign * frac;
|
||||
- dval *= pow(10.0, (double) signexpo * expo);
|
||||
+ dval *= pow_noopt(10.0, (double) signexpo * expo);
|
||||
}
|
||||
|
||||
zzjson = config->calloc(1, sizeof(ZZJSON));
|
|
@ -1,7 +0,0 @@
|
|||
0000-unreleased-changelog.patch
|
||||
0002-gfxboot-menu-label.patch
|
||||
0004-gnu-efi-from-debian.patch
|
||||
0005-gnu-efi-version-compatibility.patch
|
||||
0016-strip-gnu-property.patch
|
||||
0017-single-load-segment.patch
|
||||
0018-prevent-pow-optimization.patch
|
|
@ -1 +1 @@
|
|||
3.0 (quilt)
|
||||
3.0 (native)
|
||||
|
|
Loading…
Reference in New Issue