local_prefix=/usr/local
fi
-gxx_include_dir=
+# Don't set gcc_gxx_include_dir to gxx_include_dir since that's only
+# passed in by the toplevel make and thus we'd get different behavior
+# depending on where we built the sources.
+gcc_gxx_include_dir=
# Specify the g++ header file directory
AC_ARG_WITH(gxx-include-dir,
[ --with-gxx-include-dir=DIR
[case "${withval}" in
yes) AC_MSG_ERROR(bad value ${withval} given for g++ include directory) ;;
no) ;;
-*) gxx_include_dir=$with_gxx_include_dir ;;
+*) gcc_gxx_include_dir=$with_gxx_include_dir ;;
esac])
-if test x${gxx_include_dir} = x; then
+if test x${gcc_gxx_include_dir} = x; then
if test x${enable_version_specific_runtime_libs} = xyes; then
- gxx_include_dir='${libsubdir}/include/g++'
+ gcc_gxx_include_dir='${libsubdir}/include/g++'
else
topsrcdir=${srcdir}/.. . ${srcdir}/../config.if
changequote(<<, >>)dnl
- gxx_include_dir="\$(libsubdir)/\$(unlibsubdir)/..\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/[^/]*|/..|g'\`/include/g++"-${libstdcxx_interface}
+ gcc_gxx_include_dir="\$(libsubdir)/\$(unlibsubdir)/..\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/[^/]*|/..|g'\`/include/g++"-${libstdcxx_interface}
changequote([, ])dnl
fi
fi
if test x$enable_c_cpplib != xno; then
extra_c_objs="${extra_c_objs} libcpp.a"
extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
- extra_c_flags=-DUSE_CPPLIB=1
+ extra_c_flags="${extra_c_flags} -DUSE_CPPLIB=1"
cpp_main=cppmain
fi)
[ --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)],
-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
- for 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
-fi)
# Enable threads
# Pass with no value to take the default
GCC_FUNC_VFPRINTF_DOPRNT
GCC_FUNC_PRINTF_PTR
+
+case "${host}" in
+*-*-uwin*)
+ # Under some versions of uwin, vfork is notoriously buggy and the test
+ # can hang configure; on other versions, vfork exists just as a stub.
+ # FIXME: This should be removed once vfork in uwin's runtime is fixed.
+ ac_cv_func_vfork_works=no
+ ;;
+esac
AC_FUNC_VFORK
GCC_NEED_DECLARATIONS(malloc realloc calloc free bcopy bzero bcmp \
index rindex getenv atol sbrk abort atof strerror getcwd getwd \
- strsignal)
+ strsignal putc_unlocked fputs_unlocked)
GCC_NEED_DECLARATIONS(getrlimit setrlimit, [
#include <sys/types.h>
host_truncate_target=
host_exeext=
+# It is relative to $prefix.
+cpp_install_dir=
+
# Decode the host machine, then the target machine.
# For the host machine, we save the xm_file variable as host_xm_file;
# then we decode the target machine and forget everything else
use_collect2=
# Set this to override the default target model.
target_cpu_default=
- # Set this to control which fixincludes program to use.
- if test x$fast_fixinc != xyes; then
- fixincludes=fixincludes
- else fixincludes=fixinc.sh ; fi
# Set this to control how the header file directory is installed.
install_headers_dir=install-headers-tar
# Set this to a non-empty list of args to pass to cpp if the target
tm_file=${cpu_type}/${cpu_type}.h
xm_file=${cpu_type}/xm-${cpu_type}.h
- # Set the default macros to define for GNU/Linux systems.
+ # Common parts for linux-gnu and openbsd systems
case $machine in
*-*-linux-gnu*)
xm_defines="HAVE_ATEXIT POSIX BSTRING"
;;
+ *-*-openbsd*)
+ tm_file=${cpu_type}/openbsd.h
+ # On OpenBSD systems, the headers are okay
+ fixincludes=Makefile.in
+ tmake_file="t-libc-ok t-openbsd"
+ # avoid surprises, always provide an xm-openbsd file
+ xm_file=${cpu_type}/xm-openbsd.h
+ if test x$enable_threads = xyes; then
+ thread_file='posix'
+ tmake_file="${tmake_file} t-openbsd-thread"
+ fi
+ ;;
esac
case $machine in
target_cpu_default="MASK_GAS"
tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe"
extra_parts="crtbegin.o crtend.o"
- fixincludes=fixinc.wrap
xmake_file=none
gas=yes gnu_ld=yes
if test x$enable_threads = xyes; then
tmake_file="t-linux alpha/t-linux alpha/t-crtbe"
extra_parts="crtbegin.o crtend.o"
xmake_file=none
- fixincludes=Makefile.in
gas=yes gnu_ld=yes
if test x$enable_threads = xyes; then
thread_file='posix'
tmake_file="alpha/t-crtbe"
extra_parts="crtbegin.o crtend.o"
xmake_file=none
- fixincludes=fixinc.wrap
gas=yes gnu_ld=yes
;;
+
+ alpha*-*-openbsd*)
+ # default x-alpha is only appropriate for dec-osf.
+ target_cpu_default="MASK_GAS"
+ xmake_file=none
+ ;;
alpha*-dec-osf*)
if test x$stabs = xyes
xmake_file=winnt/x-winnt
extra_host_objs=oldnames.o
extra_gcc_objs="spawnv.o oldnames.o"
- fixincludes=fixinc.winnt
if test x$gnu_ld != xyes
then
extra_programs=ld.exe
tm_file=alpha/vms.h
xm_file="${xm_file} alpha/xm-vms.h"
tmake_file=alpha/t-vms
- fixincludes=Makefile.in
;;
arc-*-elf*)
extra_parts="crtinit.o crtfini.o"
tm_file=arm/coff.h
tmake_file=arm/t-bare
;;
+ arm-*-vxworks*)
+ tm_file="arm/coff.h arm/vxarm.h"
+ tmake_file=arm/t-bare
+ ;;
changequote(,)dnl
arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
changequote([,])dnl
arm-semi-aout | armel-semi-aout)
tm_file=arm/semi.h
tmake_file=arm/t-semi
- fixincludes=Makefile.in # There is nothing to fix
;;
arm-semi-aof | armel-semi-aof)
tm_file=arm/semiaof.h
tmake_file=arm/t-semiaof
- fixincludes=Makefile.in # There is nothing to fix
;;
arm*-*-netbsd*)
tm_file=arm/netbsd.h
xm_file="arm/xm-netbsd.h ${xm_file}"
tmake_file="t-netbsd arm/t-netbsd"
- # On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
;;
arm*-*-linux-gnuaout*) # ARM GNU/Linux with a.out
cpu_type=arm
xmake_file=x-linux
tm_file=arm/linux-aout.h
tmake_file=arm/t-linux
- fixincludes=Makefile.in
gnu_ld=yes
;;
arm*-*-linux-gnu*) # ARM GNU/Linux with ELF
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)
c1-convex-*) # Convex C1
target_cpu_default=1
use_collect2=yes
- fixincludes=Makefile.in
;;
c2-convex-*) # Convex C2
target_cpu_default=2
use_collect2=yes
- fixincludes=Makefile.in
;;
c32-convex-*)
target_cpu_default=4
use_collect2=yes
- fixincludes=Makefile.in
;;
c34-convex-*)
target_cpu_default=8
use_collect2=yes
- fixincludes=Makefile.in
;;
c38-convex-*)
target_cpu_default=16
use_collect2=yes
- fixincludes=Makefile.in
;;
c4x-*)
cpu_type=c4x
h8300-*-*)
float_format=i32
;;
+ hppa*-*-openbsd*)
+ target_cpu_default="MASK_SNAKE"
+ tmake_file=pa/t-openbsd
+ ;;
hppa1.1-*-pro*)
tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h"
xm_file=pa/xm-papro.h
target_cpu_default="MASK_SNAKE"
tm_file="${tm_file} pa/pa-osf.h"
use_collect2=yes
- fixincludes=Makefile.in
;;
hppa1.1-*-rtems*)
tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h pa/rtems.h"
hppa1.0-*-osf*)
tm_file="${tm_file} pa/pa-osf.h"
use_collect2=yes
- fixincludes=Makefile.in
;;
hppa1.1-*-bsd*)
target_cpu_default="MASK_SNAKE"
use_collect2=yes
- fixincludes=Makefile.in
;;
hppa1.0-*-bsd*)
use_collect2=yes
- fixincludes=Makefile.in
;;
hppa1.0-*-hpux7*)
tm_file="pa/pa-oldas.h ${tm_file} pa/pa-hpux7.h"
hppa*-*-lites*)
target_cpu_default="MASK_SNAKE"
use_collect2=yes
- fixincludes=Makefile.in
;;
i370-*-mvs*)
;;
xmake_file=i386/x-sysv3
tm_file=i386/seq-sysv3.h
tmake_file=i386/t-crtstuff
- fixincludes=fixinc.ptx
extra_parts="crtbegin.o crtend.o"
install_headers_dir=install-headers-cpio
;;
tm_file=i386/seq2-sysv3.h
tmake_file=i386/t-crtstuff
extra_parts="crtbegin.o crtend.o"
- fixincludes=fixinc.ptx
install_headers_dir=install-headers-cpio
;;
changequote(,)dnl
tm_file=i386/ptx4-i.h
tmake_file=t-svr4
extra_parts="crtbegin.o crtend.o"
- fixincludes=fixinc.ptx
install_headers_dir=install-headers-cpio
;;
i386-sun-sunos*) # Sun i386 roadrunner
i[34567]86-*-freebsd*)
changequote([,])dnl
tm_file=i386/freebsd.h
- # On FreeBSD, the headers are already ok, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=i386/t-freebsd
;;
- # We are hoping OpenBSD is still close enough to NetBSD that we can
- # share the configurations.
changequote(,)dnl
- i[34567]86-*-netbsd* | i[34567]86-*-openbsd*)
+ i[34567]86-*-netbsd*)
changequote([,])dnl
tm_file=i386/netbsd.h
- # On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=t-netbsd
;;
changequote(,)dnl
+ i[34567]86-*-openbsd*)
+changequote([,])dnl
+ # Remove when the math emulator is fixed
+ # we need collect2 until our bug is fixed...
+ use_collect2=yes
+ ;;
+changequote(,)dnl
i[34567]86-*-coff*)
changequote([,])dnl
tm_file=i386/i386-coff.h
xmake_file=x-linux-aout
tmake_file="t-linux-aout i386/t-crtstuff"
tm_file=i386/linux-oldld.h
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
float_format=i386
;;
xmake_file=x-linux-aout
tmake_file="t-linux-aout i386/t-crtstuff"
tm_file=i386/linux-aout.h
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
float_format=i386
;;
tm_file=i386/linux.h
tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
float_format=i386
if test x$enable_threads = xyes; then
tm_file=i386/linux.h
tmake_file="t-linux i386/t-crtstuff"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
float_format=i386
if test x$enable_threads = xyes; then
changequote(,)dnl
i[34567]86-go32-msdos | i[34567]86-*-go32*)
changequote([,])dnl
- xm_file=i386/xm-go32.h
- tm_file=i386/go32.h
- tmake_file=i386/t-go32
+ echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
+ exit 1
;;
changequote(,)dnl
i[34567]86-pc-msdosdjgpp*)
changequote([,])dnl
- xm_file=i386/xm-go32.h
- tm_file=i386/go32.h
- tmake_file=i386/t-go32
- xmake_file=i386/x-go32
+ xm_file=i386/xm-djgpp.h
+ tm_file=i386/djgpp.h
+ tmake_file=i386/t-djgpp
+ xmake_file=i386/x-djgpp
gnu_ld=yes
gas=yes
exeext=.exe
- case $host in
- *pc-msdosdjgpp*)
+ case $host in *pc-msdosdjgpp*)
target_alias=djgpp
;;
esac
changequote([,])dnl
tm_file=i386/moss.h
tmake_file=t-libc-ok
- fixincludes=Makefile.in
gnu_ld=yes
gas=yes
;;
xm_file="xm-siglist.h xm-alloca.h ${xm_file} i386/xm-sco5.h"
xm_defines="USG SVR3"
xmake_file=i386/x-sco5
- fixincludes=fixinc.sco
install_headers_dir=install-headers-cpio
tm_file=i386/sco5.h
if test x$gas = xyes
else
tmake_file=i386/t-sco5
fi
- extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
+ extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
;;
changequote(,)dnl
i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
xm_file="${xm_file} i386/xm-sco.h"
xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX NO_SYS_SIGLIST"
xmake_file=i386/x-sco4
- fixincludes=fixinc.sco
install_headers_dir=install-headers-cpio
if test x$stabs = xyes
then
tmake_file=i386/t-sol2
extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
xmake_file=x-svr4
- case $machine in
-changequote(,)dnl
- *-*-solaris2.[0-4])
-changequote([,])dnl
- fixincludes=fixinc.svr4;;
- *)
- fixincludes=fixinc.wrap;;
- esac
if test x$enable_threads = xyes; then
thread_file='solaris'
fi
tmake_file=i386/t-crtpic
xmake_file=x-svr4
extra_parts="crtbegin.o crtend.o"
- fixincludes=fixinc.svr4
;;
changequote(,)dnl
i[34567]86-*-sysv4*) # Intel 80386's running system V.4
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+
cpu_type=i386
xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
- fixincludes=Makefile.in #Don't do it on OSF/1
if test x$stabs = xyes
then
tm_file=i386/osf1elfgdb.h
tm_file=i386/win32.h
xmake_file=i386/x-cygwin
extra_objs=winnt.o
- fixincludes=Makefile.in
if test x$enable_threads = xyes; then
thread_file='win32'
fi
tm_file=i386/cygwin.h
xmake_file=i386/x-cygwin
extra_objs=winnt.o
- fixincludes=Makefile.in
if test x$enable_threads = xyes; then
thread_file='win32'
fi
tmake_file="i386/t-cygwin i386/t-mingw32"
extra_objs=winnt.o
xmake_file=i386/x-cygwin
- fixincludes=Makefile.in
if test x$enable_threads = xyes; then
thread_file='win32'
fi
esac
;;
changequote(,)dnl
+ i[34567]86-*-uwin*)
+changequote([,])dnl
+ tm_file=i386/uwin.h
+ xm_file="${xm_file} i386/xm-uwin.h"
+ xm_defines="USG NO_STAB_H NO_SYS_SIGLIST"
+ tmake_file="i386/t-cygwin i386/t-uwin"
+ extra_objs=winnt.o
+ xmake_file=i386/x-cygwin
+ fixincludes=Makefile.in
+ if test x$enable_threads = xyes; then
+ thread_file='win32'
+ fi
+ exeext=.exe
+ ;;
+changequote(,)dnl
+ i[34567]86-*-interix*)
+changequote([,])dnl
+ tm_file=i386/interix.h
+ xm_file="${xm_file} xm-interix.h"
+ xm_defines="USG NO_SYS_SIGLIST"
+ tmake_file="i386/t-interix"
+ extra_objs=interix.o
+ xmake_file=x-interix
+ fixincludes=fixinc.interix
+ if [[ x$enable_threads = xyes ]]; then
+ thread_file='posix'
+ fi
+ if [[ x$stabs = xyes ]]; then
+ tm_file="${tm_file} dbxcoff.h"
+ fi
+ ;;
+changequote(,)dnl
i[34567]86-*-winnt3*)
changequote([,])dnl
tm_file=i386/win-nt.h
tmake_file=i386/t-winnt
extra_host_objs="winnt.o oldnames.o"
extra_gcc_objs="spawnv.o oldnames.o"
- fixincludes=fixinc.winnt
if test x$gnu_ld != xyes
then
extra_programs=ld.exe
tm_file=i386/dgux.h
tmake_file=i386/t-dgux
xmake_file=i386/x-dgux
- fixincludes=fixinc.dgux
install_headers_dir=install-headers-cpio
;;
i860-alliant-*) # Alliant FX/2800
;;
m68k*-*-netbsd*)
tm_file=m68k/netbsd.h
- # On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=t-netbsd
float_format=m68k
;;
+ m68k*-*-openbsd*)
+ float_format=m68k
+ # we need collect2 until our bug is fixed...
+ use_collect2=yes
+ ;;
m68k-*-sysv3*) # Motorola m68k's running system V.3
xm_file="xm-alloca.h ${xm_file}"
xm_defines=USG
xmake_file=x-linux
tm_file=m68k/linux-aout.h
tmake_file="t-linux-aout m68k/t-linux-aout"
- fixincludes=Makefile.in # The headers are ok already.
extra_headers=math-68881.h
float_format=m68k
gnu_ld=yes
tm_file=m68k/linux.h
tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- fixincludes=Makefile.in # The headers are ok already.
extra_headers=math-68881.h
float_format=m68k
gnu_ld=yes
tm_file=m68k/linux.h
tmake_file="t-linux m68k/t-linux"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- fixincludes=Makefile.in # The headers are ok already.
extra_headers=math-68881.h
float_format=m68k
gnu_ld=yes
then
tmake_file=m88k/t-dgux-gas
fi
- fixincludes=fixinc.dgux
;;
m88k-dolphin-sysv3*)
tm_file=m88k/dolph.h
tmake_file=m88k/t-luna
fi
;;
+ m88k-*-openbsd*)
+ tmake_file="${tmake_file} m88k/t-luna-gas"
+ ;;
m88k-*-sysv3*)
tm_file=m88k/sysv3.h
extra_parts="crtbegin.o crtend.o"
mips-sgi-irix6*) # SGI System V.4., IRIX 6
tm_file=mips/iris6.h
xm_file=mips/xm-iris6.h
- fixincludes=fixinc.irix
xmake_file=mips/x-iris6
tmake_file=mips/t-iris6
# if test x$enable_threads = xyes; then
gas=yes
gnu_ld=yes
extra_parts="crtbegin.o crtend.o"
-# thread_file='vxworks'
+ thread_file='vxworks'
;;
mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
tm_file="mips/iris6.h mips/cross64.h"
xm_defines=USG
xm_file="mips/xm-iris5.h"
- fixincludes=Makefile.in
xmake_file=mips/x-iris
tmake_file=mips/t-cross64
# See comment in mips/iris[56].h files.
fi
xm_defines=USG
xm_file="mips/xm-iris5.h"
- fixincludes=fixinc.irix
xmake_file=mips/x-iris
# mips-tfile doesn't work yet
tmake_file=mips/t-mips-gas
;;
mips-dec-bsd*) # Decstation running 4.4 BSD
tm_file=mips/dec-bsd.h
- fixincludes=
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
tm_file=mips/netbsd.h
# On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=t-netbsd
;;
mips*-*-linux*) # Linux MIPS, either endian.
gas=yes
fixincludes=Makefile.in
;;
+ mips*el-*-openbsd*) # mips little endian
+ target_cpu_default="MASK_GAS|MASK_ABICALLS"
+ tm_file=mips/openbsd.h
+ xmake_file=none
+ ;;
+ mips*-*-openbsd*) # mips big endian
+ target_cpu_default="MASK_GAS|MASK_ABICALLS"
+ tm_file=mips/openbsd-be.h
+ xmake_file=none
+ ;;
mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
tm_file="mips/news4.h ${tm_file}"
if test x$stabs = xyes; then
tm_file=ns32k/netbsd.h
xm_file="ns32k/xm-netbsd.h ${xm_file}"
# On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=t-netbsd
;;
pdp11-*-bsd)
;;
pdp11-*-*)
;;
+ ns32k-*-openbsd*)
+ # Nothing special
+ ;;
pyramid-*-*)
cpu_type=pyr
xmake_file=pyr/x-pyr
xmake_file=romp/x-mach
use_collect2=yes
;;
+ romp-*-openbsd*)
+ # Nothing special
+ ;;
+ powerpc-*-openbsd*)
+ tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
+ xmake_file=none
+ ;;
powerpc-*-beos*)
cpu_type=rs6000
tm_file=rs6000/beos.h
powerpc-*-eabiaix*)
tm_file=rs6000/eabiaix.h
tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
- fixincludes=Makefile.in
extra_headers=ppc-asm.h
;;
powerpc-*-eabisim*)
tm_file=rs6000/eabisim.h
tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
- fixincludes=Makefile.in
extra_headers=ppc-asm.h
;;
powerpc-*-eabi*)
else
tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
fi
- fixincludes=Makefile.in
extra_headers=ppc-asm.h
;;
powerpc-*-rtems*)
else
tmake_file="rs6000/t-ppc t-rtems rs6000/t-ppccomm"
fi
- fixincludes=Makefile.in
extra_headers=ppc-asm.h
;;
powerpc-*-linux-gnulibc1)
tmake_file="rs6000/t-ppc t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
fi
xmake_file=x-linux
- fixincludes=Makefile.in
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
extra_headers=ppc-asm.h
if test x$enable_threads = xyes; then
tmake_file="rs6000/t-ppc t-linux rs6000/t-ppccomm"
fi
xmake_file=x-linux
- fixincludes=Makefile.in
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
extra_headers=ppc-asm.h
if test x$enable_threads = xyes; then
powerpcle-*-eabisim*)
tm_file=rs6000/eabilesim.h
tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
- fixincludes=Makefile.in
extra_headers=ppc-asm.h
;;
powerpcle-*-eabi*)
else
tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
fi
- fixincludes=Makefile.in
extra_headers=ppc-asm.h
;;
powerpcle-*-winnt* )
tm_file=rs6000/win-nt.h
tmake_file=rs6000/t-winnt
# extra_objs=pe.o
- fixincludes=Makefile.in
if test x$enable_threads = xyes; then
thread_file='win32'
fi
tmake_file=rs6000/t-winnt
xmake_file=rs6000/x-cygwin
# extra_objs=pe.o
- fixincludes=Makefile.in
if test x$enable_threads = xyes; then
thread_file='win32'
fi
tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
fi
xmake_file=rs6000/x-sysv4
- case $machine in
-changequote(,)dnl
- *-*-solaris2.[0-4])
-changequote([,])dnl
- fixincludes=fixinc.svr4;;
- *)
- fixincludes=fixinc.wrap;;
- esac
extra_headers=ppc-asm.h
;;
changequote(,)dnl
changequote([,])dnl
tm_file=rs6000/aix31.h
xmake_file=rs6000/x-aix31
+ float_format=none
use_collect2=yes
;;
changequote(,)dnl
else
tmake_file=rs6000/t-newas
fi
+ float_format=none
use_collect2=yes
;;
changequote(,)dnl
tmake_file=rs6000/t-newas
fi
xmake_file=rs6000/x-aix41
+ float_format=none
use_collect2=yes
;;
changequote(,)dnl
tmake_file=rs6000/t-aix43
fi
xmake_file=rs6000/x-aix43
+ float_format=none
use_collect2=yes
;;
changequote(,)dnl
tmake_file=rs6000/t-aix43
fi
xmake_file=rs6000/x-aix43
+ float_format=none
use_collect2=yes
;;
rs6000-ibm-aix*)
+ float_format=none
use_collect2=yes
;;
rs6000-bull-bosx)
+ float_format=none
use_collect2=yes
;;
rs6000-*-mach*)
;;
sparc-*-netbsd*)
tm_file=sparc/netbsd.h
- # On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=t-netbsd
;;
+ sparc-*-openbsd*)
+ # we need collect2 until our bug is fixed...
+ use_collect2=yes
+ ;;
sparc-*-bsd*)
tm_file=sparc/bsd.h
;;
xm_file="${xm_file} sparc/xm-linux.h"
tm_file=sparc/linux-aout.h
xmake_file=x-linux
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
;;
sparc-*-linux-gnulibc1*) # Sparc's running GNU/Linux, libc5
tm_file=sparc/linux.h
tmake_file="t-linux t-linux-gnulibc1"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
;;
sparc-*-linux-gnu*) # Sparc's running GNU/Linux, libc6
tm_file=sparc/linux.h
tmake_file="t-linux"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- fixincludes=Makefile.in #On Linux, the headers are ok already.
gnu_ld=yes
if test x$enable_threads = xyes; then
thread_file='posix'
tmake_file="sparc/t-sol2 sparc/t-sol2-64"
xmake_file=sparc/x-sysv4
extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
- fixincludes=fixinc.wrap
- float_format=i128
+ float_format=none
if test x${enable_threads} = x ; then
enable_threads=$have_pthread_h
if test x${enable_threads} = x ; then
changequote(,)dnl
*-*-solaris2.[0-4])
changequote([,])dnl
- fixincludes=fixinc.svr4;;
+ float_format=i128
+ ;;
*)
- fixincludes=fixinc.wrap;;
+ float_format=none
+ ;;
esac
- float_format=i128
if test x${enable_threads} = x; then
enable_threads=$have_pthread_h
if test x${enable_threads} = x; then
xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
tm_file=sparc/linux64.h
xmake_file=x-linux
- fixincludes=Makefile.in # The headers are ok already.
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
gnu_ld=yes
;;
xm_file=arm/xm-thumb.h
md_file=arm/thumb.md
tmake_file=arm/t-thumb
- fixincludes=Makefile.in # There is nothing to fix
;;
# This hasn't been upgraded to GCC 2.
# tron-*-*)
;;
vax-*-netbsd*)
tm_file="${tm_file} netbsd.h vax/netbsd.h"
- # On NetBSD, the headers are already okay, except for math.h.
- fixincludes=fixinc.wrap
tmake_file=t-netbsd
float_format=vax
;;
+ vax-*-openbsd*)
+ tmake_file="${tm_file} vax/t-openbsd"
+ ;;
vax-*-ultrix*) # vaxen running ultrix
tm_file="${tm_file} vax/ultrix.h"
use_collect2=yes
# GNU tools are the only tools.
gnu_ld=yes
gas=yes
- # On GNU, the headers are already okay.
- fixincludes=Makefile.in
xmake_file=x-linux # These details are the same as Linux.
tmake_file=t-gnu # These are not.
;;
*-*-sysv4*)
- fixincludes=fixinc.svr4
xmake_try_sysv=x-sysv
install_headers_dir=install-headers-cpio
;;
alpha*-*-*)
case $machine in
alphaev6*)
- target_cpu_default2="MASK_CPU_EV6|MASK_BXW|MASK_CIX|MASK_MAX"
+ target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_CIX|MASK_MAX"
;;
alphapca56*)
target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
xarm[23678] | xarm250 | xarm[67][01]0 \
| xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
| xarm7100 | xarm7500 | xarm7500fe | xarm810 \
- | xstrongarm | xstrongarm110)
+ | xstrongarm | xstrongarm110 | xstrongarm1100)
target_cpu_default2="TARGET_CPU_$with_cpu"
;;
then float_format=i64
fi
+if test $float_format = none
+then float_h_file=Makefile.in
+else float_h_file=float-$float_format.h
+fi
+
if test x$enable_haifa = x
then
case $target in
esac
fi
+# Handle cpp installation.
+if [[ x$enable_cpp != x ]]
+then
+ tmake_file="$tmake_file t-install-cpp"
+fi
+
# Say what files are being used for the output code and MD file.
echo "Using \`$srcdir/config/$out_file' to output insns."
echo "Using \`$srcdir/config/$md_file' as machine description file."
all_compilers=
all_stagestuff=
all_diff_excludes=
-all_outputs='Makefile intl/Makefile po/Makefile.in'
+all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile'
# List of language makefile fragments.
all_lang_makefiles=
all_headers=
done
fi
-# if $(exec_prefix) is not the same as $(prefix), then do not use a relative
-# directory to get to $gcc_tooldir. Also handle the case where the user did
-# not specify a value for exec_prefix.
+# If $(exec_prefix) exists and is not the same as $(prefix), then compute an
+# absolute path for gcc_tooldir based on inserting the number of up-directory
+# movements required to get from $(exec_prefix) to $(prefix) into the basic
+# $(libsubdir)/@(unlibsubdir) based path.
# Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
# make and thus we'd get different behavior depending on where we built the
# sources.
if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
else
- gcc_tooldir='$(exec_prefix)'/${target_alias}
+changequote(<<, >>)dnl
+# An explanation of the sed strings:
+# -e 's|^\$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
+# -e 's|/$||' match a trailing forward slash and eliminates it
+# -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
+# -e 's|/[^/]*|../|g' replaces each occurance of /<directory> with ../
+#
+# (*) Note this pattern overwrites the first character of the string
+# with a forward slash if one is not already present. This is not a
+# problem because the exact names of the sub-directories concerned is
+# unimportant, just the number of them matters.
+#
+# The practical upshot of these patterns is like this:
+#
+# prefix exec_prefix result
+# ------ ----------- ------
+# /foo /foo/bar ../
+# /foo/ /foo/bar ../
+# /foo /foo/bar/ ../
+# /foo/ /foo/bar/ ../
+# /foo /foo/bar/ugg ../../
+#
+ dollar='$$'
+ gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
+changequote([, ])dnl
fi
AC_SUBST(gcc_tooldir)
-
-# Warn if using init_priority.
-AC_MSG_CHECKING(whether to enable init_priority by default)
-if test x$enable_init_priority != xyes; then
- enable_init_priority=no
-fi
-AC_MSG_RESULT($enable_init_priority)
+AC_SUBST(dollar)
# Nothing to do for FLOAT_H, float_format already handled.
objdir=`pwd`
# Substitute configuration variables
AC_SUBST(subdirs)
-AC_SUBST(all_languages)
AC_SUBST(all_boot_languages)
AC_SUBST(all_compilers)
-AC_SUBST(all_lang_makefiles)
-AC_SUBST(all_stagestuff)
AC_SUBST(all_diff_excludes)
-AC_SUBST(all_lib2funcs)
AC_SUBST(all_headers)
+AC_SUBST(all_lang_makefiles)
+AC_SUBST(all_languages)
+AC_SUBST(all_lib2funcs)
+AC_SUBST(all_stagestuff)
+AC_SUBST(build_exeext)
+AC_SUBST(build_install_headers_dir)
+AC_SUBST(build_xm_file_list)
+AC_SUBST(cc_set_by_configure)
+AC_SUBST(cpp_install_dir)
AC_SUBST(cpp_main)
-AC_SUBST(extra_passes)
-AC_SUBST(extra_programs)
-AC_SUBST(extra_parts)
+AC_SUBST(dep_host_xmake_file)
+AC_SUBST(dep_tmake_file)
+AC_SUBST(extra_c_flags)
AC_SUBST(extra_c_objs)
-AC_SUBST(extra_cxx_objs)
AC_SUBST(extra_cpp_objs)
-AC_SUBST(extra_c_flags)
+AC_SUBST(extra_cxx_objs)
+AC_SUBST(extra_headers_list)
AC_SUBST(extra_objs)
+AC_SUBST(extra_parts)
+AC_SUBST(extra_passes)
+AC_SUBST(extra_programs)
+AC_SUBST(fixinc_defs)
+AC_SUBST(float_h_file)
+AC_SUBST(gcc_gxx_include_dir)
+AC_SUBST(gcc_version)
+AC_SUBST(gcc_version_trigger)
+AC_SUBST(host_exeext)
AC_SUBST(host_extra_gcc_objs)
-AC_SUBST(extra_headers_list)
-AC_SUBST(dep_host_xmake_file)
-AC_SUBST(dep_tmake_file)
-AC_SUBST(out_file)
-AC_SUBST(out_object_file)
-AC_SUBST(md_file)
-AC_SUBST(tm_file_list)
-AC_SUBST(build_xm_file_list)
AC_SUBST(host_xm_file_list)
-AC_SUBST(lang_specs_files)
+AC_SUBST(install)
+AC_SUBST(JAVAGC)
AC_SUBST(lang_options_files)
+AC_SUBST(lang_specs_files)
AC_SUBST(lang_tree_files)
-AC_SUBST(thread_file)
-AC_SUBST(objc_boehm_gc)
-AC_SUBST(JAVAGC)
-AC_SUBST(gcc_version)
-AC_SUBST(gcc_version_trigger)
AC_SUBST(local_prefix)
-AC_SUBST(gxx_include_dir)
-AC_SUBST(fixincludes)
-AC_SUBST(build_install_headers_dir)
-AC_SUBST(build_exeext)
-AC_SUBST(host_exeext)
-AC_SUBST(float_format)
-AC_SUBST(will_use_collect2)
AC_SUBST(maybe_use_collect2)
-AC_SUBST(cc_set_by_configure)
+AC_SUBST(md_file)
+AC_SUBST(objc_boehm_gc)
+AC_SUBST(out_file)
+AC_SUBST(out_object_file)
AC_SUBST(stage_prefix_set_by_configure)
-AC_SUBST(install)
AC_SUBST(symbolic_link)
+AC_SUBST(thread_file)
+AC_SUBST(tm_file_list)
+AC_SUBST(will_use_collect2)
+
AC_SUBST_FILE(target_overrides)
AC_SUBST_FILE(host_overrides)
cross_defines='${cross_defines}'
cross_overrides='${cross_overrides}'
build_overrides='${build_overrides}'
+cpp_install_dir='${cpp_install_dir}'
])