diff options
Diffstat (limited to 'libre/syslinux/single-load-segment.patch')
-rw-r--r-- | libre/syslinux/single-load-segment.patch | 304 |
1 files changed, 0 insertions, 304 deletions
diff --git a/libre/syslinux/single-load-segment.patch b/libre/syslinux/single-load-segment.patch deleted file mode 100644 index db9b7d0a1..000000000 --- a/libre/syslinux/single-load-segment.patch +++ /dev/null @@ -1,304 +0,0 @@ -Author: Lukas Schwaighofer <lukas@schwaighofer.name> -Description: 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..5b4589d 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..cad28a8 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 = .; - |