1998-03-01 22:58:51 +00:00
|
|
|
test -z "${BIG_OUTPUT_FORMAT}" && BIG_OUTPUT_FORMAT=${OUTPUT_FORMAT}
|
|
|
|
test -z "${LITTLE_OUTPUT_FORMAT}" && LITTLE_OUTPUT_FORMAT=${OUTPUT_FORMAT}
|
2000-05-12 23:15:20 +00:00
|
|
|
test -z "${ALIGNMENT}" && ALIGNMENT="4"
|
1998-03-01 22:58:51 +00:00
|
|
|
|
|
|
|
cat <<EOF
|
|
|
|
OUTPUT_FORMAT("${OUTPUT_FORMAT}", "${BIG_OUTPUT_FORMAT}",
|
|
|
|
"${LITTLE_OUTPUT_FORMAT}")
|
|
|
|
OUTPUT_ARCH(${ARCH})
|
|
|
|
|
|
|
|
${RELOCATING+${LIB_SEARCH_DIRS}}
|
|
|
|
${STACKZERO+${RELOCATING+${STACKZERO}}}
|
|
|
|
${SHLIB_PATH+${RELOCATING+${SHLIB_PATH}}}
|
|
|
|
${RELOCATING+${EXECUTABLE_SYMBOLS}}
|
|
|
|
${RELOCATING+PROVIDE (__stack = 0);}
|
|
|
|
SECTIONS
|
|
|
|
{
|
|
|
|
${RELOCATING+. = ${TEXT_START_ADDR};}
|
|
|
|
.text :
|
|
|
|
{
|
|
|
|
CREATE_OBJECT_SYMBOLS
|
|
|
|
*(.text)
|
|
|
|
/* The next six sections are for SunOS dynamic linking. The order
|
|
|
|
is important. */
|
|
|
|
*(.dynrel)
|
|
|
|
*(.hash)
|
|
|
|
*(.dynsym)
|
|
|
|
*(.dynstr)
|
|
|
|
*(.rules)
|
|
|
|
*(.need)
|
|
|
|
${RELOCATING+_etext = .;}
|
|
|
|
${RELOCATING+__etext = .;}
|
|
|
|
${PAD_TEXT+${RELOCATING+. = ${DATA_ALIGNMENT};}}
|
|
|
|
}
|
|
|
|
${RELOCATING+. = ${DATA_ALIGNMENT};}
|
|
|
|
.data :
|
|
|
|
{
|
|
|
|
/* The first three sections are for SunOS dynamic linking. */
|
|
|
|
*(.dynamic)
|
|
|
|
*(.got)
|
|
|
|
*(.plt)
|
|
|
|
*(.data)
|
|
|
|
*(.linux-dynamic) /* For Linux dynamic linking. */
|
|
|
|
${CONSTRUCTING+CONSTRUCTORS}
|
|
|
|
${RELOCATING+_edata = .;}
|
|
|
|
${RELOCATING+__edata = .;}
|
|
|
|
}
|
|
|
|
.bss :
|
|
|
|
{
|
|
|
|
${RELOCATING+ __bss_start = .};
|
|
|
|
*(.bss)
|
|
|
|
*(COMMON)
|
2000-05-12 23:15:20 +00:00
|
|
|
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
|
|
|
${RELOCATING+_end = . };
|
|
|
|
${RELOCATING+__end = . };
|
1998-03-01 22:58:51 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
EOF
|