blob: 5c0d8f9cb55b6586a0061f7fb1c40cf7616b5bec [file] [log] [blame]
OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
OUTPUT_ARCH(i386:x86-64)
ENTRY(efi_main)
SECTIONS
{
. = 0x2000;
. = ALIGN(4096);
.text :
{
*(.text)
*(.text.*)
. = ALIGN(16);
}
. = ALIGN(4096);
.data :
{
*(.rodata*)
*(.got.plt)
*(.got)
*(.data*)
*(.sdata)
/* TODO: figure out how to move .bss in such a way that the PE32+ loader
* doesn't complain.
*/
*(.sbss)
*(.scommon)
*(.dynbss)
*(.bss)
*(COMMON)
*(.rel.local)
}
. = ALIGN(4096);
/* A .reloc section is required to flag the final PE32+ file as relocatable.
* Here we hardcode one block with one entry to keep the PE32+ loader happy.
*/
_a = .;
. = ALIGN(4096);
.reloc :
{
LONG(. - _a);
LONG(10);
SHORT(0);
}
}