# Makefile for the GNU linker ld (version 2)
-# Copyright (C) 1989, 90, 91, 92, 93, 1994 Free Software Foundation, Inc.
+# Copyright (C) 1989, 90, 91, 92, 93, 94, 95, 1996
+# Free Software Foundation, Inc.
# This file is part of GNU ld.
#
# 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.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-srcdir = .
+VPATH = @srcdir@
+srcdir = @srcdir@
objdir = .
-prefix = /usr/local
+target_alias = @target_alias@
+prefix = @prefix@
-program_transform_name =
-exec_prefix = $(prefix)
+program_transform_name = @program_transform_name@
+exec_prefix = @exec_prefix@
bindir = $(exec_prefix)/bin
libdir = $(exec_prefix)/lib
tooldir = $(exec_prefix)/$(target_alias)
AR = ar
AR_FLAGS = qv
-CFLAGS = -g
+CC = @CC@
+CFLAGS = @CFLAGS@
+HLDFLAGS = @HLDFLAGS@
+RPATH_ENVVAR = @RPATH_ENVVAR@
MAKEINFO = makeinfo
TEXI2DVI = texi2dvi
RANLIB = ranlib
-CC_FOR_BUILD=$(CC)
BISON = `if [ -f ../bison/bison ] ; then echo ../bison/bison -y -L../bison/bison ; else echo bison -y ; fi`
LEX = `if [ -f ../flex/flex ] ; then echo ../flex/flex ; else echo flex ; fi`
+EMUL = @EMUL@
+EMULATION_OFILES = @EMULATION_OFILES@
+
# 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:usr/lib:/usr/local/lib, unless building
+# (The default is usually /lib:/usr/lib:/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: LIB_PATH=/lib:/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 = $(srcdir)/..
BFDDIR = $(BASEDIR)/bfd
INCDIR = $(BASEDIR)/include
ROFF = groff
#stuff for self hosting (can be overridden in config file).
-HOSTING_CRT0 = /lib/crt0.o
-HOSTING_LIBS = `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else gcc -print-libgcc-file-name; fi` -lc
+HOSTING_CRT0 = @HOSTING_CRT0@
+HOSTING_LIBS = @HOSTING_LIBS@
HOSTING_EMU = -m $(EMUL)
-CXX = `if [ -f ../gcc/xgcc ] ; then \
- echo ../gcc/xgcc -B../gcc/; \
- else echo gcc; \
- fi`
-CXXFLAGS = -fgnu-linker
-
+# These were used by `make check-cdtest'
+#
+#CXX = `if [ -f ../gcc/xgcc ] ; then \
+# echo ../gcc/xgcc -B../gcc/; \
+# else echo gcc; \
+# fi`
+#CXXFLAGS = -fgnu-linker
+#
# FIX_ME: using ../gcc/xgcc breaks the cdtest.
-CXX = g++
+#CXX = g++
# Setup the testing framework, if you have one
-EXPECT = `if [ -f $${rootme}/../../expect/expect ] ; then \
- echo $${rootme}/../../expect/expect ; \
- else echo expect ; fi`
+EXPECT = `if [ -f $$r/../expect/expect ] ; \
+ then echo $$r/../expect/expect ; \
+ else echo expect ; fi`
+
+RUNTEST = `if [ -f $${srcroot}/../dejagnu/runtest ] ; \
+ then echo $${srcroot}/../dejagnu/runtest ; \
+ else echo runtest ; fi`
-RUNTEST = `if [ -f $${srcdir}/../../dejagnu/runtest ] ; then \
- echo $${srcdir}/../../dejagnu/runtest ; \
- else echo runtest ; fi`
RUNTESTFLAGS =
-RUNTEST_CC = `if [ -f ../gcc/xgcc ] ; then \
- echo ../gcc/xgcc -B../gcc/; \
- else echo gcc; \
- fi`
-RUNTEST_CFLAGS = $(CFLAGS)
-RUNTEST_CXX = `if [ -f ../gcc/xgcc ] ; then \
- echo ../gcc/xgcc -B../gcc/; \
- else echo gcc; \
- fi`
-# FIX_ME: using ../gcc/xgcc breaks the cdtest.
-RUNTEST_CXX = $(CXX)
-RUNTEST_CXXFLAGS = $(CXXFLAGS)
+
+CC_FOR_TARGET = ` \
+ if [ -f $$r/../gcc/xgcc ] ; then \
+ if [ -f $$r/../newlib/Makefile ] ; then \
+ echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
+ else \
+ echo $$r/../gcc/xgcc -B$$r/../gcc/; \
+ fi; \
+ else \
+ if [ "@host@" = "@target@" ] ; then \
+ echo $(CC); \
+ else \
+ echo gcc | sed '$(program_transform_name)'; \
+ fi; \
+ fi`
+
+CXX = gcc
+CXX_FOR_TARGET = ` \
+ if [ -f $$r/../gcc/xgcc ] ; then \
+ if [ -f $$r/../newlib/Makefile ] ; then \
+ echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
+ else \
+ echo $$r/../gcc/xgcc -B$$r/../gcc/; \
+ fi; \
+ else \
+ if [ "@host@" = "@target@" ] ; then \
+ echo $(CXX); \
+ else \
+ echo gcc | sed '$(program_transform_name)'; \
+ fi; \
+ fi`
# go directly to ld.new in case this ld isn't capable of
# linking native object on this host. It can be renamed on
all: $(LD_PROG)
.PHONY: all
-### Host, target, and site specific Makefile fragments come in here.
-####
-
LINTFLAGS = $(INCLUDES) $(EXTRA_DEF)
-# The .cc suffix is used by `make check'.
+# The .cc suffix was used by `make check-cdtest'.
.SUFFIXES: .y $(SUFFIXES) .cc
# Suppress smart makes who think they know how to automake Yacc files
.y.c:
-# This rule is used for the check-cdtest target.
-.cc.o:
- $(CXX) -c -I$(srcdir) $(CXXFLAGS) $(CFLAGS) $<
+# This rule was used for the check-cdtest target.
+#.cc.o:
+# $(CXX) -c -I$(srcdir) $(CXXFLAGS) $(CFLAGS) $<
-ALL_CFLAGS = $(INCLUDES) $(HDEFINES) $(TDEFINES) $(CDEFINES) $(CFLAGS)
+ALL_CFLAGS = $(INCLUDES) @HDEFINES@ $(CFLAGS)
.c.o:
$(CC) -c $(ALL_CFLAGS) $<
-# for self hosting
-BFDLIB = ../bfd/libbfd.a
+BFDDEP = ../bfd/libbfd.a
+BFDLIB = @BFDLIB@
LIBIBERTY = ../libiberty/libiberty.a
-ALL_EMULATIONS = elnk960.o esun3.o ei386aout.o ego32.o evsta.o \
- em88kbcs.o ea29k.o enews.o ehp300bsd.o ehp3hpux.o \
- eh8300.o eh8300h.o eebmon29k.o esun4.o egld960.o \
- em68kcoff.o est2000.o esa29200.o ei386mach.o \
- evanilla.o ei386coff.o ez8ksim.o emipslit.o ei386bsd.o \
- emipsbig.o emipsbsd.o emipsidt.o evax.o eh8500.o \
- eh8500b.o eh8500s.o eh8500c.o eh8500m.o \
- ehppaelf.o emipsidtl.o esh.o eelf_i386.o ealpha.o \
- ei386lynx.o em68klynx.o esparclynx.o ecoff_sparc.o \
- eelf32ppc.o ei386go32.o em68kaout.o ei386linux.o \
- eelf32_sparc.o eelf64_sparc.o
+ALL_EMULATIONS = ea29k.o ealpha.o earmaoutl.o earmaoutb.o \
+ ecoff_sparc.o eebmon29k.o \
+ eelf32_sparc.o eelf32bmip.o eelf32lmip.o eelf32ppc.o eelf32lppc.o \
+ eelf64_sparc.o eelf_i386.o egld960.o ego32.o eh8300.o \
+ eh8300h.o eh8500.o eh8500b.o eh8500c.o eh8500m.o eh8500s.o \
+ ehp300bsd.o ehp3hpux.o ehppaelf.o ei386aout.o ei386bsd.o \
+ ei386coff.o ei386go32.o ei386linux.o ei386lynx.o ei386mach.o \
+ ei386nbsd.o ei386nw.o elnk960.o em68k4knbsd.o em68kaout.o em68kaux.o \
+ em68kcoff.o em68kelf.o em68klynx.o em68knbsd.o em88kbcs.o emipsbig.o \
+ emipsbsd.o emipsidt.o emipsidtl.o emipslit.o enews.o ens32knbsd.o \
+ eppcnw.o eriscix.o esa29200.o eshl.o esh.o esparclynx.o esparcnbsd.o \
+ est2000.o esun3.o esun4.o evanilla.o evax.o evsta.o \
+ ez8001.o ez8002.o ei386pe.o earmpe.o eelf32b4300.o eelf32l4300.o \
+ eaixppc.o eaixrs6.o eppcmacos.o edelta68.o eppcpe.o em68kpsos.o
CFILES = ldctor.c ldemul.c ldexp.c ldfile.c ldlang.c \
ldmain.c ldmisc.c ldver.c ldwrite.c lexsup.c \
info: ld.info
.PHONY: info
-ldgram.h ldgram.c: ldgram.y
+ldgram.c: ldgram.y
$(BISON) $(BISONFLAGS) -d $(srcdir)/ldgram.y
mv -f y.tab.c ldgram.c
mv -f y.tab.h ldgram.h
-# EMUL is the name of a file in the emulparams subdir, without the .sh.
+# Separate from ldgram.c so that a parallel make doesn't try to build
+# both ldgram.c and ldgram.h simultaneously.
+ldgram.h: ldgram.c
+
ldmain.o: ldmain.c config.status
- if [ -z "$(EMUL)" ] ; then \
- echo "you must set a default emulation" 1>&2 ; \
- exit 1 ; \
- else \
- $(CC) -c $(INCLUDES) $(HDEFINES) $(TDEFINES) $(CDEFINES) -DDEFAULT_EMULATION='"$(EMUL)"' -DSCRIPTDIR='"$(scriptdir)"' $(CFLAGS) $< ; \
- fi
+ $(CC) -c -DDEFAULT_EMULATION='"$(EMUL)"' -DSCRIPTDIR='"$(scriptdir)"' $(ALL_CFLAGS) $<
ldemul-list.h: Makefile
(echo "/* This file is automatically generated. DO NOT EDIT! */";\
# These all start with e so 'make clean' can find them.
-GENSCRIPTS = $(SHELL) $(srcdir)/genscripts.sh ${srcdir} ${libdir} ${host_alias} ${target_alias} ${EMUL} "$(NATIVE_LIB_DIRS)"
+GENSCRIPTS = $(SHELL) $(srcdir)/genscripts.sh ${srcdir} ${libdir} @host@ @target@ @target_alias@ ${EMUL} "@NATIVE_LIB_DIRS@"
GEN_DEPENDS = $(srcdir)/genscripts.sh $(srcdir)/emultempl/stringify.sed
+@TDIRS@
esun4.c: $(srcdir)/emulparams/sun4.sh \
$(srcdir)/emultempl/sunos.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} sun4
+ ${GENSCRIPTS} sun4 "$(tdir_sun4)"
esun3.c: $(srcdir)/emulparams/sun3.sh \
$(srcdir)/emultempl/sunos.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} sun3
+ ${GENSCRIPTS} sun3 "$(tdir_sun3)"
+earmpe.c: $(srcdir)/emulparams/armpe.sh \
+ $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} armpe "$(tdir_armpe)"
evsta.c: $(srcdir)/emulparams/vsta.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} vsta
+ ${GENSCRIPTS} vsta "$(tdir_vsta)"
ego32.c: $(srcdir)/emulparams/go32.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} go32
+ ${GENSCRIPTS} go32 "$(tdir_go32)"
enews.c: $(srcdir)/emulparams/news.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} news
+ ${GENSCRIPTS} news "$(tdir_news)"
evax.c: $(srcdir)/emulparams/vax.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} vax
+ ${GENSCRIPTS} vax "$(tdir_vax)"
ehp300bsd.c: $(srcdir)/emulparams/hp300bsd.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} hp300bsd
+ ${GENSCRIPTS} hp300bsd "$(tdir_hp300bsd)"
ehp3hpux.c: $(srcdir)/emulparams/hp3hpux.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} hp3hpux
+ ${GENSCRIPTS} hp3hpux "$(tdir_hp3hpux)"
+ei386pe.c: $(srcdir)/emulparams/i386pe.sh \
+ $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} i386pe "$(tdir_i386pe)"
+eppcpe.c: $(srcdir)/emulparams/ppcpe.sh \
+ $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/ppcpe.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} ppcpe "$(tdir_ppcpe)"
ehppaelf.c: $(srcdir)/emulparams/hppaelf.sh \
$(srcdir)/emultempl/hppaelf.em $(srcdir)/scripttempl/hppaelf.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} hppaelf
+ ${GENSCRIPTS} hppaelf "$(tdir_hppaelf)"
ei386aout.c: $(srcdir)/emulparams/i386aout.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386aout
+ ${GENSCRIPTS} i386aout "$(tdir_i386aout)"
ei386go32.c: $(srcdir)/emulparams/i386go32.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386go32.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386go32
+ ${GENSCRIPTS} i386go32 "$(tdir_i386go32)"
ei386mach.c: $(srcdir)/emulparams/i386mach.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386mach
+ ${GENSCRIPTS} i386mach "$(tdir_i386mach)"
+ei386moss.c: $(srcdir)/emulparams/i386moss.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} i386moss "$(tdir_i386moss)"
+ei386msdos.c: $(srcdir)/emulparams/i386msdos.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386msdos.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} i386msdos "$(tdir_i386msdos)"
eebmon29k.c: $(srcdir)/emulparams/ebmon29k.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/ebmon29k.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} ebmon29k
+ ${GENSCRIPTS} ebmon29k "$(tdir_ebmon29k)"
esa29200.c: $(srcdir)/emulparams/sa29200.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sa29200.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} sa29200
+ ${GENSCRIPTS} sa29200 "$(tdir_sa29200)"
ea29k.c: $(srcdir)/emulparams/a29k.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/a29k.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} a29k
+ ${GENSCRIPTS} a29k "$(tdir_a29k)"
em88kbcs.c: $(srcdir)/emulparams/m88kbcs.sh \
$(srcdir)/emultempl/m88kbcs.em $(srcdir)/scripttempl/m88kbcs.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} m88kbcs
+ ${GENSCRIPTS} m88kbcs "$(tdir_m88kbcs)"
eh8300.c: $(srcdir)/emulparams/h8300.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8300
+ ${GENSCRIPTS} h8300 "$(tdir_h8300)"
eh8300h.c: $(srcdir)/emulparams/h8300h.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300h.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8300h
+ ${GENSCRIPTS} h8300h "$(tdir_h8300h)"
eh8500.c: $(srcdir)/emulparams/h8500.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8500
+ ${GENSCRIPTS} h8500 "$(tdir_h8500)"
eh8500b.c: $(srcdir)/emulparams/h8500b.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500b.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8500b
+ ${GENSCRIPTS} h8500b "$(tdir_h8500b)"
eh8500c.c: $(srcdir)/emulparams/h8500c.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500c.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8500c
+ ${GENSCRIPTS} h8500c "$(tdir_h8500c)"
eh8500m.c: $(srcdir)/emulparams/h8500m.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500m.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8500m
+ ${GENSCRIPTS} h8500m "$(tdir_h8500m)"
eh8500s.c: $(srcdir)/emulparams/h8500s.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500s.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} h8500s
+ ${GENSCRIPTS} h8500s "$(tdir_h8500s)"
esh.c: $(srcdir)/emulparams/sh.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sh.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} sh
+ ${GENSCRIPTS} sh "$(tdir_sh)"
+eshl.c: $(srcdir)/emulparams/shl.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sh.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} shl "$(tdir_shl)"
est2000.c: $(srcdir)/emulparams/st2000.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/st2000.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} st2000
-ez8ksim.c: $(srcdir)/emulparams/z8ksim.sh \
- $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/z8ksim.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} z8ksim
+ ${GENSCRIPTS} st2000 "$(tdir_st2000)"
evanilla.c: $(srcdir)/emulparams/vanilla.sh \
$(srcdir)/emultempl/vanilla.em $(srcdir)/scripttempl/vanilla.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} vanilla
+ ${GENSCRIPTS} vanilla "$(tdir_vanilla)"
elnk960.c: $(srcdir)/emulparams/lnk960.sh \
$(srcdir)/emultempl/lnk960.em $(srcdir)/scripttempl/i960.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} lnk960
+ ${GENSCRIPTS} lnk960 "$(tdir_lnk960)"
egld960.c: $(srcdir)/emulparams/gld960.sh \
$(srcdir)/emultempl/gld960.em $(srcdir)/scripttempl/i960.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} gld960
+ ${GENSCRIPTS} gld960 "$(tdir_gld960)"
egld960coff.c: $(srcdir)/emulparams/gld960coff.sh \
$(srcdir)/emultempl/gld960c.em $(srcdir)/scripttempl/i960.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} gld960coff
+ ${GENSCRIPTS} gld960coff "$(tdir_gld960coff)"
+em68kaux.c: $(srcdir)/emulparams/m68kaux.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/m68kaux.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} m68kaux "$(tdir_m68kaux)"
em68kcoff.c: $(srcdir)/emulparams/m68kcoff.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/m68kcoff.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} m68kcoff
+ ${GENSCRIPTS} m68kcoff "$(tdir_m68kcoff)"
+em68kelf.c: $(srcdir)/emulparams/m68kelf.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} m68kelf "$(tdir_m68kelf)"
em68klynx.c: $(srcdir)/emulparams/m68klynx.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/m68klynx.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} m68klynx
+ ${GENSCRIPTS} m68klynx "$(tdir_m68klynx)"
ei386coff.c: $(srcdir)/emulparams/i386coff.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386coff.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386coff
+ ${GENSCRIPTS} i386coff "$(tdir_i386coff)"
ei386lynx.c: $(srcdir)/emulparams/i386lynx.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386lynx.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386lynx
+ ${GENSCRIPTS} i386lynx "$(tdir_i386lynx)"
emipslit.c: $(srcdir)/emulparams/mipslit.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} mipslit
+ ${GENSCRIPTS} mipslit "$(tdir_mipslit)"
ei386bsd.c: $(srcdir)/emulparams/i386bsd.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386bsd
+ ${GENSCRIPTS} i386bsd "$(tdir_i386bsd)"
emipsbig.c: $(srcdir)/emulparams/mipsbig.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} mipsbig
+ ${GENSCRIPTS} mipsbig "$(tdir_mipsbig)"
emipsbsd.c: $(srcdir)/emulparams/mipsbsd.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/mipsbsd.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} mipsbsd
+ ${GENSCRIPTS} mipsbsd "$(tdir_mipsbsd)"
emipsidt.c: $(srcdir)/emulparams/mipsidt.sh \
- $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} mipsidt
+ $(srcdir)/emultempl/mipsecoff.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} mipsidt "$(tdir_mipsidt)"
emipsidtl.c: $(srcdir)/emulparams/mipsidtl.sh \
- $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} mipsidtl
+ $(srcdir)/emultempl/mipsecoff.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} mipsidtl "$(tdir_mipsidtl)"
eelf_i386.c: $(srcdir)/emulparams/elf_i386.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf_i386
-eelf32mipb.c: $(srcdir)/emulparams/elf32mipb.sh \
- $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf32mipb
+ ${GENSCRIPTS} elf_i386 "$(tdir_elf_i386)"
+eelf32bmip.c: $(srcdir)/emulparams/elf32bmip.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elfmips.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} elf32bmip "$(tdir_elf32bmip)"
+eelf32lmip.c: $(srcdir)/emulparams/elf32lmip.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elfmips.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} elf32lmip "$(tdir_elf32lmip)"
+eelf32b4300.c: $(srcdir)/emulparams/elf32b4300.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} elf32b4300 "$(tdir_elf32b4300)"
+eelf32l4300.c: $(srcdir)/emulparams/elf32l4300.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} elf32l4300 "$(tdir_elf32l4300)"
ealpha.c: $(srcdir)/emulparams/alpha.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/alpha.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} alpha
+ ${GENSCRIPTS} alpha "$(tdir_alpha)"
ecoff_sparc.c: $(srcdir)/emulparams/coff_sparc.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sparccoff.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} coff_sparc
+ ${GENSCRIPTS} coff_sparc "$(tdir_coff_sparc)"
esparclynx.c: $(srcdir)/emulparams/sparclynx.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sparclynx.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} sparclynx
+ ${GENSCRIPTS} sparclynx "$(tdir_sparclynx)"
eelf32ppc.c: $(srcdir)/emulparams/elf32ppc.sh \
- $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf32ppc
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elfppc.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} elf32ppc "$(tdir_elf32ppc)"
+eelf32lppc.c: $(srcdir)/emulparams/elf32lppc.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elfppc.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} elf32lppc "$(tdir_elf32lppc)"
+eriscix.c: $(srcdir)/emulparams/riscix.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} riscix "$(tdir_riscix)"
em68kaout.c: $(srcdir)/emulparams/m68kaout.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} m68kaout
+ ${GENSCRIPTS} m68kaout "$(tdir_m68kaout)"
ei386linux.c: $(srcdir)/emulparams/i386linux.sh \
$(srcdir)/emultempl/linux.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} i386linux
+ ${GENSCRIPTS} i386linux "$(tdir_i386linux)"
eelf32_sparc.c: $(srcdir)/emulparams/elf32_sparc.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf32_sparc
+ ${GENSCRIPTS} elf32_sparc "$(tdir_elf32_sparc)"
eelf64_sparc.c: $(srcdir)/emulparams/elf64_sparc.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} elf64_sparc
+ ${GENSCRIPTS} elf64_sparc "$(tdir_elf64_sparc)"
epc532machaout.c: $(srcdir)/emulparams/pc532machaout.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} pc532machaout
+ ${GENSCRIPTS} pc532machaout "$(tdir_pc532machaout)"
+
+ew65.c: $(srcdir)/emulparams/w65.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/w65.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} w65 "$(tdir_w65)"
-enetbsd532.c: $(srcdir)/emulparams/netbsd532.sh \
+eppcmacos.c: $(srcdir)/emulparams/ppcmacos.sh \
+ $(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} ppcmacos "$(tdir_ppcmacos)"
+
+ei386nw.c: $(srcdir)/emulparams/i386nw.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/nw.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} i386nw "$(tdir_i386nw)"
+eppcnw.c: $(srcdir)/emulparams/ppcnw.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/nw.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} ppcnw "$(tdir_ppcnw)"
+
+ei386nbsd.c: $(srcdir)/emulparams/i386nbsd.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} i386nbsd "$(tdir_i386nbsd)"
+em68k4knbsd.c: $(srcdir)/emulparams/m68k4knbsd.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
- ${GENSCRIPTS} netbsd532
+ ${GENSCRIPTS} m68k4knbsd "$(tdir_m68k4knbsd)"
+em68knbsd.c: $(srcdir)/emulparams/m68knbsd.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} m68knbsd "$(tdir_m68knbsd)"
+em68kpsos.c: $(srcdir)/emulparams/m68kpsos.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/psos.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} m68kpsos "$(tdir_m68kpsos)"
+ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} ns32knbsd "$(tdir_ns32knbsd)"
+esparcnbsd.c: $(srcdir)/emulparams/sparcnbsd.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} sparcnbsd "$(tdir_sparcnbsd)"
+earmaoutl.c: $(srcdir)/emulparams/armaoutl.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armaout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} armaoutl "$(tdir_armaoutl)"
+earmaoutb.c: $(srcdir)/emulparams/armaoutb.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armaout.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} armaoutb "$(tdir_armaoutb)"
+earmcoff.c: $(srcdir)/emulparams/armcoff.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armcoff.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} armcoff "$(tdir_armcoff)"
+ez8001.c: $(srcdir)/emulparams/z8001.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/z8000.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} z8001 "$(tdir_z8001)"
+ez8002.c: $(srcdir)/emulparams/z8002.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/z8000.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} z8002 "$(tdir_z8002)"
+eaixppc.c: $(srcdir)/emulparams/aixppc.sh \
+ $(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} aixppc "$(tdir_aixppc)"
+eaixrs6.c: $(srcdir)/emulparams/aixrs6.sh \
+ $(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} aixrs6 "$(tdir_aixrs6)"
+edelta68.c: $(srcdir)/emulparams/delta68.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/delta68.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} delta68 "$(tdir_delta68)"
+# start-sanitize-arc
+earcelf.c: $(srcdir)/emulparams/arcelf.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} arcelf "$(tdir_arcelf)"
+# end-sanitize-arc
+# start-sanitize-rce
+erce.c: $(srcdir)/emulparams/rce.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/rce.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} rce "$(tdir_rce)"
+# end-sanitize-rce
-$(LD_PROG): $(OFILES) $(BFDLIB) $(LIBIBERTY)
- $(CC) $(CFLAGS) $(LDFLAGS) -o $(LD_PROG) $(OFILES) $(BFDLIB) $(LIBIBERTY) $(EXTRALIBS)
+$(LD_PROG): $(OFILES) $(BFDDEP) $(LIBIBERTY)
+ $(CC) $(HLDFLAGS) $(CFLAGS) $(LDFLAGS) -o $(LD_PROG) $(OFILES) $(BFDLIB) $(LIBIBERTY) $(EXTRALIBS)
# The generated emulation files mostly have the same dependencies.
-$(EMULATION_OFILES): ../bfd/bfd.h ../bfd/sysdep.h $(INCDIR)/bfdlink.h \
- ld.h ldmain.h ldemul.h ldfile.h ldmisc.h ldexp.h ldlang.h config.h \
- ldctor.h ldexp.h ldlang.h
+$(EMULATION_OFILES): ../bfd/bfd.h sysdep.h config.h $(INCDIR)/bfdlink.h \
+ ld.h ldmain.h ldemul.h ldfile.h ldmisc.h ldexp.h ldlang.h \
+ ldctor.h ldexp.h ldlang.h ldgram.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: as there
-# was in the past with loop.o and flow.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: ./config.status Makefile
- @if [ -d $(testdir) ]; then true; else mkdir $(testdir); fi
@echo "Making a new config file..."
@rm -f ./tmp?
@touch site.exp
@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 "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@" >> ./tmp0
+ @echo "set target_triplet @target@" >> ./tmp0
@echo "# DIRECTORY INFO" >> ./tmp0
@echo "set objdir `pwd`" >> ./tmp0
- @echo "set tmpdir `cd $(testdir); pwd`" >> ./tmp0
@echo "" >> ./tmp0
- @echo "# LD DEPENDANCIES" >> ./tmp0
+ @echo "# LD DEPENDENCIES" >> ./tmp0
@echo "set OFILES \"$(OFILES)\"" >> ./tmp0
@echo "set BFDLIB \"$(BFDLIB)\"" >> ./tmp0
@echo "set LIBIBERTY \"$(LIBIBERTY)\"" >> ./tmp0
-@rm -f ./tmp?
check: site.exp
- @if [ $(host_canonical) = $(target_canonical) ]; then \
- rootme=`pwd`; export rootme; \
- srcdir=${srcdir} ; export srcdir ; \
- EXPECT=${EXPECT} ; export EXPECT ; \
- if [ -f $${rootme}/../expect/expect ] ; then \
- TCL_LIBRARY=$${srcdir}/../tcl/library ; \
- export TCL_LIBRARY ; fi ; \
- $(RUNTEST) --tool ld \
- --srcdir $(srcdir)/testsuite $(RUNTESTFLAGS) \
- CC="$(RUNTEST_CC)" CFLAGS="$(RUNTEST_CFLAGS)" \
- CXX="$(RUNTEST_CXX)" CXXFLAGS="$(RUNTEST_CXXFLAGS)" ;\
- if [ $$? != 0 ]; then exit 1; else true; fi ;\
- else \
- echo No cross-linker tests yet. ;\
- fi
+ r=`pwd`; export r; \
+ srcroot=`cd ${srcdir}; pwd` ; export srcroot ; \
+ EXPECT=${EXPECT} ; export EXPECT ; \
+ $(RPATH_ENVVAR)=$$r/../bfd:$$r/../opcodes:$$$(RPATH_ENVVAR); \
+ export $(RPATH_ENVVAR); \
+ if [ -f $$r/../expect/expect ] ; then \
+ TCL_LIBRARY=$${srcroot}/../tcl/library ; \
+ export TCL_LIBRARY ; \
+ else true ; fi ; \
+ $(RUNTEST) --tool ld --srcdir $(srcdir)/testsuite $(RUNTESTFLAGS) \
+ CC="$(CC_FOR_TARGET)" CFLAGS="$(CFLAGS)" \
+ CXX="$(CXX_FOR_TARGET)" CXXFLAGS="$(CXXFLAGS)" \
+ CC_FOR_HOST="$(CC)" CFLAGS_FOR_HOST="$(CFLAGS)"
installcheck:
.PHONY: check installcheck
# Rules for testing by relinking ld itself.
+# A similar test is in the testsuite. This target is for ease of use
+# when porting ld.
ld-partial.o: ld.new
./ld.new $(HOSTING_EMU) -o ld-partial.o -r $(OFILES)
.PHONY: bootstrap
# A test program for C++ constructors and destructors.
-
-cdtest: cdtest-main.o cdtest-bar.o cdtest-foo.o ld.new
- ./ld.new $(HOSTING_EMU) -o cdtest $(HOSTING_CRT0) \
- cdtest-main.o cdtest-bar.o cdtest-foo.o $(HOSTING_LIBS)
-
-cdtest.out: cdtest
- ./cdtest > cdtest.tmp
- mv cdtest.tmp cdtest.out
-
-cdtest-ur.o: cdtest-main.o cdtest-bar.o cdtest-foo.o ld.new
- ./ld.new $(HOSTING_EMU) -o cdtest-ur.o -Ur cdtest-main.o \
- cdtest-bar.o cdtest-foo.o
-
-cdtest-ur: cdtest-ur.o
- ./ld.new $(HOSTING_EMU) -o cdtest-ur $(HOSTING_CRT0) cdtest-ur.o \
- $(HOSTING_LIBS)
-
-cdtest-ur.out: cdtest-ur
- ./cdtest-ur > cdtest-ur.tmp
- mv cdtest-ur.tmp cdtest-ur.out
-
-check-cdtest: cdtest.out cdtest-ur.out $(srcdir)/cdtest.exp
- diff $(srcdir)/cdtest.exp cdtest.out
- diff $(srcdir)/cdtest.exp cdtest-ur.out
-
-.PHONY: check-cdtest
+# This test is now in the testsuite.
+#
+#cdtest: cdtest-main.o cdtest-bar.o cdtest-foo.o ld.new
+# ./ld.new $(HOSTING_EMU) -o cdtest $(HOSTING_CRT0) \
+# cdtest-main.o cdtest-bar.o cdtest-foo.o $(HOSTING_LIBS)
+#
+#cdtest.out: cdtest
+# ./cdtest > cdtest.tmp
+# mv cdtest.tmp cdtest.out
+#
+#cdtest-ur.o: cdtest-main.o cdtest-bar.o cdtest-foo.o ld.new
+# ./ld.new $(HOSTING_EMU) -o cdtest-ur.o -Ur cdtest-main.o \
+# cdtest-bar.o cdtest-foo.o
+#
+#cdtest-ur: cdtest-ur.o
+# ./ld.new $(HOSTING_EMU) -o cdtest-ur $(HOSTING_CRT0) cdtest-ur.o \
+# $(HOSTING_LIBS)
+#
+#cdtest-ur.out: cdtest-ur
+# ./cdtest-ur > cdtest-ur.tmp
+# mv cdtest-ur.tmp cdtest-ur.out
+#
+#check-cdtest: cdtest.out cdtest-ur.out $(srcdir)/cdtest.exp
+# diff $(srcdir)/cdtest.exp cdtest.out
+# diff $(srcdir)/cdtest.exp cdtest-ur.out
+#
+#.PHONY: check-cdtest
# END OF CHECK TARGETS
# Stuff that should be included in a distribution:
LDDISTSTUFF = ldgram.c ldgram.h ldlex.c
-diststuff: $(LDDISTSTUFF)
+diststuff: $(LDDISTSTUFF) info
mostlyclean:
- -rm -f $(STAGESTUFF) ld.?? ld.??? ldlex.[qp]
+ -rm -f $(STAGESTUFF) ld.?? ld.??? ldlex.[qp] config.log
-rm -f ld ld1 ld2 ld3 *.o y.output cdtest cdtest.out cdtest.tmp
-rm -f cdtest-ur cdtest-ur.out cdtest-ur.tmp
- -rm -f $(GENERATED_CFILES) $(GENERATED_HFILES)
+ -rm -f ldemul-list.h
-rm -fr tmpdir
clean: mostlyclean
-rm -f $(LD_PROG) configdoc.texi
-distclean:
- -rm -fr Makefile config.status TAGS sysdep.h ldscripts site.exp site.bak \
- $(STAGESTUFF) ld.?? ld.??s ld.toc ld.aux ld.log ldlex.[qp] \
- $(LD_PROG) ld ld1 ld2 ld3 *.o y.output cdtest cdtest.out \
- configdoc.texi tmpdir
-realclean: clean distclean
- -rm -f $(LDDISTSTUFF)
+distclean: clean
+ -rm -f Makefile config.status TAGS site.exp site.bak config.cache
+ -rm -f config.h stamp-h
+ -rm -rf ldscripts
+maintainer-clean realclean: clean distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+ -rm -f $(GENERATED_CFILES) $(GENERATED_HFILES)
+ -rm -f $(LDDISTSTUFF) *.info*
.PHONY: diststuff mostlyclean clean distclean realclean
for f in ldscripts/*; do \
$(INSTALL_DATA) $$f $(scriptdir)/$$f ; \
done
- -n=`t='$(program_transform_name)'; echo ld | sed -e "" $$t`; \
+ -n=`echo ld | sed '$(program_transform_name)'`; \
rm -f $(tooldir)/bin/ld; \
ln $(bindir)/$$n $(tooldir)/bin/ld >/dev/null 2>/dev/null \
|| $(INSTALL_PROGRAM) ld.new $(tooldir)/bin/ld
# Targets to rebuild dependencies in this Makefile.
# Have to get rid of .dep1 here so that "$?" later includes all of $(CFILES).
-.dep: dep.sed $(CFILES) $(HFILES) $(GENERATED_CFILES) $(GENERATED_HFILES)
+.dep: dep.sed $(CFILES) $(HFILES) $(GENERATED_CFILES) $(GENERATED_HFILES) config.h
rm -f .dep1
$(MAKE) DEP=$(DEP) .dep1
sed -f dep.sed <.dep1 >.dep
dep.sed: dep-in.sed config.status
sed <$(srcdir)/dep-in.sed >dep.sed \
-e 's!@INCDIR@!$(INCDIR)!' \
- -e 's!@srcdir@!$(srcdir)!'
+ -e 's!@SRCDIR@!$(srcdir)!'
dep: .dep
sed -e '/^..DO NOT DELETE THIS LINE/,$$d' < Makefile > tmp-Makefile
.PHONY: force
-Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)
- $(SHELL) ./config.status
+Makefile: Makefile.in config.status
+ CONFIG_FILES=Makefile CONFIG_HEADERS= $(SHELL) ./config.status
+
+config.h: stamp-h ; @true
+stamp-h: config.in config.status
+ CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status
+
+config.status: configure configure.host configure.tgt
+ $(SHELL) ./config.status --recheck
# 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.
-ldctor.o : ldctor.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldctor.o: ldctor.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
$(INCDIR)/bfdlink.h ld.h ldexp.h ldlang.h ldmisc.h \
ldgram.h ldmain.h ldctor.h
-ldemul.o : ldemul.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
- config.h ld.h ldemul.h ldmisc.h ldexp.h ldlang.h ldfile.h \
- ldmain.h ldemul-list.h
-ldexp.o : ldexp.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldemul.o: ldemul.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
+ ld.h ldemul.h ldmisc.h ldexp.h ldlang.h ldfile.h ldmain.h \
+ ldemul-list.h
+ldexp.o: ldexp.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
$(INCDIR)/bfdlink.h ld.h ldmain.h ldmisc.h ldexp.h \
ldgram.h ldlang.h
-ldfile.o : ldfile.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
- ld.h ldmisc.h ldexp.h ldlang.h ldfile.h ldmain.h ldgram.h \
- ldlex.h ldemul.h
-ldlang.o : ldlang.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldfile.o: ldfile.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
+ $(INCDIR)/bfdlink.h ld.h ldmisc.h ldexp.h ldlang.h \
+ ldfile.h ldmain.h ldgram.h ldlex.h ldemul.h
+ldlang.o: ldlang.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
$(INCDIR)/libiberty.h $(INCDIR)/bfdlink.h ld.h ldmain.h \
ldgram.h ldexp.h ldlang.h ldemul.h ldlex.h ldmisc.h \
ldctor.h ldfile.h
-ldmain.o : ldmain.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
- $(INCDIR)/libiberty.h $(INCDIR)/bfdlink.h config.h \
+ldmain.o: ldmain.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
+ $(INCDIR)/libiberty.h $(INCDIR)/progress.h $(INCDIR)/bfdlink.h \
ld.h ldmain.h ldmisc.h ldwrite.h ldgram.h ldexp.h ldlang.h \
ldemul.h ldlex.h ldfile.h ldctor.h
-ldmisc.o : ldmisc.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldmisc.o: ldmisc.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
ld.h ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h ldmain.h \
ldfile.h
-ldver.o : ldver.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldver.o: ldver.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
ld.h ldver.h ldemul.h ldmain.h
-ldwrite.o : ldwrite.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldwrite.o: ldwrite.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
$(INCDIR)/bfdlink.h ld.h ldexp.h ldlang.h ldwrite.h \
ldmisc.h ldgram.h ldmain.h
-lexsup.o : lexsup.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
- $(INCDIR)/getopt.h $(INCDIR)/bfdlink.h config.h ld.h \
- ldmain.h ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h \
- ldfile.h ldver.h
-mri.o : mri.c ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/obstack.h \
- ../bfd/sysdep.h $(INCDIR)/fopen-same.h ld.h ldexp.h \
+lexsup.o: lexsup.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
+ $(INCDIR)/getopt.h $(INCDIR)/bfdlink.h ld.h ldmain.h \
+ ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h ldfile.h \
+ ldver.h ldemul.h
+mri.o: mri.c ../bfd/bfd.h $(INCDIR)/ansidecl.h $(INCDIR)/obstack.h \
+ sysdep.h config.h $(INCDIR)/fopen-same.h ld.h ldexp.h \
ldlang.h ldmisc.h mri.h ldgram.h
-ldgram.o : ldgram.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
- $(INCDIR)/obstack.h ../bfd/sysdep.h $(INCDIR)/fopen-same.h \
+ldgram.o: ldgram.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/obstack.h sysdep.h config.h $(INCDIR)/fopen-same.h \
$(INCDIR)/bfdlink.h ld.h ldexp.h ldver.h ldlang.h ldemul.h \
ldfile.h ldmisc.h ldmain.h mri.h ldlex.h
-ldlex.o : ldlex.c ../bfd/bfd.h $(INCDIR)/obstack.h \
- ../bfd/sysdep.h $(INCDIR)/fopen-same.h ld.h ldgram.h \
- ldmisc.h ldexp.h ldlang.h ldfile.h ldlex.h ldmain.h
+ldlex.o: ldlex.c ../bfd/bfd.h $(INCDIR)/obstack.h sysdep.h \
+ config.h $(INCDIR)/fopen-same.h ld.h ldgram.h ldmisc.h \
+ ldexp.h ldlang.h ldfile.h ldlex.h ldmain.h
# IF YOU PUT ANYTHING HERE IT WILL GO AWAY