aboutsummaryrefslogtreecommitdiff
path: root/ld/m88kbcs.sc-sh
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>1992-02-15 22:07:15 +0000
committerPer Bothner <per@bothner.com>1992-02-15 22:07:15 +0000
commit6ecb2b74ee6a45adfba96efff8807448f070b754 (patch)
tree03413fd8e49d3a73f717d17d0ef167f8cba9f212 /ld/m88kbcs.sc-sh
parent3340f7e5fdd11b6c544714500fca870707793fd0 (diff)
downloadgdb-6ecb2b74ee6a45adfba96efff8807448f070b754.zip
gdb-6ecb2b74ee6a45adfba96efff8807448f070b754.tar.gz
gdb-6ecb2b74ee6a45adfba96efff8807448f070b754.tar.bz2
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.
Diffstat (limited to 'ld/m88kbcs.sc-sh')
-rwxr-xr-xld/m88kbcs.sc-sh41
1 files changed, 41 insertions, 0 deletions
diff --git a/ld/m88kbcs.sc-sh b/ld/m88kbcs.sc-sh
new file mode 100755
index 0000000..65112be
--- /dev/null
+++ b/ld/m88kbcs.sc-sh
@@ -0,0 +1,41 @@
+cat <<EOF
+TARGET(m88kbcs)
+OUTPUT_FORMAT(m88kbcs)
+OUTPUT_ARCH(${arch})
+ENTRY(__start)
+${RELOCATING+${LIB_SEARCH_DIRS}}
+
+SECTIONS
+{
+ .text ${RELOCATING+ 0x10000 + SIZEOF_HEADERS} :
+ {
+ CREATE_OBJECT_SYMBOLS
+ ${RELOCATING+ __.text.start = .}
+ ${RELOCATING+ __.init.start = .}
+ ${RELOCATING+ LONG(0xf400c001)}
+ ${RELOCATING+ __.init.end = .}
+ *(.text)
+ ${RELOCATING+ __.tdesc_start = .}
+ ${RELOCATING+ *(.tdesc)}
+ ${RELOCATING+ __.text_end = .}
+ ${RELOCATING+ __.initp.start = .}
+ ${RELOCATING+ __.initp.end =.}
+
+ ${RELOCATING+_etext =.}
+ }
+ .data ${RELOCATING+ SIZEOF(.text) + ADDR(.text) + 0x400000} :
+ {
+ *(.data)
+ ${CONSTRUCTING+CONSTRUCTORS}
+ *(.comment)
+ ${RELOCATING+_edata = .}
+ }
+ .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
+ {
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = .}
+ ${RELOCATING+ __end = .}
+ }
+}
+EOF