mirror of
https://github.com/opnsense/src.git
synced 2026-02-21 08:50:22 -05:00
binutils 2.15. The linker now creates a .rela.dyn section for dynamic relocations, while our script created a .rela section. Likewise, we copied the .rela section to the EFI image, but not the .rela.dyn section. The fix is to rename .rela to .rela.dyn in the linker script so that all relocations end up in the same section again. This we copy into the EFI image.
73 lines
2 KiB
Text
73 lines
2 KiB
Text
/* $FreeBSD$ */
|
|
OUTPUT_FORMAT("elf64-ia64-little", "elf64-ia64-little", "elf64-ia64-little")
|
|
OUTPUT_ARCH(ia64)
|
|
ENTRY(_start_plabel)
|
|
SECTIONS
|
|
{
|
|
/* Read-only sections, merged into text segment: */
|
|
. = 0;
|
|
ImageBase = .;
|
|
. = SIZEOF_HEADERS;
|
|
. = ALIGN(4096);
|
|
.text : {
|
|
*(.text .stub .text.* .gnu.linkonce.t.*)
|
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
|
*(.gnu.warning)
|
|
*(.plt)
|
|
} =0x00300000010070000002000001000400
|
|
. = ALIGN(4096);
|
|
.data : {
|
|
*(.rodata .rodata.* .gnu.linkonce.r.*)
|
|
*(.rodata1)
|
|
*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
|
|
*(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
|
|
*(.opd)
|
|
*(.IA_64.unwind_info* .gnu.linkonce.ia64unwi.*)
|
|
*(.IA_64.unwind* .gnu.linkonce.ia64unw.*)
|
|
__start_set_Xcommand_set = .;
|
|
*(set_Xcommand_set)
|
|
__stop_set_Xcommand_set = .;
|
|
*(.data .data.* .gnu.linkonce.d.*)
|
|
*(.data1)
|
|
*(.plabel)
|
|
*(.dynbss)
|
|
*(.bss .bss.* .gnu.linkonce.b.*)
|
|
*(COMMON)
|
|
}
|
|
. = ALIGN(4096);
|
|
__gp = .;
|
|
.sdata : {
|
|
*(.got.plt .got)
|
|
*(.IA_64.pltoff)
|
|
*(.sdata .sdata.* .gnu.linkonce.s.*)
|
|
*(dynsbss)
|
|
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
|
*(.scommon)
|
|
}
|
|
. = ALIGN(4096);
|
|
.dynamic : { *(.dynamic) }
|
|
. = ALIGN(4096);
|
|
.rela.dyn : {
|
|
*(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
|
|
*(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
|
|
*(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
|
|
*(.rela.got)
|
|
*(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*)
|
|
*(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*)
|
|
*(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*)
|
|
*(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*)
|
|
*(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
|
|
*(.rela.plt)
|
|
*(.rela.IA_64.pltoff)
|
|
*(.relaset_*)
|
|
*(.rela.dyn .rela.dyn.*)
|
|
}
|
|
. = ALIGN(4096);
|
|
.reloc : { *(.reloc) }
|
|
. = ALIGN(4096);
|
|
.hash : { *(.hash) }
|
|
. = ALIGN(4096);
|
|
.dynsym : { *(.dynsym) }
|
|
. = ALIGN(4096);
|
|
.dynstr : { *(.dynstr) }
|
|
}
|