/*      $NetBSD: ldscript,v 1.2 2018/12/24 18:21:50 christos Exp $      */
OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
OUTPUT_ARCH(i386)
ENTRY(_start)

PHDRS
{
 text PT_LOAD;
 headers PT_PHDR FILEHDR PHDRS;
}

SECTIONS
{
 . = 0;
 ImageBase = .;
 .hash : { *(.hash) }  /* this MUST come first! */
 . = ALIGN(4096);
 .text :
 {
  *(.text)
  *(.text.*)
  *(.gnu.linkonce.t.*)
 } :text
 . = ALIGN(4096);
 .sdata :
 {
  *(.got.plt)
  *(.got)
  *(.srodata)
  *(.sdata)
  *(.sbss)
  *(.scommon)
 }
 . = ALIGN(4096);
 .data :
 {
  *(.rodata*)
  *(.data)
  *(.data1)
  *(.data.*)
  *(.sdata)
  *(.got.plt)
  *(.got)
  /* the EFI loader doesn't seem to like a .bss section, so we stick
     it all into .data: */
  *(.sbss)
  *(.scommon)
  *(.dynbss)
  *(.bss)
  *(COMMON)
 }
 . = ALIGN(4096);
 .dynamic  : { *(.dynamic) }
 . = ALIGN(4096);
 .rel :
 {
   *(.rel.data)
   *(.rel.data.*)
   *(.rel.got)
   *(.rel.stab)
   *(.data.rel.ro.local)
   *(.data.rel.local)
   *(.data.rel.ro)
   *(.data.rel*)
 }
 . = ALIGN(4096);
 .reloc :              /* This is the PECOFF .reloc section! */
 {
   *(.reloc)
 }
 . = ALIGN(4096);
 .dynsym   : { *(.dynsym) }
 . = ALIGN(4096);
 .dynstr   : { *(.dynstr) }
 . = ALIGN(4096);
 /DISCARD/ :
 {
   *(.rel.reloc)
   *(.eh_frame)
   *(.note.GNU-stack)
 }
 .comment 0 : { *(.comment) }
}