| # Copyright (C) 2014-2023 Free Software Foundation, Inc. | |
| # | |
| # Copying and distribution of this file, with or without modification, | |
| # are permitted in any medium without royalty provided the copyright | |
| # notice and this notice are preserved. | |
| # | |
| test -z "${BIG_OUTPUT_FORMAT}" && BIG_OUTPUT_FORMAT=${OUTPUT_FORMAT} | |
| test -z "${LITTLE_OUTPUT_FORMAT}" && LITTLE_OUTPUT_FORMAT=${OUTPUT_FORMAT} | |
| test -z "${ALIGNMENT}" && ALIGNMENT="4" | |
| cat <<EOF | |
| /* Copyright (C) 2014-2023 Free Software Foundation, Inc. | |
| Copying and distribution of this script, with or without modification, | |
| are permitted in any medium without royalty provided the copyright | |
| notice and this notice are preserved. */ | |
| 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) | |
| ${RELOCATING+. = ALIGN(${ALIGNMENT});} | |
| ${RELOCATING+_end = . }; | |
| ${RELOCATING+__end = . }; | |
| } | |
| } | |
| EOF |