Major rewrite of how ld is configured. The major idea

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.
This commit is contained in:
Per Bothner
1992-02-15 22:07:15 +00:00
parent 3340f7e5fd
commit 6ecb2b74ee
12 changed files with 880 additions and 0 deletions

27
ld/ebmon29k.sc-sh Executable file
View File

@ -0,0 +1,27 @@
cat <<EOF
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
ENTRY(start)
SECTIONS {
.text ${RELOCATING+${TEXT_START_ADDR}} :
{
*(.text);
${RELOCATING+_etext = .}
}
data ${RELOCATING+0x80002000} :
{
*(.data);
*(.mstack);
*(.shbss);
*(.rstack);
*(.mstack);
${CONSTRUCTING+CONSTRUCTORS}
}
.bss . :
{
*(COMMON)
*(.bss);
${RELOCATING+_end = .;}
}
}
EOF