# With pre-defined ld
AC_ARG_WITH(ld,
[ --with-ld arrange to use the specified ld (full pathname).],
-LD="$with_ld")
-if test x"${LD+set}" = x"set"; then
- if test ! -x "$LD"; then
- AC_MSG_WARN([cannot execute: $LD: check --with-ld or env. var. LD])
- elif test "GNU" = `$LD -v </dev/null 2>&1 | sed '1s/^GNU.*/GNU/;q'`; then
+DEFAULT_LINKER="$with_ld")
+if test x"${DEFAULT_LINKER+set}" = x"set"; then
+ if test ! -x "$DEFAULT_LINKER"; then
+ AC_MSG_WARN([cannot execute: $DEFAULT_LINKER: check --with-ld or env. var. DEFAULT_LINKER])
+ elif test "GNU" = `$DEFAULT_LINKER -v </dev/null 2>&1 | sed '1s/^GNU.*/GNU/;q'`; then
gnu_ld_flag=yes
fi
- AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$LD")
+ AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$DEFAULT_LINKER")
fi
# With GNU as
AC_ARG_WITH(as,
[ --with-as arrange to use the specified as (full pathname).],
-AS="$with_as")
-if test x"${AS+set}" = x"set"; then
- if test ! -x "$AS"; then
- AC_MSG_WARN([cannot execute: $AS: check --with-as or env. var. AS])
- elif test "GNU" = `$AS -v </dev/null 2>&1 | sed '1s/^GNU.*/GNU/;q'`; then
+DEFAULT_ASSEMBLER="$with_as")
+if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
+ if test ! -x "$DEFAULT_ASSEMBLER"; then
+ AC_MSG_WARN([cannot execute: $DEFAULT_ASSEMBLER: check --with-as or env. var. DEFAULT_ASSEMBLER])
+ elif test "GNU" = `$DEFAULT_ASSEMBLER -v </dev/null 2>&1 | sed '1s/^GNU.*/GNU/;q'`; then
gas_flag=yes
fi
- AC_DEFINE_UNQUOTED(DEFAULT_ASSEMBLER,"$AS")
+ AC_DEFINE_UNQUOTED(DEFAULT_ASSEMBLER,"$DEFAULT_ASSEMBLER")
fi
# With stabs
gxx_include_dir='${libsubdir}/include/g++'
else
topsrcdir=${srcdir}/.. . ${srcdir}/../config.if
- gxx_include_dir='${prefix}/include/g++'-${libstdcxx_interface}
+changequote(<<, >>)dnl
+ gxx_include_dir="\$(libsubdir)/\$(unlibsubdir)/..\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/[^/]*|/..|g'\`/include/g++"-${libstdcxx_interface}
+changequote([, ])dnl
fi
fi
*) AC_MSG_ERROR(bad value ${enableval} given for checking option) ;;
esac])
-# Enable use of cpplib for C.
+# Use cpplib+cppmain for the preprocessor, but don't link it with the compiler.
cpp_main=cccp
+AC_ARG_ENABLE(cpplib,
+[ --enable-cpplib use cpplib for the C preprocessor.],
+if test x$enable_cpplib != xno; then
+ cpp_main=cppmain
+fi)
+
+# Link cpplib into the compiler proper, for C/C++/ObjC.
AC_ARG_ENABLE(c-cpplib,
-[ --enable-c-cpplib Use cpplib for C and C++.],
+[ --enable-c-cpplib link cpplib directly into C and C++ compilers
+ (implies --enable-cpplib).],
if test x$enable_c_cpplib != xno; then
- extra_c_objs="${extra_c_objs} cpplib.o cppexp.o cpphash.o cpperror.o"
- extra_c_objs="${extra_c_objs} prefix.o"
- extra_cxx_objs="${extra_cxx_objs} ../cpplib.o ../cppexp.o ../cpphash.o ../cpperror.o ../prefix.o"
+ extra_c_objs="${extra_c_objs} libcpp.a"
+ extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
extra_c_flags=-DUSE_CPPLIB=1
cpp_main=cppmain
fi)
-
+
# Enable Multibyte Characters for C/C++
AC_ARG_ENABLE(c-mbchar,
-[ --enable-c-mbchar Enable multibyte characters for C and C++.],
+[ --enable-c-mbchar enable multibyte characters for C and C++.],
if test x$enable_c_mbchar != xno; then
extra_c_flags=-DMULTIBYTE_CHARS=1
fi)
# Enable Haifa scheduler.
AC_ARG_ENABLE(haifa,
-[ --enable-haifa Use the experimental scheduler.
- --disable-haifa Don't use the experimental scheduler for the
+[ --enable-haifa use the experimental scheduler.
+ --disable-haifa don't use the experimental scheduler for the
targets which normally enable it.])
# Fast fixincludes
#
# This is a work in progress...
AC_ARG_WITH(fast-fixincludes,
-[ --with-fast-fixincludes Use a faster fixinclude program. Experimental],
+[ --with-fast-fixincludes use a faster fixinclude program (experimental)],
fast_fixinc="$with_fast_fixincludes",
fast_fixinc=no)
# Enable init_priority.
AC_ARG_ENABLE(init-priority,
-[ --enable-init-priority Use attributes to assign initialization order
+[ --enable-init-priority use attributes to assign initialization order
for static objects.
- --disable-init-priority Conform to ISO C++ rules for ordering static objects
+ --disable-init-priority conform to ISO C++ rules for ordering static objects
(i.e. initialized in order of declaration). ],
if test x$enable_init_priority != xno; then
extra_c_flags=-DUSE_INIT_PRIORITY
AC_PROG_MAKE_SET
AC_MSG_CHECKING([whether a default assembler was specified])
-if test x"${AS+set}" = x"set"; then
+if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
if test x"$with_gas" = x"no"; then
- AC_MSG_RESULT([yes ($AS)])
+ AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
else
- AC_MSG_RESULT([yes ($AS - GNU as)])
+ AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
fi
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING([whether a default linker was specified])
-if test x"${LD+set}" = x"set"; then
+if test x"${DEFAULT_LINKER+set}" = x"set"; then
if test x"$with_gnu_ld" = x"no"; then
- AC_MSG_RESULT([yes ($LD)])
+ AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
else
- AC_MSG_RESULT([yes ($LD - GNU ld)])
+ AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
fi
else
AC_MSG_RESULT(no)
[#include <sys/types.h>
#include <inttypes.h>],
[intmax_t i = -1;],
- [AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H)
- gcc_cv_header_inttypes_h=yes],
+ [gcc_cv_header_inttypes_h=yes],
gcc_cv_header_inttypes_h=no)])
AC_MSG_RESULT($gcc_cv_header_inttypes_h)
+if test $gcc_cv_header_inttypes_h = yes; then
+ AC_DEFINE(HAVE_INTTYPES_H)
+fi
AC_CHECK_FUNCS(strtoul bsearch strerror putenv popen bcopy bzero bcmp \
index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
GCC_FUNC_VFPRINTF_DOPRNT
GCC_FUNC_PRINTF_PTR
+AC_FUNC_VFORK
GCC_NEED_DECLARATIONS(malloc realloc calloc free bcopy bzero bcmp \
index rindex getenv atol sbrk abort atof strerror getcwd getwd \
# On NetBSD, the headers are already okay, except for math.h.
fixincludes=fixinc.wrap
;;
- arm-*-linux-gnuaout*) # ARM GNU/Linux
+ arm*-*-linux-gnuaout*) # ARM GNU/Linux with a.out
cpu_type=arm
xmake_file=x-linux
- tm_file=arm/linux-gas.h
+ tm_file=arm/linux-aout.h
tmake_file=arm/t-linux
fixincludes=Makefile.in
gnu_ld=yes
;;
- arm-*-aout)
+ arm*-*-linux-gnu*) # ARM GNU/Linux with ELF
+ xm_file=arm/xm-linux.h
+ xmake_file=x-linux
+ case $machine in
+ armv2*-*-*)
+ tm_file=arm/linux-elf26.h
+ ;;
+ *)
+ tm_file=arm/linux-elf.h
+ ;;
+ esac
+ tmake_file="t-linux arm/t-linux"
+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
+ fixincludes=Makefile.in # Nothing to fix
+ gnu_ld=yes
+ ;;
+ arm*-*-aout)
tm_file=arm/aout.h
tmake_file=arm/t-bare
;;
+ arm*-*-elf)
+ tm_file=arm/unknown-elf.h
+ tmake_file=arm/t-arm-elf
+ ;;
c1-convex-*) # Convex C1
target_cpu_default=1
use_collect2=yes
tmake_file=i386/t-go32
gnu_ld=yes
gas=yes
+ exeext=.exe
+ case $host in
+ *pc-msdosdjgpp*)
+ target_alias=djgpp
+ ;;
+ esac
;;
changequote(,)dnl
i[34567]86-moss-msdos* | i[34567]86-*-moss*)
extra_parts="crtbegin.o crtend.o"
;;
changequote(,)dnl
+ i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
+changequote([,])dnl
+ xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
+ xm_defines="USG POSIX"
+ tm_file=i386/udk.h
+ tmake_file="i386/t-crtpic i386/t-udk"
+ xmake_file=x-svr4
+ extra_parts="crtbegin.o crtend.o"
+ fixincludes="fixinc.svr4"
+ ;;
+changequote(,)dnl
i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
changequote([,])dnl
cpu_type=i386
gcc_cv_as=
gcc_cv_as_alignment_features=
gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
-if test -x "$AS"; then
- gcc_cv_as=$AS
+if test -x "$DEFAULT_ASSEMBLER"; then
+ gcc_cv_as="$DEFAULT_ASSEMBLER"
+elif test -x "$AS"; then
+ gcc_cv_as="$AS"
elif test -x as$host_exeext; then
# Build using assembler in the current directory.
gcc_cv_as=./as$host_exeext
-elif test -f $gcc_cv_as_gas_srcdir/configure.in; then
+elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
# Single tree build which includes gas.
for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
do