Tue Jan 25 19:54:19 1994 Stan Shebs (shebs@andros.cygnus.com)
authorStan Shebs <shebs@codesourcery.com>
Wed, 26 Jan 1994 04:17:05 +0000 (04:17 +0000)
committerStan Shebs <shebs@codesourcery.com>
Wed, 26 Jan 1994 04:17:05 +0000 (04:17 +0000)
* mpw-config.in: New file, MPW configuration fragment.
* mpw-build.in: New file, MPW build script fragment.
* mpw-make.in: New file, MPW makefile fragment.
(This file is semi-automatically generated from Makefile.in.)
* ldfile.c (slash): If MPW, set to `:'.
* ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
prevent redefinition errors.

ld/ChangeLog.mpw [new file with mode: 0644]
ld/ldfile.c
ld/ldlex.l
ld/mpw-build.in [new file with mode: 0644]
ld/mpw-config.in [new file with mode: 0644]
ld/mpw-make.in [new file with mode: 0644]

diff --git a/ld/ChangeLog.mpw b/ld/ChangeLog.mpw
new file mode 100644 (file)
index 0000000..b2e64f3
--- /dev/null
@@ -0,0 +1,10 @@
+Tue Jan 25 19:54:19 1994  Stan Shebs  (shebs@andros.cygnus.com)
+
+       * mpw-config.in: New file, MPW configuration fragment.
+       * mpw-build.in: New file, MPW build script fragment.
+       * mpw-make.in: New file, MPW makefile fragment.
+       (This file is semi-automatically generated from Makefile.in.)
+       * ldfile.c (slash): If MPW, set to `:'.
+       * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
+       prevent redefinition errors.
+
index 4c4af01..6bcca03 100644 (file)
@@ -31,22 +31,30 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #include "ldexp.h"
 #include "ldlang.h"
 #include "ldfile.h"
-#include "ldsym.h"
 #include "ldmain.h"
 #include "ldlex.h"
 
 #include <ctype.h>
 
 char *ldfile_input_filename;
-CONST char * ldfile_output_machine_name ="";
+const char *ldfile_output_machine_name = "";
 unsigned long ldfile_output_machine;
 enum bfd_architecture ldfile_output_architecture;
 
+/* start-sanitize-mpw */
+#ifndef MPW
+/* end-sanitize-mpw */
 #ifdef VMS
 char *slash = "";
 #else
 char *slash = "/";
 #endif
+/* start-sanitize-mpw */
+#else /* MPW */
+/* The MPW path char is a colon. */
+char *slash = ":";
+#endif /* MPW */
+/* end-sanitize-mpw */
 
 
 
@@ -70,7 +78,11 @@ typedef struct search_arch
 static search_arch_type *search_arch_head;
 static search_arch_type **search_arch_tail_ptr = &search_arch_head;
  
-
+static bfd *cached_bfd_openr PARAMS ((const char *attempt,
+                                     lang_input_statement_type *entry));
+static bfd *open_a PARAMS ((char *arch, lang_input_statement_type *entry,
+                           char *lib, char *suffix));
+static FILE *try_open PARAMS ((char *name, char *exten));
 
 void
 ldfile_add_library_path(name)
@@ -85,10 +97,10 @@ char *name;
 }
 
 
-static bfd*
+static bfd *
 cached_bfd_openr(attempt,entry)
-char *attempt;
-lang_input_statement_type  *entry;
+     const char *attempt;
+     lang_input_statement_type  *entry;
 {
   entry->the_bfd = bfd_openr(attempt, entry->target);
   if (trace_file_tries == true ) {
@@ -100,10 +112,10 @@ lang_input_statement_type  *entry;
 
 static bfd *
 open_a(arch, entry, lib, suffix)
-char *arch;
-lang_input_statement_type *entry;
-char *lib;
-char *suffix;
+     char *arch;
+     lang_input_statement_type *entry;
+     char *lib;
+     char *suffix;
 {
   bfd*desc;
   search_dirs_type *search ;
@@ -187,8 +199,8 @@ lang_input_statement_type *entry;
 
 static FILE *
 try_open(name, exten)
-char *name;
-char *exten;
+     char *name;
+     char *exten;
 {
   FILE *result;
   char buff[1000];
index cdc4249..7955ac7 100644 (file)
@@ -26,6 +26,12 @@ This was written by steve chamberlain
 
 #include <ansidecl.h>
 #include <stdio.h>
+/* start-sanitize-mpw */
+#ifdef MPW
+/* Prevent enum redefinition problems. */
+#define TRUE_FALSE_ALREADY_DEFINED
+#endif /* MPW */
+/* end-sanitize-mpw */
 #include "bfd.h"
 #include "sysdep.h"
 #include "ld.h"
@@ -121,6 +127,10 @@ NOCFILENAMECHAR    [_a-zA-Z0-9\/\.\-\_\+\$\:\[\]\\\~]
 <COMMAND>"-o"                  { return OPTION_o; }
 <COMMAND>"-g"                  { return OPTION_g; }
 <COMMAND>"-e"                  { return OPTION_e; }
+<COMMAND>"-e"{FILENAME}                {
+                                       yylval.name = buystring(yytext+2);
+                                       return OPTION_esymbol;
+                               }
 <COMMAND>"-b"                  { return OPTION_b; }
 <COMMAND>"-dc"                 { return OPTION_dc; }
 <COMMAND>"-dp"                 { return OPTION_dp; }
@@ -137,6 +147,10 @@ NOCFILENAMECHAR    [_a-zA-Z0-9\/\.\-\_\+\$\:\[\]\\\~]
 <COMMAND>"-c"                  { return OPTION_c; }
 <COMMAND>"-R"                  { return OPTION_R; }
 <COMMAND>"-u"                  { return OPTION_u; }
+<COMMAND>"-u"{FILENAME}                {
+                                       yylval.name = buystring(yytext+2);
+                                       return OPTION_usymbol;
+                               }
 <COMMAND>"-s"                  { return OPTION_s; }
 <COMMAND>"-S"                  { return OPTION_S; }
 <COMMAND>"-Bstat"              { return OPTION_Bstatic; }
@@ -187,9 +201,13 @@ NOCFILENAMECHAR    [_a-zA-Z0-9\/\.\-\_\+\$\:\[\]\\\~]
                                 return OPTION_F;
                               }
 
+<COMMAND>"-y"                 {
+                                       return OPTION_y;
+                               }
+                               
 <COMMAND>"-y"{FILENAME}         {
                                        yylval.name = buystring(yytext+2);
-                                       return OPTION_y;
+                                       return OPTION_ysymbol;
                                }
                                
 <COMMAND>"-A"{FILENAME}        {
diff --git a/ld/mpw-build.in b/ld/mpw-build.in
new file mode 100644 (file)
index 0000000..45a5f32
--- /dev/null
@@ -0,0 +1,48 @@
+# Script fragment to build MPW GAS.
+
+Set BuildTarget "none"
+
+Loop
+       Break If {#} == 0
+       If "{1}" =~ /--srcdir/
+               Set srcdir "{2}"
+               Shift 1
+       Else If "{1}" =~ /--topdir/
+               Set topsrcdir "{2}"
+               Shift 1
+       Else If "{1}" =~ /--prefix/
+               Set prefix "{2}"
+               Shift 1
+       Else If "{1}" =~ /-v/
+               Set verify 1
+               Set verifystr "-v"
+               Shift 1
+       Else
+               If "{BuildTarget}" =~ /none/
+                       Set BuildTarget "{1}"
+               Else
+                       Echo Only one build target allowed, ignoring "{1}"
+               End If
+       End If
+       Shift 1
+End Loop
+
+Set libsubdir "{libdir}"gcc-lib:"{target_canonical}":"{version}":
+
+If "{BuildTarget}" =~ /all/
+       Echo "Set Echo 1" >all.makeout
+       Make >>all.makeout
+       all.makeout
+       Delete all.makeout
+Else If "{BuildTarget}" =~ /install/
+       If "`Exists "{prefix}"`" == ""
+               Echo "{prefix}" does not exist, cannot install anything
+               Exit 1
+       End If
+       If "`Exists "{bindir}"`" == ""
+               NewFolder "{bindir}"
+       End If
+       Duplicate -y :ld.new "{bindir}"ld
+Else
+       Echo {BuildTarget} not a valid build target
+End If
diff --git a/ld/mpw-config.in b/ld/mpw-config.in
new file mode 100644 (file)
index 0000000..ed90274
--- /dev/null
@@ -0,0 +1 @@
+# Configuration fragment for LD.
diff --git a/ld/mpw-make.in b/ld/mpw-make.in
new file mode 100644 (file)
index 0000000..f4fb1d6
--- /dev/null
@@ -0,0 +1,708 @@
+
+s = "{srcdir}"
+
+o = :
+
+# File in object dir can come from either the current dir or srcdir.
+"{o}" \Option-f : "{s}"
+
+# Default rule that puts each file into separate segment.
+
+.c.o  \Option-f .c
+   {CC}  {DepDir}{Default}.c {ALL_CFLAGS} {SymOptions} -s {Default} -o {TargDir}{Default}.c.o
+
+# Makefile for the GNU linker ld (version 2)
+# Copyright (C) 1989, 90, 91, 92, 93, 1994 Free Software Foundation, Inc.
+
+# This file is part of GNU ld..
+
+# This program is free software; you can redistribute it and:or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+
+# srcdir = :
+objdir = :
+
+prefix = :usr:local
+
+program_transform_name =
+exec_prefix = {prefix}
+bindir = {exec_prefix}:bin
+libdir = {exec_prefix}:lib
+tooldir = {exec_prefix}:{target_alias}
+datadir = {prefix}:lib
+mandir = {prefix}:man
+man1dir = {mandir}:man1
+man2dir = {mandir}:man2
+man3dir = {mandir}:man3
+man4dir = {mandir}:man4
+man5dir = {mandir}:man5
+man6dir = {mandir}:man6
+man7dir = {mandir}:man7
+man8dir = {mandir}:man8
+man9dir = {mandir}:man9
+infodir = {prefix}:info
+includedir = {prefix}:include
+docdir = {datadir}:doc
+# We put the scripts in the directory {scriptdir}:ldscripts.
+# We can't put the scripts in {datadir} because the SEARCH_DIR
+# directives need to be different for native and cross linkers.
+scriptdir = {tooldir}:lib
+
+SHELL = :bin:sh
+
+INSTALL = `cd {srcdir}; pwd`:::install.sh -c
+INSTALL_PROGRAM = {INSTALL}
+INSTALL_DATA = {INSTALL}
+INSTALL_XFORM = {INSTALL} -t='{program_transform_name}'
+INSTALL_XFORM1 = {INSTALL_XFORM} -b=.1
+
+AR = ar
+AR_FLAGS = qv
+#CFLAGS = -g
+MAKEINFO = makeinfo
+TEXI2DVI = texi2dvi
+RANLIB = ranlib
+CC_FOR_BUILD={CC}
+BISON = bison -y
+LEX = flex
+
+# Seach path to override the default search path for -lfoo libraries.
+# If LIB_PATH is empty, the ones in the script (if any) are left alone.
+# (The default is usually :lib \Option-f usr:lib \Option-f :usr:local:lib, unless building
+# a cross-linker, in which case the default is empty.  See genscripts.sh.)
+# Otherwise, they are replaced with the ones given in LIB_PATH,
+# which may have the form \Option-f  LIB_PATH=:lib \Option-f :usr:local:lib
+LIB_PATH =
+
+# Additional libraries which are used when ld is built native.  This
+# is set by some host makefile fragments.
+NATIVE_LIB_DIRS =
+
+BASEDIR = "{srcroot}"
+BFDDIR = {BASEDIR}bfd
+INCDIR = {BASEDIR}include
+INCLUDES = -i : -i {srcdir} -i ::bfd: -i {BFDDIR} -i {INCDIR} -i ::extra-include -i "{INCDIR}":mpw:
+DEP = mkdep
+
+# What version of the manual to build
+DOCVER = gen
+
+# Where to find texinfo.tex to format docn with TeX
+TEXIDIR = "{srcdir}":texinfo
+
+# Where to find other docs needed to format with TeX
+TEXINPUTS = {TEXIDIR} \Option-f {BFDDIR}:doc \Option-f {srcdir}
+
+# Whether to get roff to put indexing entries on stderr
+TEXI2OPT =
+# You neeed this to generate ld-index.ms (or .mm or .me)
+# TEXI2OPT = -i
+
+TEXI2ROFF=texi2roff
+
+# Which roff program to use to generate index for texi2roff'd doc
+ROFF = groff
+
+#stuff for self hosting (can be overridden in config file).
+HOSTING_CRT0 = "{o}":lib:crt0.c.o
+HOSTING_LIBS = `if [ -f ::gcc:libgcc.o ] ; then echo ::gcc:libgcc.o ; else gcc -print-libgcc-file-name; fi`  -lc
+HOSTING_EMU = -m {EMUL}
+
+CXX = `if [ -f ::gcc:xgcc ] ; then \Option-d
+               echo ::gcc:xgcc -B::gcc:; \Option-d
+           else echo gcc; \Option-d
+           fi`
+CXXFLAGS = -fgnu-linker
+
+# FIX_ME \Option-f  using ::gcc:xgcc breaks the cdtest. 
+CXX = g++
+
+# Setup the testing framework, if you have one
+RUNTEST = runtest
+RUNTEST_FLAGS =
+RUNTEST_CC = `if [ -f ::gcc:xgcc ] ; then \Option-d
+              echo ::gcc:xgcc -B::gcc:; \Option-d
+           else echo gcc; \Option-d
+           fi`
+RUNTEST_CFLAGS = {CFLAGS}
+RUNTEST_CXX = `if [ -f ::gcc:xgcc ] ; then \Option-d
+               echo ::gcc:xgcc -B::gcc:; \Option-d
+           else echo gcc; \Option-d
+           fi`
+# FIX_ME \Option-f  using ::gcc:xgcc breaks the cdtest. 
+RUNTEST_CXX = {CXX}
+RUNTEST_CXXFLAGS = {CXXFLAGS}
+
+# go directly to ld.new in case this ld isn't capable of
+# linking native object on this host.  It can be renamed on
+# install.
+LD_PROG        = ld.new
+
+all \Option-f  {LD_PROG}
+# .PHONY \Option-f  all
+
+### Host, target, and site specific Makefile fragments come in here.
+####
+
+LINTFLAGS =  {INCLUDES} {EXTRA_DEF} 
+
+# The "{s}".cc suffix is used by `make check'.
+
+# .SUFFIXES \Option-f  "{s}".y {SUFFIXES} "{s}".cc
+
+# Suppress smart makes who think they know how to automake Yacc files
+# .y.c \Option-f 
+
+# This rule is used for the check-cdtest target.
+"{o}".cc.c.o \Option-f 
+       {CXX} -c -i {srcdir} {CXXFLAGS} {CFLAGS} $<
+
+ALL_CFLAGS={INCLUDES} {HDEFINES} {TDEFINES} {CDEFINES} {CFLAGS}
+"{o}".c.c.o \Option-f 
+       {CC} -c {ALL_CFLAGS} $<
+
+# for self hosting
+BFDLIB = ::bfd:libbfd.o
+LIBIBERTY = ::libiberty:libiberty.o
+
+ALL_EMULATIONS = "{o}"em_lnk960.c.o "{o}"em_sun3.c.o "{o}"em_i386aout.c.o "{o}"em_go32.c.o "{o}"em_vsta.c.o \Option-d
+       "{o}"em_m88kbcs.c.o "{o}"em_a29k.c.o "{o}"em_news.c.o "{o}"em_hp300bsd.c.o "{o}"em_hp3hpux.c.o \Option-d
+       "{o}"em_h8300.c.o "{o}"em_h8300h.c.o "{o}"em_ebmon29k.c.o "{o}"em_sun4.c.o "{o}"em_gld960.c.o \Option-d
+       "{o}"em_m68kcoff.c.o "{o}"em_st2000.c.o "{o}"em_sa29200.c.o "{o}"em_i386mach.c.o \Option-d
+       "{o}"em_vanilla.c.o "{o}"em_i386coff.c.o "{o}"em_z8ksim.c.o "{o}"em_mipslit.c.o "{o}"em_i386bsd.c.o \Option-d
+       "{o}"em_mipsbig.c.o "{o}"em_mipsbsd.c.o "{o}"em_mipsidt.c.o "{o}"em_vax.c.o "{o}"em_h8500.c.o \Option-d
+       "{o}"em_hppaosf.c.o "{o}"em_mipsidtl.c.o "{o}"em_sh.c.o "{o}"em_elf_i386.c.o "{o}"em_alpha.c.o \Option-d
+       "{o}"em_i386lynx.c.o "{o}"em_m68klynx.c.o "{o}"em_sparclynx.c.o "{o}"em_coff_sparc.c.o \Option-d
+       "{o}"em_delta68.c.o \Option-d
+       {OTHER_EMULATIONS}
+
+# This is now set by configure.in.
+EMULATION_OFILES = "{o}"em_mipsidt.c.o
+
+CFILES = "{s}"ldctor.c "{s}"ldemul.c "{s}"ldexp.c "{s}"ldfile.c "{s}"ldlang.c \Option-d
+       ldmain.c "{s}"ldmisc.c "{s}"ldver.c "{s}"ldwrite.c "{s}"lexsup.c \Option-d
+       mri.c
+
+
+HFILES = "{s}"config.h "{s}"ld.h "{s}"ldctor.h "{s}"ldemul.h "{s}"ldexp.h "{s}"ldfile.h \Option-d
+       ldlang.h "{s}"ldlex.h "{s}"ldmain.h "{s}"ldmisc.h "{s}"ldver.h \Option-d
+       ldwrite.h "{s}"mri.h
+
+GENERATED_CFILES = :ldgram.c :ldlex.c
+GENERATED_HFILES = :ldgram.h :ldemul-list.h
+
+OFILES = "{o}"ldgram.c.o "{o}"ldlex.c.o "{o}"lexsup.c.o "{o}"ldlang.c.o "{o}"mri.c.o "{o}"ldctor.c.o "{o}"ldmain.c.o \Option-d
+       "{o}"ldwrite.c.o "{o}"ldexp.c.o  "{o}"ldemul.c.o "{o}"ldver.c.o "{o}"ldmisc.c.o \Option-d
+       "{o}"ldfile.c.o {EMULATION_OFILES}
+
+LINTSOURCES = {CFILES} {GENERATED_CFILES} em_\Option-x.c
+
+STAGESTUFF = "{o}"\Option-x.c.o ldscripts:\Option-x em_\Option-x.c {GENERATED_CFILES} {GENERATED_HFILES}
+
+info \Option-f  ld.info
+# .PHONY \Option-f  info
+
+:ldgram.h :ldgram.c \Option-f  "{s}"ldgram.y
+       {BISON} {BISONFLAGS} -d "{srcdir}"ldgram.y
+       Rename -y y.tab.c :ldgram.c
+       Rename -y y.tab.h :ldgram.h
+
+# EMUL is the name of a file in the emulparams subdir, without the .sh.
+"{o}"ldmain.c.o \Option-f  "{s}"ldmain.c config.status 
+       {CC} {INCLUDES} {HDEFINES} {TDEFINES} {CDEFINES} -d DEFAULT_EMULATION=\Option-d"{EMUL}\Option-d" -d SCRIPTDIR=\Option-d"{scriptdir}\Option-d" {CFLAGS} "{s}"ldmain.c -o "{o}"ldmain.c.o
+       fi
+
+
+:ldlex.c \Option-f  "{s}"ldlex.l
+       {LEX} -i  -Cem "{srcdir}"ldlex.l
+       Catenate :lex.yy.c >:ldlex.c.new
+       Delete -y :lex.yy.c
+       Rename -y :ldlex.c.new :ldlex.c
+
+# These all start with em_ so 'make clean' can find them.
+
+GENSCRIPTS = {SHELL} "{srcdir}"genscripts.sh {srcdir} {libdir} {host_alias} {target_alias} {EMUL} "{NATIVE_LIB_DIRS}"
+GEN_DEPENDS = "{srcdir}"genscripts.sh
+
+em_sun4.c \Option-f  "{srcdir}"emulparams:sun4.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} sun4
+em_sun3.c \Option-f  "{srcdir}"emulparams:sun3.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} sun3
+em_vsta.c \Option-f  "{srcdir}"emulparams:vsta.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} vsta
+em_go32.c \Option-f  "{srcdir}"emulparams:go32.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} go32
+em_news.c \Option-f  "{srcdir}"emulparams:news.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} news
+em_vax.c \Option-f  "{srcdir}"emulparams:vax.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} vax
+em_hp300bsd.c \Option-f  "{srcdir}"emulparams:hp300bsd.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} hp300bsd
+em_hp3hpux.c \Option-f  "{srcdir}"emulparams:hp3hpux.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} hp3hpux
+em_hppaosf.c \Option-f  "{srcdir}"emulparams:hppaosf.sh \Option-d
+  "{srcdir}"emultempl:hppaosf.em "{srcdir}"scripttempl:hppaosf.sc {GEN_DEPENDS}
+       {GENSCRIPTS} hppaosf
+em_i386aout.c \Option-f  "{srcdir}"emulparams:i386aout.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} i386aout
+em_i386mach.c \Option-f  "{srcdir}"emulparams:i386mach.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} i386mach
+em_ebmon29k.c \Option-f  "{srcdir}"emulparams:ebmon29k.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:ebmon29k.sc {GEN_DEPENDS}
+       {GENSCRIPTS} ebmon29k
+em_sa29200.c \Option-f  "{srcdir}"emulparams:sa29200.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:sa29200.sc {GEN_DEPENDS}
+       {GENSCRIPTS} sa29200
+em_a29k.c \Option-f  "{srcdir}"emulparams:a29k.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:a29k.sc {GEN_DEPENDS}
+       {GENSCRIPTS} a29k
+em_m88kbcs.c \Option-f  "{srcdir}"emulparams:m88kbcs.sh \Option-d
+  "{srcdir}"emultempl:m88kbcs.em "{srcdir}"scripttempl:m88kbcs.sc {GEN_DEPENDS}
+       {GENSCRIPTS} m88kbcs
+em_h8300.c \Option-f  "{srcdir}"emulparams:h8300.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:h8300.sc {GEN_DEPENDS}
+       {GENSCRIPTS} h8300
+em_h8300h.c \Option-f  "{srcdir}"emulparams:h8300h.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:h8300h.sc {GEN_DEPENDS}
+       {GENSCRIPTS} h8300h
+em_h8500.c \Option-f  "{srcdir}"emulparams:h8500.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:h8500.sc {GEN_DEPENDS}
+       {GENSCRIPTS} h8500
+em_sh.c \Option-f  "{srcdir}"emulparams:sh.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:sh.sc {GEN_DEPENDS}
+       {GENSCRIPTS} sh
+em_st2000.c \Option-f  "{srcdir}"emulparams:st2000.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:st2000.sc {GEN_DEPENDS}
+       {GENSCRIPTS} st2000
+em_z8ksim.c \Option-f  "{srcdir}"emulparams:z8ksim.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:z8ksim.sc {GEN_DEPENDS}
+       {GENSCRIPTS} z8ksim
+em_vanilla.c \Option-f  "{srcdir}"emulparams:vanilla.sh \Option-d
+  "{srcdir}"emultempl:vanilla.em "{srcdir}"scripttempl:vanilla.sc {GEN_DEPENDS}
+       {GENSCRIPTS} vanilla
+em_lnk960.c \Option-f  "{srcdir}"emulparams:lnk960.sh \Option-d
+  "{srcdir}"emultempl:lnk960.em "{srcdir}"scripttempl:i960.sc {GEN_DEPENDS}
+       {GENSCRIPTS} lnk960
+em_gld960.c \Option-f  "{srcdir}"emulparams:gld960.sh \Option-d
+  "{srcdir}"emultempl:gld960.em "{srcdir}"scripttempl:i960.sc {GEN_DEPENDS}
+       {GENSCRIPTS} gld960
+em_m68kcoff.c \Option-f  "{srcdir}"emulparams:m68kcoff.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:m68kcoff.sc {GEN_DEPENDS}
+       {GENSCRIPTS} m68kcoff
+em_delta68.c \Option-f  "{srcdir}"emulparams:delta68.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:delta68.sc {GEN_DEPENDS}
+       {GENSCRIPTS} delta68
+em_m68klynx.c \Option-f  "{srcdir}"emulparams:m68klynx.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:m68kcoff.sc {GEN_DEPENDS}
+       {GENSCRIPTS} m68klynx
+em_i386coff.c \Option-f  "{srcdir}"emulparams:i386coff.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:i386coff.sc {GEN_DEPENDS}
+       {GENSCRIPTS} i386coff
+em_i386lynx.c \Option-f  "{srcdir}"emulparams:i386lynx.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:i386coff.sc {GEN_DEPENDS}
+       {GENSCRIPTS} i386lynx
+em_sparclynx.c \Option-f  "{srcdir}"emulparams:sparclynx.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:sparccoff.sc {GEN_DEPENDS}
+       {GENSCRIPTS} sparclynx
+em_mipslit.c \Option-f   "{srcdir}"emulparams:mipslit.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:mips.sc {GEN_DEPENDS}
+       {GENSCRIPTS} mipslit
+em_i386bsd.c \Option-f  "{srcdir}"emulparams:i386bsd.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} i386bsd
+em_mipsbig.c \Option-f   "{srcdir}"emulparams:mipsbig.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:mips.sc {GEN_DEPENDS}
+       {GENSCRIPTS} mipsbig
+em_mipsbsd.c \Option-f  "{srcdir}"emulparams:mipsbsd.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:aout.sc {GEN_DEPENDS}
+       {GENSCRIPTS} mipsbsd
+em_mipsidt.c \Option-f  "{srcdir}"emulparams:mipsidt.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:mips.sc {GEN_DEPENDS}
+       {GENSCRIPTS} mipsidt
+em_mipsidtl.c \Option-f  "{srcdir}"emulparams:mipsidtl.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:mips.sc {GEN_DEPENDS}
+       {GENSCRIPTS} mipsidtl
+em_elf_i386.c \Option-f  "{srcdir}"emulparams:elf_i386.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:elf.sc {GEN_DEPENDS}
+       {GENSCRIPTS} elf_i386
+em_elf32mipb.c \Option-f  "{srcdir}"emulparams:elf32mipb.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:elf.sc {GEN_DEPENDS}
+       {GENSCRIPTS} elf32mipb
+em_alpha.c \Option-f  "{srcdir}"emulparams:alpha.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:alpha.sc {GEN_DEPENDS}
+       {GENSCRIPTS} alpha
+em_coff_sparc.c \Option-f  "{srcdir}"emulparams:coff_sparc.sh \Option-d
+  "{srcdir}"emultempl:generic.em "{srcdir}"scripttempl:sparccoff.sc {GEN_DEPENDS}
+       {GENSCRIPTS} coff_sparc
+
+{LD_PROG} \Option-f  {OFILES} {BFDLIB} {LIBIBERTY}
+       Link    {LDFLAGS} -o {LD_PROG} {OFILES} {BFDLIB} {LIBIBERTY} {EXTRALIBS}
+
+# The generated emulation files mostly have the same dependencies.
+{EMULATION_OFILES} \Option-f  ::bfd:bfd.h ::bfd:sysdep.h "{INCDIR}":bfdlink.h \Option-d
+  "{s}"ld.h "{s}"ldmain.h "{s}"ldemul.h "{s}"ldfile.h "{s}"ldmisc.h "{s}"ldexp.h "{s}"ldlang.h "{s}"config.h "{s}"ldctor.h
+
+# These targets are for the dejagnu testsuites. The file site.exp 
+# contains global variables that all the testsuites will use.
+# There is a current debate as to how and where to generate test
+# outputs. Rob feels each test should be built in {objdir} with
+# a unique name. Cassidy feels that we should create a directory
+# called {objdir}:tmpdir and do the work there. This way, there
+# is no potential conflict with existing objects, ie \Option-f  as there
+# was in the past with "{o}"loop.c.o and "{o}"flow.c.o, and, there is no chance
+# of filling :tmp, which would cause other problems. Lastly, this 
+# allow retention of the testcase name making debugging easier.
+#
+testdir = {objdir}:tmpdir
+
+site.exp \Option-f  :config.status Makefile
+       @if [ -d {testdir} ]; then true; else mkdir {testdir}; fi
+       @echo "Making a new config file..."
+       @rm -f :tmp?
+       @touch site.exp
+       @mv site.exp site.bak
+       @echo "## variables are automatically generated by make ##" > :tmp0
+       @echo "# Do not edit here. If you wish to override these" >> :tmp0
+       @echo "# values, add them to the last section" >> :tmp0
+       @echo "# HOST AND TARGET INFO" >> :tmp0
+       @echo "set host_os {host_os}" >> :tmp0
+       @echo "set host_alias {host_alias}" >> :tmp0
+       @echo "set host_cpu {host_cpu}" >> :tmp0
+       @echo "set host_vendor {host_vendor}" >> :tmp0
+       @echo "set target_os {target_os}" >> :tmp0
+       @echo "set target_alias {target_alias}" >> :tmp0
+       @echo "set target_cpu {target_cpu}" >> :tmp0
+       @echo "set target_vendor {target_vendor}" >> :tmp0
+       @echo "set host_triplet {host_canonical}" >> :tmp0
+       @echo "set target_triplet {target_canonical}" >> :tmp0
+       @echo "# DIRECTORY INFO" >> :tmp0
+       @echo "set objdir `pwd`" >> :tmp0
+       @echo "set tmpdir `cd {testdir}; pwd`" >> :tmp0
+       @echo "" >> :tmp0       
+       @echo "# LD DEPENDANCIES" >> :tmp0      
+       @echo "set OFILES \"{OFILES}\"" >> :tmp0
+       @echo "set BFDLIB \"{BFDLIB}\"" >> :tmp0
+       @echo "set LIBIBERTY \"{LIBIBERTY}\"" >> :tmp0
+       @echo "set HOSTING_EMU \"{HOSTING_EMU}\"" >> :tmp0
+       @echo "set HOSTING_CRT0 \"{HOSTING_CRT0}\"" >> :tmp0
+       @echo "set HOSTING_LIBS \"{HOSTING_LIBS}\"" >> :tmp0
+       @echo "" >> :tmp0       
+       @echo "## Variables generated by configure. Do Not Edit ##" >> :tmp0
+       @cat :tmp0 > site.exp
+       @cat site.bak | sed \Option-d
+                       e '1,:^## Variables generated by.\Option-x##: d' >> site.exp
+       @rm -f :tmp?
+
+check \Option-f  ld.new site.exp
+       {RUNTEST} --tool ld \Option-d
+       -srcdir "{srcdir}"testsuite {RUNTEST_FLAGS} \Option-d
+       CC="{RUNTEST_CC}" CFLAGS="{RUNTEST_CFLAGS}" \Option-d
+       CXX="{RUNTEST_CXX}" CXXFLAGS="{RUNTEST_CXXFLAGS}"
+
+installcheck \Option-f 
+# .PHONY \Option-f  check installcheck
+
+# Rules for testing by relinking ld itself.
+
+"{o}"ld-partial.c.o \Option-f  ld.new
+       :ld.new {HOSTING_EMU} -o "{o}"ld-partial.c.o -r {OFILES}
+ld1 \Option-f  "{o}"ld-partial.c.o
+       :ld.new {HOSTING_EMU} -o ld1 {HOSTING_CRT0} "{o}"ld-partial.c.o {BFDLIB} {LIBIBERTY} {HOSTING_LIBS}
+
+ld1-full \Option-f  ld.new
+       :ld.new {HOSTING_EMU} -o ld1-full {HOSTING_CRT0} {OFILES} {BFDLIB} {LIBIBERTY} {HOSTING_LIBS}
+
+ld2 \Option-f  ld1
+       :ld1 {HOSTING_EMU} -o ld2 {HOSTING_CRT0} {OFILES} {BFDLIB} {LIBIBERTY} {HOSTING_LIBS}
+
+ld3 \Option-f  ld2
+       :ld2 {HOSTING_EMU} -o ld3 {HOSTING_CRT0} {OFILES} {BFDLIB} {LIBIBERTY} {HOSTING_LIBS}
+
+bootstrap \Option-f  ld3
+       cmp ld2 ld3
+
+# .PHONY \Option-f  bootstrap
+
+# A test program for C++ constructors and destructors.
+
+cdtest \Option-f  "{o}"cdtest-main.c.o "{o}"cdtest-func.c.o "{o}"cdtest-foo.c.o ld.new
+       :ld.new {HOSTING_EMU} -o cdtest {HOSTING_CRT0} \Option-d
+         "{o}"cdtest-main.c.o "{o}"cdtest-func.c.o "{o}"cdtest-foo.c.o {HOSTING_LIBS}
+
+check-cdtest \Option-f  cdtest "{srcdir}"cdtest.exp
+       :cdtest "{o}">cdtest.c.out
+       diff "{srcdir}"cdtest.exp "{o}"cdtest.c.out
+
+# .PHONY \Option-f  check-cdtest
+
+# END OF CHECK TARGETS
+
+# DOCUMENTATION TARGETS
+# Manual configuration file; not usually attached to normal configuration,
+# because almost all configs use "gen" version of manual.
+#  Set DOCVER above to change.
+configdoc.texi \Option-f       {DOCVER}-doc.texi
+       # ln -s "{srcdir}"{DOCVER}-doc.texi :configdoc.texi || \Option-d
+       # ln "{srcdir}"{DOCVER}-doc.texi :configdoc.texi || \Option-d
+       Duplicate -d -y "{srcdir}"{DOCVER}-doc.texi :configdoc.texi
+
+# TeX output
+dvi \Option-f  ld.dvi
+ld.dvi \Option-f  "{srcdir}"ld.texinfo "{srcdir}"configdoc.texi {BFDDIR}:doc:bfdsumm.texi
+       TEXINPUTS={BFDDIR}:doc \Option-f $$TEXINPUTS {TEXI2DVI} "{srcdir}"ld.texinfo
+
+ldint.dvi \Option-f  "{srcdir}"ldint.texinfo
+       {TEXI2DVI} "{srcdir}"ldint.texinfo
+
+# info file for online browsing
+ld.info \Option-f  "{srcdir}"ld.texinfo configdoc.texi {BFDDIR}:doc:bfdsumm.texi
+       {MAKEINFO} -i {BFDDIR}:doc -o ld.info "{srcdir}"ld.texinfo
+
+ldint.info \Option-f  "{srcdir}"ldint.texinfo
+       {MAKEINFO} -o ldint.info "{srcdir}"ldint.texinfo
+
+# .PHONY \Option-f  dvi
+
+#separate targets for "ms", "me", and "mm" forms of roff doc
+# Try to use a recent texi2roff.  v2 was put on prep in jan91.
+# If you want an index, see texi2roff doc for postprocessing 
+# and add -i to texi2roff invocations below.
+# Workarounds for texi2roff-2 (probably fixed in later texi2roff's, delete
+#    correspondint -e lines when later texi2roff's are current)
+# + @ifinfo's deleted explicitly due to texi2roff-2 bug w nested constructs.
+# + @c's deleted explicitly because texi2roff sees texinfo commands in them
+# + @   (that's at-BLANK) not recognized by texi2roff, turned into blank
+# + @alphaenumerate is ridiculously new, turned into @enumerate
+
+ld.ms \Option-f  "{srcdir}"ld.texinfo
+       sed -e ':\\input texinfo:d' \Option-d
+               e ':@c TEXI2ROFF-KILL:,:@c END TEXI2ROFF-KILL:d' \Option-d
+               e ':^end ifinfo:d' \Option-d
+               e ':^@c:d' \Option-d
+               e 's:{.\Option-x,,:{:' \Option-d
+               e 's:@ : :g' \Option-d
+               e 's:^enumerate:g' \Option-d
+               e 's:^@end alphaenumerate:@end enumerate:g' \Option-d
+               "{srcdir}"ld.texinfo | \Option-d
+       {TEXI2ROFF} {TEXI2OPT} -ms | \Option-d
+       sed -e 's:---:\\(em:g' \Option-d
+               >>ld.ms 
+
+# index for roff output
+ld-index.ms \Option-f  ld.ms
+       {ROFF} -ms ld.ms 2>&1 1>:dev:null | \Option-d
+               sed -e ': \Option-f  warning \Option-f :d' | \Option-d
+               texi2index >ld-index.ms
+
+# roff output (-mm)
+ld.mm \Option-f  "{srcdir}"ld.texinfo
+       sed -e ':\\input texinfo:d' \Option-d
+               e ':@c TEXI2ROFF-KILL:,:@c END TEXI2ROFF-KILL:d' \Option-d
+               e ':^end ifinfo:d' \Option-d
+               e ':^@c:d' \Option-d
+               e 's:{.\Option-x,,:{:' \Option-d
+               e ':@noindent:d' \Option-d
+               e 's:@ : :g' \Option-d
+               e 's:^enumerate:g' \Option-d
+               e 's:^@end alphaenumerate:@end enumerate:g' \Option-d
+               "{srcdir}"ld.texinfo | \Option-d
+       {TEXI2ROFF} {TEXI2OPT} -mm | \Option-d
+       sed -e 's:---:\\(em:g' \Option-d
+       >ld.mm 
+
+# index for roff output
+ld-index.mm \Option-f  ld.mm
+       {ROFF} -mm ld.mm 2>&1 1>:dev:null | \Option-d
+               sed -e ': \Option-f  warning \Option-f :d' | \Option-d
+               texi2index >ld-index.mm
+
+# roff output (-me)
+ld.me \Option-f  "{srcdir}"ld.texinfo
+       sed -e ':\\input texinfo:d' \Option-d
+               e ':@c TEXI2ROFF-KILL:,:@c END TEXI2ROFF-KILL:d' \Option-d
+               e ':^end ifinfo:d' \Option-d
+               e ':^@c:d' \Option-d
+               e 's:{.\Option-x,,:{:' \Option-d
+               e 's:@ : :g' \Option-d
+               e 's:^enumerate:g' \Option-d
+               e 's:^@end alphaenumerate:@end enumerate:g' \Option-d
+               "{srcdir}"ld.texinfo | \Option-d
+       {TEXI2ROFF} {TEXI2OPT} -me | \Option-d
+       sed -e 's:---:\\(em:g' \Option-d
+               >>ld.me 
+
+# index for roff output
+ld-index.me \Option-f  ld.me
+       {ROFF} -me ld.me 2>&1 1>:dev:null | \Option-d
+               sed -e ': \Option-f  warning \Option-f :d' | \Option-d
+               texi2index >ld-index.me
+
+stage1 \Option-f       force
+       mkdir stage1
+       Rename -y {STAGESTUFF} {LD_PROG} stage1
+       (cd stage1 ; ln -s {LD_PROG} ld)
+
+stage2 \Option-f       force
+       mkdir stage2
+       Rename -y {STAGESTUFF} {LD_PROG} stage2
+       (cd stage2 ; ln -s {LD_PROG} ld)
+
+stage3 \Option-f       force
+       mkdir stage3
+       Rename -y {STAGESTUFF} {LD_PROG} stage3
+       (cd stage3 ; ln -s {LD_PROG} ld)
+
+against = stage2
+
+comparison \Option-f  force
+       for i in {STAGESTUFF} {LD_PROG} ; do cmp $$i {against}:$$i ; done
+
+de-stage1 \Option-f  force
+       (cd stage1 ; mv -f \Option-x ..)
+       Delete -y ld
+       rmdir stage1
+
+de-stage2 \Option-f  force
+       (cd stage2 ; mv -f \Option-x ..)
+       Delete -y ld
+       rmdir stage2
+
+de-stage3 \Option-f  force
+       (cd stage3 ; mv -f \Option-x ..)
+       Delete -y ld
+       rmdir stage3
+
+# .PHONY \Option-f  stage1 stage2 stage3 comparison de-stage1 de-stage2 de-stage3
+
+# Stuff that should be included in a distribution \Option-f 
+LDDISTSTUFF = :ldgram.c :ldgram.h :ldlex.c
+diststuff \Option-f  {LDDISTSTUFF}
+
+mostlyclean \Option-f 
+       Delete -y {STAGESTUFF} ld.?? ld.??? ldlex.[qp]
+       Delete -y ld ld1 ld2 ld3 "{o}"\Option-x.c.o "{o}"y.c.output cdtest "{o}"cdtest.c.out
+clean \Option-f  mostlyclean
+       Delete -y {LD_PROG}
+distclean \Option-f 
+       Delete -yr Makefile config.status TAGS "{s}"sysdep.h ldscripts site.exp \Option-d
+               {STAGESTUFF} ld.?? ld.??s ld.toc ld.aux "{s}"ld.log ldlex.[qp] \Option-d
+               {LD_PROG} ld ld1 ld2 ld3 "{o}"\Option-x.c.o "{o}"y.c.output cdtest "{o}"cdtest.c.out
+realclean \Option-f  clean distclean
+       Delete -y {LDDISTSTUFF}
+
+# .PHONY \Option-f  diststuff mostlyclean clean distclean realclean
+
+
+
+TAGS \Option-f 
+       etags -t "{srcdir}"\Option-x.[chly] \Option-x.[chly]
+
+
+install \Option-f  
+       {INSTALL_XFORM} ld.new {bindir}:ld
+       {INSTALL_XFORM1} "{srcdir}"ld.1 {man1dir}:ld.1
+       for f in ldscripts:\Option-x; do \Option-d
+         {INSTALL_DATA} $$f {scriptdir}:$$f ; \Option-d
+       done
+       n=`t='{program_transform_name}'; echo ld | sed -e "" $$t`; \Option-d
+         Delete -y {tooldir}:bin:ld; \Option-d
+         # ln {bindir}:$$n {tooldir}:bin:ld \Option-d
+          || {INSTALL_PROGRAM} ld.new {tooldir}:bin:ld
+
+install-info \Option-f  
+       for i in ld.info\Option-x ; do \Option-d
+               {INSTALL_DATA} $$i {infodir}:$$i ; \Option-d
+       done
+
+clean-info \Option-f 
+       Delete -y -rf \Option-x.info\Option-x
+
+# .PHONY \Option-f  install install-info clean-info
+
+# Targets to rebuild dependencies in this Makefile.
+# Have to get rid of .dep1 here so that "$?" later includes all of {CFILES}.
+
+# Dummy target to force execution of dependent targets.
+#
+force \Option-f 
+
+# .PHONY \Option-f  force
+
+Makefile \Option-f  "{srcdir}"Makefile.in {host_makefile_frag} {target_makefile_frag}
+       {SHELL} :config.status
+
+# What appears below is generated by a hacked mkdep using gcc -MM.
+
+# DO NOT DELETE THIS LINE -- mkdep uses it.
+# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
+
+"{o}"ldctor.c.o  \Option-f  "{s}"ldctor.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{INCDIR}":bfdlink.h "{s}"ld.h "{s}"ldexp.h "{s}"ldlang.h "{s}"ldmisc.h \Option-d
+  :ldgram.h "{s}"ldctor.h
+"{o}"ldemul.c.o  \Option-f  "{s}"ldemul.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{s}"config.h "{s}"ld.h "{s}"ldemul.h "{s}"ldmisc.h "{s}"ldfile.h "{s}"ldmain.h :ldemul-list.h
+"{o}"ldexp.c.o  \Option-f  "{s}"ldexp.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{INCDIR}":bfdlink.h "{s}"ld.h "{s}"ldmain.h "{s}"ldmisc.h "{s}"ldexp.h \Option-d
+  :ldgram.h "{s}"ldlang.h
+"{o}"ldfile.c.o  \Option-f  "{s}"ldfile.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{s}"ld.h "{s}"ldmisc.h "{s}"ldexp.h "{s}"ldlang.h "{s}"ldfile.h "{s}"ldmain.h "{s}"ldlex.h
+"{o}"ldlang.c.o  \Option-f  "{s}"ldlang.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{INCDIR}":bfdlink.h "{s}"ld.h "{s}"ldmain.h :ldgram.h "{s}"ldexp.h \Option-d
+  "{s}"ldlang.h "{s}"ldemul.h "{s}"ldlex.h "{s}"ldmisc.h "{s}"ldctor.h "{s}"ldfile.h
+"{o}"ldmain.c.o  \Option-f  "{s}"ldmain.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{INCDIR}":bfdlink.h "{s}"config.h "{s}"ld.h "{s}"ldmain.h "{s}"ldmisc.h \Option-d
+  "{s}"ldwrite.h :ldgram.h "{s}"ldexp.h "{s}"ldlang.h "{s}"ldemul.h "{s}"ldlex.h \Option-d
+  "{s}"ldfile.h "{s}"ldctor.h
+"{o}"ldmisc.c.o  \Option-f  "{s}"ldmisc.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{s}"ld.h "{s}"ldmisc.h "{s}"ldexp.h "{s}"ldlang.h "{s}"ldlex.h "{s}"ldmain.h "{s}"ldfile.h
+"{o}"ldver.c.o  \Option-f  "{s}"ldver.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{s}"ld.h "{s}"ldver.h "{s}"ldemul.h "{s}"ldmain.h
+"{o}"ldwrite.c.o  \Option-f  "{s}"ldwrite.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{INCDIR}":bfdlink.h "{s}"ld.h "{s}"ldexp.h "{s}"ldlang.h "{s}"ldwrite.h \Option-d
+  "{s}"ldmisc.h :ldgram.h "{s}"ldmain.h
+"{o}"lexsup.c.o  \Option-f  "{s}"lexsup.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{s}"ldlex.h "{s}"ld.h "{s}"ldexp.h :ldgram.h "{s}"ldmisc.h
+"{o}"mri.c.o  \Option-f  "{s}"mri.c ::bfd:bfd.h "{INCDIR}":ansidecl.h "{INCDIR}":obstack.h \Option-d
+  ::bfd:sysdep.h "{INCDIR}":fopen-same.h "{s}"ld.h "{s}"ldexp.h \Option-d
+  "{s}"ldlang.h "{s}"ldmisc.h "{s}"mri.h :ldgram.h
+"{o}"ldgram.c.o  \Option-f  :ldgram.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{INCDIR}":fopen-same.h \Option-d
+  "{INCDIR}":bfdlink.h "{s}"ld.h "{s}"ldexp.h "{s}"ldver.h "{s}"ldlang.h "{s}"ldemul.h \Option-d
+  "{s}"ldfile.h "{s}"ldmisc.h "{s}"ldmain.h "{s}"mri.h "{s}"ldlex.h
+"{o}"ldlex.c.o  \Option-f  :ldlex.c ::bfd:bfd.h "{INCDIR}":obstack.h \Option-d
+  "{s}"ld.h :ldgram.h "{s}"ldmisc.h "{s}"ldexp.h "{s}"ldlang.h "{s}"ldfile.h "{s}"ldlex.h
+
+# IF YOU PUT ANYTHING HERE IT WILL GO AWAY