#CYGNUS LOCAL entire file law
CONFIG2_H	= $(srcdir)/config/mips/elf.h $(srcdir)/config/mips/elf64.h $(srcdir)/config/mips/elfl64.h $(srcdir)/config/mips/mips.h $(srcdir)/config/mips/abi64.h $(srcdir)/config/mips/elfl5000.h $(srcdir)/config/mips/elfb5000.h

EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o
# Don't let CTOR_LIST end up in sdata section.
CRTSTUFF_T_CFLAGS = -G 0

# Suppress building libgcc1.a, since the MIPS compiler port is complete
# and does not need anything from libgcc1.a.
LIBGCC1 =
CROSS_LIBGCC1 =

# We must build libgcc2.a with -G 0, in case the user wants to link
# without the $gp register.
TARGET_LIBGCC2_CFLAGS = -G 0

# We want fine grained libraries, so use the new code to build the
# floating point emulation libraries.
FPBIT = fp-bit.c
DPBIT = dp-bit.c

dp-bit.c: $(srcdir)/config/fp-bit.c
	echo '#ifdef __MIPSEL__' > dp-bit.c
	echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c
	echo '#endif' >> dp-bit.c
	echo '#define US_SOFTWARE_GOFAST' >> dp-bit.c
	cat $(srcdir)/config/fp-bit.c >> dp-bit.c

fp-bit.c: $(srcdir)/config/fp-bit.c
	echo '#define FLOAT' > fp-bit.c
	echo '#ifdef __MIPSEL__' >> fp-bit.c
	echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c
	echo '#endif' >> fp-bit.c
	echo '#define US_SOFTWARE_GOFAST' >> fp-bit.c
	cat $(srcdir)/config/fp-bit.c >> fp-bit.c

MULTILIB_OPTIONS = EL/EB mabi=32/mabi=o64/mabi=eabi mips2/mips4 mlong32/mlong64
MULTILIB_DIRNAMES = el eb o32 o64 eabi mips2 mips4 long32 long64
MULTILIB_MATCHES = EL=mel EB=meb 
MULTILIB_EXCEPTIONS = *mabi=32*mips4* *mabi=32*mlong64* *mabi=o64*mips2* *mabi=o64*mlong64*  
MULTILIB_REDUNDANT_DIRS = \
long64=. \
mips2/long32=mips2 \
o32/mips2=o32 \
o32/long32=o32 \
o32/mips2/long32=o32 \
o64/long32=o64 \
eb/long64=eb \
eb/mips2/long32=eb/mips2 \
eb/o32/mips2=eb/o32 \
eb/o32/long32=eb/o32 \
eb/o32/mips2/long32=eb/o32 \
eb/o64/long32=eb/o64
MULTILIB_DONT_BUILD_DIRS = 

LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib

# Add additional dependencies to recompile selected modules whenever the
# tm.h file changes.  The files compiled are:
#
#	gcc.c		(*_SPEC changes)
#	toplev.c	(new switches + assembly output changes)
#	sdbout.c	(debug format changes)
#	dbxout.c	(debug format changes)
#	dwarfout.c	(debug format changes)
#	final.c		(assembly output changes)
#	varasm.c	(assembly output changes)
#	cse.c		(cost functions)
#	insn-output.c	(possible ifdef changes in tm.h)
#	regclass.c	(fixed/call used register changes)
#	cccp.c		(new preprocessor macros, -v version #)
#	explow.c	(GO_IF_LEGITIMATE_ADDRESS)
#	recog.c		(GO_IF_LEGITIMATE_ADDRESS)
#	reload.c	(GO_IF_LEGITIMATE_ADDRESS)

gcc.o: $(CONFIG2_H)
toplev.o: $(CONFIG2_H)
sdbout.o: $(CONFIG2_H)
dbxout.o: $(CONFIG2_H)
dwarfout.o: $(CONFIG2_H)
final.o: $(CONFIG2_H)
varasm.o: $(CONFIG2_H)
cse.o: $(CONFIG2_H)
insn-output.o: $(CONFIG2_H)
regclass.o: $(CONFIG2_H)
cccp.o: $(CONFIG2_H)
explow.o: $(CONFIG2_H)
recog.o: $(CONFIG2_H)
reload.o: $(CONFIG2_H)
