# Common parts for widely ported systems.
case ${target} in
*-*-darwin*)
- tm_file="${tm_file} darwin.h"
+ tm_file="${tm_file} darwin.h ${cpu_type}/darwin.h"
tm_p_file="${tm_p_file} darwin-protos.h"
- tmake_file="t-darwin t-slibgcc-darwin"
+ tmake_file="t-darwin ${cpu_type}/t-darwin t-slibgcc-darwin"
target_gtfiles="\$(srcdir)/config/darwin.c"
extra_options="${extra_options} darwin.opt"
c_target_objs="darwin-c.o"
;;
*-*-vxworks*)
tmake_file=t-vxworks
- tm_file="${tm_file} elfos.h svr4.h vxworks.h"
+ tm_file="${tm_file} elfos.h svr4.h"
+ xm_defines=POSIX
+ extra_options="${extra_options} vxworks.opt"
case ${enable_threads} in
no) ;;
"" | yes | vxworks) thread_file='vxworks' ;;
*) echo 'Unknown thread configuration for VxWorks'; exit 1 ;;
esac
- use_collect2=yes
- xm_defines=POSIX
;;
esac
use_collect2=yes
;;
arm*-*-linux*) # ARM GNU/Linux with ELF
- tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h"
- tmake_file="${tmake_file} arm/t-arm arm/t-linux"
- extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- gnu_ld=yes
+ tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
+ tmake_file="${tmake_file} t-linux arm/t-arm"
+ case ${target} in
+ arm*-*-linux-gnueabi)
+ tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
+ tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
+ # The BPABI long long divmod functions return a 128-bit value in
+ # registers r0-r3. Correctly modeling that requires the use of
+ # TImode.
+ need_64bit_hwint=yes
+ # The EABI requires the use of __cxa_atexit.
+ default_use_cxa_atexit=yes
+ ;;
+ *)
+ tmake_file="$tmake_file arm/t-linux"
+ ;;
+ esac
+ tm_file="$tm_file arm/aout.h arm/arm.h"
;;
arm*-*-uclinux*) # ARM ucLinux
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
pa/pa32-regs.h pa/pa32-linux.h"
tmake_file="${tmake_file} pa/t-linux"
- # if not configured with --enable-sjlj-exceptions, bump the
- # libgcc version number
- if test x$sjlj != x1; then
- tmake_file="$tmake_file pa/t-slibgcc-elf-ver"
+ # Set the libgcc version number
+ if test x$sjlj = x1; then
+ tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+ else
+ tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
fi
;;
# port not yet contributed.
tmake_file="${tmake_file} pa/t-dce-thr"
;;
esac
+ # Set the libgcc version number
+ if test x$sjlj = x1; then
+ tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+ else
+ tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+ fi
use_collect2=yes
use_fixproto=yes
;;
pa/pa-hpux1010.opt pa/pa64-hpux.opt"
need_64bit_hwint=yes
tmake_file="pa/t-pa64 pa/t-pa-hpux pa/t-hpux-shlib"
+ # Set the libgcc version number
+ if test x$sjlj = x1; then
+ tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+ else
+ tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+ fi
extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
case x${enable_threads} in
xyes | xposix )
;;
esac
tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
+ # Set the libgcc version number
+ if test x$sjlj = x1; then
+ tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+ else
+ tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+ fi
case x${enable_threads} in
xyes | xposix )
thread_file=posix
use_collect2=yes
;;
i[34567]86-*-darwin*)
- tm_file="${tm_file} i386/darwin.h"
+ # All the configuration is presently done generically.
;;
i[34567]86-*-elf*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h"
then
tm_file="${tm_file} usegas.h"
fi
- xm_defines="SMALL_ARG_MAX"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
tmake_file=t-svr4
extra_parts="crtbegin.o crtend.o"
use_fixproto=yes
;;
i[34567]86-*-solaris2*)
- xm_defines="SMALL_ARG_MAX"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h sol2.h"
case ${target} in
*-*-solaris2.[0-6] | *-*-solaris2.[0-6].*)
use_fixproto=yes
;;
i[34567]86-*-sysv4*) # Intel 80386's running system V.4
- xm_defines="SMALL_ARG_MAX"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
if test x$stabs = xyes
then
extra_parts="crtbegin.o crtend.o"
use_fixproto=yes
;;
-i[4567]86-wrs-vxworks)
- tm_file="${tm_file} i386/sysv4.h i386/unix.h i386/vxworks.h"
- tmake_file="${tmake_file} i386/t-vxworks"
+i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
+ tm_file="${tm_file} i386/sysv4.h i386/unix.h i386/att.h vx-common.h"
+ case ${target} in
+ *-vxworksae*)
+ tm_file="${tm_file} vxworksae.h i386/vxworksae.h"
+ tmake_file="${tmake_file} i386/t-vxworks i386/t-vxworksae"
+ ;;
+ *)
+ tm_file="${tm_file} vxworks.h i386/vxworks.h"
+ tmake_file="${tmake_file} i386/t-vxworks"
+ ;;
+ esac
;;
i[34567]86-*-pe | i[34567]86-*-cygwin*)
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h"
tmake_file="i386/t-cygwin i386/t-cygming"
target_gtfiles="\$(srcdir)/config/i386/winnt.c"
extra_options="${extra_options} i386/cygming.opt"
- extra_objs=winnt.o
+ extra_objs="winnt.o winnt-stubs.o"
c_target_objs=cygwin2.o
- cxx_target_objs=cygwin2.o
+ cxx_target_objs="cygwin2.o winnt-cxx.o"
extra_gcc_objs=cygwin1.o
if test x$enable_threads = xyes; then
thread_file='posix'
tmake_file="i386/t-cygming i386/t-mingw32"
target_gtfiles="\$(srcdir)/config/i386/winnt.c"
extra_options="${extra_options} i386/cygming.opt"
- extra_objs=winnt.o
+ extra_objs="winnt.o winnt-stubs.o"
+ cxx_target_objs=winnt-cxx.o
case ${enable_threads} in
"" | yes | win32) thread_file='win32' ;;
esac
tm_defines="MOTOROLA USE_GAS"
tmake_file=m68k/t-m68kelf
extra_parts="crtbegin.o crtend.o"
- use_fixproto=yes
;;
m68010-*-netbsdelf* | m68k*-*-netbsdelf*)
tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h"
use_collect2=no
use_fixproto=yes
;;
+mt-*-elf)
+ tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
+ tmake_file="${tmake_file} mt/t-mt"
+ ;;
+ns32k-*-netbsdelf*)
+ echo "GCC does not yet support the ${target} target"; exit 1
+ ;;
+ns32k-*-netbsd*)
+ tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h"
+ # On NetBSD, the headers are already okay, except for math.h.
+ tmake_file="t-netbsd ns32k/t-ns32k"
+ extra_parts=""
+ use_collect2=yes
+ ;;
pdp11-*-bsd)
tm_file="${tm_file} pdp11/2bsd.h"
use_fixproto=yes
use_fixproto=yes
;;
powerpc-*-darwin*)
- tm_file="${tm_file} rs6000/darwin.h"
- tmake_file="${tmake_file} rs6000/t-darwin"
extra_options="${extra_options} rs6000/darwin.opt"
case ${target} in
*-darwin1[0-9]* | *-darwin[8-9]*)
thread_file='posix'
fi
;;
-powerpc-wrs-vxworks*)
+powerpc-wrs-vxworks|powerpc-wrs-vxworksae)
# We want vxworks.h after rs6000/sysv4.h, which unfortunately
# means we have to redo the tm_file list from scratch.
tm_file="rs6000/rs6000.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
- tm_file="${tm_file} vxworks.h rs6000/vxworks.h"
tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppccomm rs6000/t-vxworks"
extra_options="${extra_options} rs6000/sysv4.opt"
extra_headers=ppc-asm.h
+ case ${target} in
+ *-vxworksae*)
+ tm_file="${tm_file} vx-common.h vxworksae.h rs6000/vxworks.h rs6000/vxworksae.h"
+ tmake_file="${tmake_file} rs6000/t-vxworksae"
+ ;;
+ *-vxworks*)
+ tm_file="${tm_file} vx-common.h vxworks.h rs6000/vxworks.h"
+ ;;
+ esac
;;
-powerpc-wrs-windiss*) # Instruction-level simulator for VxWorks.
+powerpc-wrs-windiss*) # Instruction-level simulator for VxWorks.
tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/windiss.h"
- tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
+ tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
extra_options="${extra_options} rs6000/sysv4.opt"
- thread_file=""
+ thread_file=""
use_fixproto=yes
- ;;
+ ;;
powerpc-*-lynxos*)
xm_defines=POSIX
tm_file="${tm_file} dbxelf.h elfos.h rs6000/sysv4.h rs6000/lynx.h lynx.h"
esac
;;
+ mt-*-*)
+ supported_defaults="arch"
+
+ case "$with_arch" in
+ "" \
+ | ms1-64-001 \
+ | ms1-16-002 \
+ | ms1-16-003 \
+ | ms2 \
+ | "")
+ # OK
+ ;;
+ *)
+ echo "Unknown arch used in --with-arch=$with_arch" 1>&2
+ exit 1
+ ;;
+ esac
+ ;;
+
powerpc*-*-* | rs6000-*-*)
supported_defaults="cpu float tune"
;;
*)
echo "This target does not support --with-$option." 2>&1
+ echo "Valid --with options are: $supported_defaults" 2>&1
exit 1
;;
esac