2002-05-28 16:16:03 +00:00
|
|
|
# configure.target
|
|
|
|
|
|
|
|
# This shell script handles all target based configuration for libstdc++.
|
|
|
|
# It sets various shell variables based on the the target and the
|
|
|
|
# configuration options. You can modify this shell script without
|
|
|
|
# needing to rerun autoconf.
|
|
|
|
|
|
|
|
# This shell script should be invoked as
|
|
|
|
# . configure.target
|
|
|
|
# If it encounters an error, it will exit with a message.
|
|
|
|
|
|
|
|
# It uses the following shell variables:
|
|
|
|
# target The configuration target
|
|
|
|
# target_cpu The configuration target CPU
|
|
|
|
# target_os The configuration target OS
|
|
|
|
|
|
|
|
# It possibly modifies the following shell variables:
|
|
|
|
# cpu_include_dir CPU-specific include directory, relative to srcdir
|
2002-09-01 20:39:13 +00:00
|
|
|
#
|
2002-05-28 16:16:03 +00:00
|
|
|
# os_include_dir OS-specific include directory, relative to srcdir
|
2002-09-01 20:39:13 +00:00
|
|
|
#
|
|
|
|
# c_model the model to use for "C" headers, defaults to c_std.
|
|
|
|
#
|
|
|
|
# c_compatibility if "C" compatibility headers are necessary,
|
|
|
|
# defaults to no.
|
2002-05-28 16:16:03 +00:00
|
|
|
|
2002-09-01 20:39:13 +00:00
|
|
|
# DEFAULTS
|
|
|
|
c_model=c_std
|
|
|
|
c_compatibility=no
|
|
|
|
abi_baseline_triplet=${target}
|
2002-05-28 16:16:03 +00:00
|
|
|
|
2002-09-01 20:39:13 +00:00
|
|
|
|
|
|
|
# TARGET-SPECIFIC OVERRIDES
|
|
|
|
# Set any CPU-dependent bits.
|
2002-05-28 16:16:03 +00:00
|
|
|
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
|
|
|
|
case "${target_cpu}" in
|
|
|
|
alpha*)
|
|
|
|
cpu_include_dir="config/cpu/alpha"
|
|
|
|
;;
|
|
|
|
arm*)
|
|
|
|
cpu_include_dir="config/cpu/arm"
|
|
|
|
;;
|
|
|
|
cris)
|
|
|
|
cpu_include_dir="config/cpu/cris"
|
|
|
|
;;
|
|
|
|
ia64)
|
|
|
|
cpu_include_dir="config/cpu/ia64"
|
|
|
|
;;
|
|
|
|
i386)
|
|
|
|
cpu_include_dir="config/cpu/i386"
|
|
|
|
;;
|
|
|
|
i486 | i586 | i686 | i786)
|
|
|
|
cpu_include_dir="config/cpu/i486"
|
|
|
|
;;
|
|
|
|
m68k | m680[246]0)
|
|
|
|
cpu_include_dir="config/cpu/m68k"
|
|
|
|
;;
|
|
|
|
powerpc | rs6000)
|
|
|
|
cpu_include_dir="config/cpu/powerpc"
|
|
|
|
;;
|
|
|
|
s390 | s390x)
|
|
|
|
cpu_include_dir="config/cpu/s390"
|
|
|
|
;;
|
2002-09-17 04:04:04 +00:00
|
|
|
sparc* | ultrasparc)
|
|
|
|
cpu_include_dir="config/cpu/sparc"
|
2002-05-28 16:16:03 +00:00
|
|
|
;;
|
|
|
|
x86_64*)
|
|
|
|
cpu_include_dir="config/cpu/x86-64"
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
cpu_include_dir="config/cpu/generic"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
|
|
# Set any OS dependent compiler flags.
|
|
|
|
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
|
|
|
|
case "${target_os}" in
|
|
|
|
aix4.[3456789]* | aix[56789]*)
|
|
|
|
os_include_dir="config/os/aix"
|
|
|
|
OPT_LDFLAGS="-Wl,-G"
|
|
|
|
;;
|
|
|
|
bsd* | freebsd* )
|
|
|
|
os_include_dir="config/os/bsd/freebsd"
|
|
|
|
;;
|
|
|
|
cygwin*)
|
|
|
|
os_include_dir="config/os/newlib"
|
|
|
|
;;
|
|
|
|
*djgpp*)
|
|
|
|
os_include_dir="config/os/djgpp"
|
|
|
|
;;
|
|
|
|
linux* | gnu*)
|
|
|
|
os_include_dir="config/os/gnu-linux"
|
|
|
|
;;
|
|
|
|
irix[1-6] | irix[1-5].* | irix6.[0-4])
|
|
|
|
# This is known to work on at least IRIX 5.2 and 6.3.
|
|
|
|
os_include_dir="config/os/irix/irix5.2"
|
|
|
|
;;
|
|
|
|
irix6.5)
|
|
|
|
os_include_dir="config/os/irix/irix6.5"
|
|
|
|
;;
|
|
|
|
mingw32*)
|
|
|
|
os_include_dir="config/os/mingw32"
|
|
|
|
;;
|
|
|
|
netbsd*)
|
|
|
|
os_include_dir="config/os/bsd/netbsd"
|
|
|
|
;;
|
|
|
|
solaris2.5*)
|
|
|
|
os_include_dir="config/os/solaris/solaris2.5"
|
|
|
|
;;
|
|
|
|
solaris2.6*)
|
|
|
|
os_include_dir="config/os/solaris/solaris2.6"
|
|
|
|
;;
|
|
|
|
solaris2.7* | solaris2.8*)
|
|
|
|
os_include_dir="config/os/solaris/solaris2.7"
|
|
|
|
;;
|
|
|
|
hpux*)
|
|
|
|
os_include_dir="config/os/hpux"
|
|
|
|
;;
|
2002-09-01 20:39:13 +00:00
|
|
|
qnx6.[12]*)
|
|
|
|
os_include_dir="config/os/qnx/qnx6.1"
|
|
|
|
c_model=c
|
|
|
|
;;
|
2002-05-28 16:16:03 +00:00
|
|
|
*)
|
|
|
|
os_include_dir="config/os/generic"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
|
|
# Set any flags dependent on the full target triplet.
|
|
|
|
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
|
|
|
|
case "${target}" in
|
|
|
|
*-*-aix[456789]*)
|
|
|
|
# We set os_include_dir to config/os/aix only on AIX 4.3 and
|
|
|
|
# newer, but config/os/aix/bits/atomicity.h works on earlier
|
|
|
|
# versions of AIX 4.*, so we explicitly duplicate the directory
|
|
|
|
# here, because os_include_dir.
|
|
|
|
ATOMICITYH=config/os/aix
|
|
|
|
;;
|
|
|
|
*-*-aix*)
|
|
|
|
ATOMICITYH=config/cpu/generic
|
|
|
|
;;
|
|
|
|
*-*-irix*)
|
|
|
|
ATOMICITYH=$os_include_dir
|
|
|
|
;;
|
|
|
|
mcore-*-pe*)
|
|
|
|
# The EPOC C++ environment does not support exceptions.
|
|
|
|
if test -z "$enable_cxx_flags"; then
|
|
|
|
enable_cxx_flags="-frtti -fno-exceptions"
|
|
|
|
fi
|
|
|
|
ATOMICITYH=$cpu_include_dir
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
ATOMICITYH=$cpu_include_dir
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
# Set CPULIMITSH to the directory where the configuration-dependent
|
|
|
|
# cpu_limits.h can be found.
|
|
|
|
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
|
|
|
|
case "${target}" in
|
|
|
|
*-*-hpux*)
|
|
|
|
CPULIMITSH=config/os/hpux
|
|
|
|
;;
|
|
|
|
alpha*-*-*osf5*)
|
|
|
|
CPULIMITSH=config/os/osf/osf5.0
|
|
|
|
;;
|
|
|
|
alpha*-*-*)
|
|
|
|
CPULIMITSH=config/cpu/alpha
|
|
|
|
;;
|
|
|
|
cris-*-*)
|
|
|
|
CPULIMITSH=config/cpu/cris
|
|
|
|
;;
|
|
|
|
ia64-*-*)
|
|
|
|
CPULIMITSH=config/cpu/ia64
|
|
|
|
;;
|
|
|
|
i?86-*-*)
|
|
|
|
CPULIMITSH=config/cpu/i386
|
|
|
|
;;
|
|
|
|
m68k-*-* | m680[246]0-*-*)
|
|
|
|
CPULIMITSH=config/cpu/m68k
|
|
|
|
;;
|
|
|
|
mmix-*-*)
|
|
|
|
CPULIMITSH=config/cpu/mmix
|
|
|
|
;;
|
2002-09-01 20:39:13 +00:00
|
|
|
powerpc-*-* | rs6000-*-*)
|
2002-05-28 16:16:03 +00:00
|
|
|
CPULIMITSH=config/cpu/powerpc
|
|
|
|
;;
|
|
|
|
s390-*-* | s390x-*-*)
|
|
|
|
CPULIMITSH=config/cpu/s390
|
|
|
|
;;
|
|
|
|
x86_64-*-*)
|
|
|
|
CPULIMITSH=config/cpu/x86-64
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
CPULIMITSH=config/cpu/generic
|
|
|
|
;;
|
|
|
|
esac
|