aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStan Shebs <shebs@codesourcery.com>1993-11-12 00:37:00 +0000
committerStan Shebs <shebs@codesourcery.com>1993-11-12 00:37:00 +0000
commitdd3f0e5b7d58d6892c51938ceffe887e614d1b72 (patch)
tree7771f73d474eadbbc484ef33f42f7495e042ca59
parenta721c80b05ddb22fb13b121e71e41adb19f456ba (diff)
downloadfsf-binutils-gdb-dd3f0e5b7d58d6892c51938ceffe887e614d1b72.zip
fsf-binutils-gdb-dd3f0e5b7d58d6892c51938ceffe887e614d1b72.tar.gz
fsf-binutils-gdb-dd3f0e5b7d58d6892c51938ceffe887e614d1b72.tar.bz2
More correct m68k LynxOS support
-rw-r--r--ld/emulparams/m68klynx.sh11
-rw-r--r--ld/emulparams/sparclynx.sh2
-rw-r--r--ld/scripttempl/.Sanitize1
-rw-r--r--ld/scripttempl/m68klynx.sc35
4 files changed, 44 insertions, 5 deletions
diff --git a/ld/emulparams/m68klynx.sh b/ld/emulparams/m68klynx.sh
index 254aa50..a280177 100644
--- a/ld/emulparams/m68klynx.sh
+++ b/ld/emulparams/m68klynx.sh
@@ -1,5 +1,8 @@
-SCRIPT_NAME=m68kcoff
-OUTPUT_FORMAT="coff-m68k"
-TEXT_START_ADDR=0x1000000
-PAGE_SIZE=0x1000000
+SCRIPT_NAME=m68klynx
+OUTPUT_FORMAT="coff-m68k-lynx"
+# This is what LynxOS /lib/init1.o wants.
+ENTRY=__main
+# following are dubious
+TEXT_START_ADDR=0
+PAGE_SIZE=0x1000
ARCH=m68k
diff --git a/ld/emulparams/sparclynx.sh b/ld/emulparams/sparclynx.sh
index f0b3399..dd67413 100644
--- a/ld/emulparams/sparclynx.sh
+++ b/ld/emulparams/sparclynx.sh
@@ -1,6 +1,6 @@
SCRIPT_NAME=sparccoff
OUTPUT_FORMAT="coff-sparc-lynx"
-# This is what /lib/init1.o seems to want.
+# This is what LynxOS /lib/init1.o wants.
ENTRY=_main
# following are dubious
PAGE_SIZE=0x1000
diff --git a/ld/scripttempl/.Sanitize b/ld/scripttempl/.Sanitize
index ca520bf..a331e33 100644
--- a/ld/scripttempl/.Sanitize
+++ b/ld/scripttempl/.Sanitize
@@ -37,6 +37,7 @@ hppaosf.sc
i386coff.sc
i960.sc
m68kcoff.sc
+m68klynx.sc
m88kbcs.sc
mips.sc
mipsbsd.sc
diff --git a/ld/scripttempl/m68klynx.sc b/ld/scripttempl/m68klynx.sc
new file mode 100644
index 0000000..3f601c7
--- /dev/null
+++ b/ld/scripttempl/m68klynx.sc
@@ -0,0 +1,35 @@
+test -z "$ENTRY" && ENTRY=_start
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+${LIB_SEARCH_DIRS}
+
+ENTRY(${ENTRY})
+
+SECTIONS
+{
+ .text ${RELOCATING+ SIZEOF_HEADERS} : {
+ *(.init)
+ *(.text)
+ *(.fini)
+ ${RELOCATING+ etext = .};
+ }
+ .data ${RELOCATING+ 0x400000 + (. & 0xffc00fff)} : {
+ *(.data .data2)
+ ${RELOCATING+ edata = .};
+ }
+ .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
+ {
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ end = .};
+ }
+ .stab . (NOLOAD) :
+ {
+ [ .stab ]
+ }
+ .stabstr . (NOLOAD) :
+ {
+ [ .stabstr ]
+ }
+}
+EOF