# Define CC and OLDCC as the same, so that the tests:
#	if [ x"$(OLDCC)" = x"$(CC)" ] ...
#
# will succeed (if OLDCC != CC, it is assumed that GCC is
# being used in secondary stage builds).  We need to pass
# the -Wf,-XNg1500 option so the compiler can compile the
# G++ file cp-parse.c.  Otherwise it complains about
# too many case statements.  The -Olimit is so the user
# can use -O2.  Down with fixed size tables!

CC		= $(OLDCC)
OPT		= -O1
OLDCC		= cc -Wf,-XNg1500,-XNh2000 -Olimit 3000 $(OPT)

# The bison output files are machine-indep,
# so different flags for a particular machine are not useful.
#BISONFLAGS	= -l

# This is so we can link collect2 running native.
CLIB		= -lmld
