xref: /openbsd-src/gnu/usr.bin/binutils/ld/scripttempl/aout.sc (revision b305b0f1cb8417acb9d6ca66ca17b05cf1dc8fc9)
1e93f7393Sniklastest -z "${BIG_OUTPUT_FORMAT}" && BIG_OUTPUT_FORMAT=${OUTPUT_FORMAT}
2e93f7393Sniklastest -z "${LITTLE_OUTPUT_FORMAT}" && LITTLE_OUTPUT_FORMAT=${OUTPUT_FORMAT}
3*b305b0f1Sespietest -z "${ALIGNMENT}" && ALIGNMENT="4"
4e93f7393Sniklas
52159047fSniklascat <<EOF
6e93f7393SniklasOUTPUT_FORMAT("${OUTPUT_FORMAT}", "${BIG_OUTPUT_FORMAT}",
7e93f7393Sniklas	      "${LITTLE_OUTPUT_FORMAT}")
82159047fSniklasOUTPUT_ARCH(${ARCH})
92159047fSniklas
102159047fSniklas${RELOCATING+${LIB_SEARCH_DIRS}}
112159047fSniklas${STACKZERO+${RELOCATING+${STACKZERO}}}
122159047fSniklas${SHLIB_PATH+${RELOCATING+${SHLIB_PATH}}}
132159047fSniklas${RELOCATING+${EXECUTABLE_SYMBOLS}}
14191aa565Sniklas${RELOCATING+PROVIDE (__stack = 0);}
152159047fSniklasSECTIONS
162159047fSniklas{
172159047fSniklas  ${RELOCATING+. = ${TEXT_START_ADDR};}
182159047fSniklas  .text :
192159047fSniklas  {
202159047fSniklas    CREATE_OBJECT_SYMBOLS
212159047fSniklas    *(.text)
222159047fSniklas    /* The next six sections are for SunOS dynamic linking.  The order
232159047fSniklas       is important.  */
242159047fSniklas    *(.dynrel)
252159047fSniklas    *(.hash)
262159047fSniklas    *(.dynsym)
272159047fSniklas    *(.dynstr)
282159047fSniklas    *(.rules)
292159047fSniklas    *(.need)
302159047fSniklas    ${RELOCATING+_etext = .;}
312159047fSniklas    ${RELOCATING+__etext = .;}
322159047fSniklas    ${PAD_TEXT+${RELOCATING+. = ${DATA_ALIGNMENT};}}
332159047fSniklas  }
342159047fSniklas  ${RELOCATING+. = ${DATA_ALIGNMENT};}
352159047fSniklas  .data :
362159047fSniklas  {
372159047fSniklas    /* The first three sections are for SunOS dynamic linking.  */
382159047fSniklas    *(.dynamic)
392159047fSniklas    *(.got)
402159047fSniklas    *(.plt)
412159047fSniklas    *(.data)
422159047fSniklas    *(.linux-dynamic) /* For Linux dynamic linking.  */
432159047fSniklas    ${CONSTRUCTING+CONSTRUCTORS}
442159047fSniklas    ${RELOCATING+_edata  =  .;}
452159047fSniklas    ${RELOCATING+__edata  =  .;}
462159047fSniklas  }
472159047fSniklas  .bss :
482159047fSniklas  {
492159047fSniklas   ${RELOCATING+ __bss_start = .};
502159047fSniklas   *(.bss)
512159047fSniklas   *(COMMON)
52*b305b0f1Sespie   ${RELOCATING+. = ALIGN(${ALIGNMENT});}
53*b305b0f1Sespie   ${RELOCATING+_end = . };
54*b305b0f1Sespie   ${RELOCATING+__end = . };
552159047fSniklas  }
562159047fSniklas}
572159047fSniklasEOF
58