6ecb2b74ee
is to use shell scripts to generate everything. * generic.em replaces ldtemplate. * Other *.em files replace various *.c files. A *.em file is a shell script that generates the corresponding ld__*.c file that implements an emulation. This is usually a straight 'cat' of a here-document, possibly with substitutions. * Script files (*.sc) are places by *.sc-sh scripts. Again, these are simple shell scripts that 'cat' here-documents, usually with some substitutions. The output a *.sc-sh is a script file.
29 lines
547 B
Text
Executable file
29 lines
547 B
Text
Executable file
cat <<EOF
|
|
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
|
|
OUTPUT_ARCH(${ARCH})
|
|
|
|
${RELOCATING+${LIB_SEARCH_DIRS}}
|
|
${RELOCATING+__DYNAMIC = 0;}
|
|
SECTIONS
|
|
{
|
|
.text ${RELOCATING+${TEXT_START_ADDR}}:
|
|
{
|
|
CREATE_OBJECT_SYMBOLS
|
|
*(.text)
|
|
${RELOCATING+_etext = ${DATA_ALIGNMENT};}
|
|
}
|
|
.data ${RELOCATING+${DATA_ALIGNMENT}} :
|
|
{
|
|
*(.data)
|
|
${CONSTRUCTING+CONSTRUCTORS}
|
|
${RELOCATING+_edata = .;}
|
|
}
|
|
.bss ${RELOCATING+SIZEOF(.data) + ADDR(.data)} :
|
|
{
|
|
*(.bss)
|
|
*(COMMON)
|
|
${RELOCATING+_end = .}
|
|
${RELOCATING+__end = .}
|
|
}
|
|
}
|
|
EOF
|