Commit 55380b08 by Nathanael Nerode

Reorganize, remove now-redundant tests.

From-SVN: r55154
parent 6bfa5aac
2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
* configure.in: Eliminate redundant tests. Reorganize.
2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
* Makefile.in: Eliminate last reference to LIBGCC1_TEST.
2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
......
......@@ -127,1133 +127,1111 @@ else
is_cross_compiler=yes
fi
# Work in distributions that contain no compiler tools, like Autoconf.
tentative_cc=""
if test -d ${srcdir}/config ; then
# We always want to use the same name for this directory, so that dejagnu
# can reliably find it.
target_subdir=${target_alias}
if test ! -d ${target_subdir} ; then
if mkdir ${target_subdir} ; then true
else
echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${target_subdir}" 1>&2
exit 1
fi
fi
build_subdir=${build_alias}
if test x"${build_alias}" != x"${host}" ; then
if test ! -d ${build_subdir} ; then
if mkdir ${build_subdir} ; then true
else
echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${build_subdir}" 1>&2
exit 1
fi
fi
fi
# Skipdirs are removed silently.
skipdirs=
# Noconfigdirs are removed loudly.
noconfigdirs=""
use_gnu_ld=
# Make sure we don't let GNU ld be added if we didn't want it.
if test x$with_gnu_ld = xno ; then
use_gnu_ld=no
noconfigdirs="$noconfigdirs ld"
fi
use_gnu_as=
# Make sure we don't let GNU as be added if we didn't want it.
if test x$with_gnu_as = xno ; then
use_gnu_as=no
noconfigdirs="$noconfigdirs gas"
fi
# some tools are so dependent upon X11 that if we're not building with X,
# it's not even worth trying to configure, much less build, that tool.
case ${with_x} in
yes | "") ;; # the default value for this tree is that X11 is available
no) skipdirs="${skipdirs} tk libgui" ;;
*) echo "*** bad value \"${with_x}\" for -with-x flag; ignored" 1>&2 ;;
esac
# Some tools are only suitable for building in a "native" situation.
# Remove these if host!=target. Similarly, some are only suitable
# for cross toolchains; remove if host=target.
case $is_cross_compiler in
no) skipdirs="${skipdirs} ${cross_only}" ;;
yes) skipdirs="${skipdirs} ${native_only}" ;;
esac
# If both --with-headers and --with-libs are specified, default to
# --without-newlib.
if test x"${with_headers}" != x && test x"${with_libs}" != x ; then
if test x"${with_newlib}" = x ; then
with_newlib=no
fi
fi
# Recognize --with-newlib/--without-newlib.
case ${with_newlib} in
no) skipdirs="${skipdirs} target-newlib" ;;
yes) skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'` ;;
esac
# Configure extra directories which are host specific
case "${host}" in
m68k-hp-hpux*)
# Avoid "too much defining" errors from HPUX compiler.
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hp300"
i[3456]86-*-go32*)
configdirs="$configdirs dosrel" ;;
i[3456]86-*-mingw32*)
configdirs="$configdirs dosrel" ;;
*-cygwin*)
configdirs="$configdirs libtermcap dosrel" ;;
esac
# Remove more programs from consideration, based on the host or
# target this usually means that a port of the program doesn't
# exist yet.
case "${host}" in
hppa*64*-*-*)
noconfigdirs="$noconfigdirs byacc"
;;
m68k-apollo-sysv*)
tentative_cc="cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG"
host_makefile_frag="config/mh-apollo68"
i[3456]86-*-vsta)
noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext"
;;
m68k-apollo-bsd*)
#None of the Apollo compilers can compile gas or binutils. The preprocessor
# chokes on bfd, the compiler won't let you assign integers to enums, and
# other problems. Defining CC to gcc is a questionable way to say "don't use
# the apollo compiler" (the preferred version of GCC could be called cc,
# or whatever), but I'm not sure leaving CC as cc is any better...
#CC=cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DNO_STDARG
tentative_cc=gcc
host_makefile_frag="config/mh-a68bsd"
i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*)
noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile apache inet itcl tix db snavigator gnuserv libffi"
;;
m88k-dg-dgux*)
tentative_cc="gcc -Wall -ansi -D__using_DGUX"
host_makefile_frag="config/mh-dgux"
i[3456]86-*-mingw32*)
# noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv"
noconfigdirs="expect dejagnu cvs autoconf automake send-pr rcs guile perl texinfo apache inet libtool"
;;
m88k-harris-cxux*)
# Under CX/UX, we want to tell the compiler to use ANSI mode.
tentative_cc="cc -Xa"
host_makefile_frag="config/mh-cxux"
i[3456]86-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb"
;;
m88k-motorola-sysv*)
host_makefile_frag="config/mh-delta88"
*-*-cygwin*)
noconfigdirs="autoconf automake send-pr rcs guile perl apache inet"
;;
mips*-dec-ultrix*)
tentative_cc="cc -Wf,-XNg1000"
host_makefile_frag="config/mh-decstation"
*-*-netbsd*)
noconfigdirs="rcs"
;;
mips*-nec-sysv4*)
# The C compiler on NEC MIPS SVR4 needs bigger tables.
tentative_cc="cc -ZXNd=5000 -ZXNg=1000"
host_makefile_frag="config/mh-necv4"
ppc*-*-pe)
noconfigdirs="patch diff make tk tcl expect dejagnu cvssrc autoconf automake texinfo bison send-pr gprof rcs guile perl apache inet itcl tix db snavigator gnuserv"
;;
mips*-sgi-irix6*)
host_makefile_frag="config/mh-irix6"
powerpc-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline"
;;
mips*-sgi-irix5*)
host_makefile_frag="config/mh-irix5"
esac
# Save it here so that, even in case of --enable-libgcj, if the Java
# front-end isn't enabled, we still get libgcj disabled.
libgcj_saved=$libgcj
case $enable_libgcj in
yes)
# If we reset it here, it won't get added to noconfigdirs in the
# target-specific build rules, so it will be forcibly enabled
# (unless the Java language itself isn't enabled).
libgcj=
;;
mips*-sgi-irix4*)
# Tell compiler to use K&R C. We can't compile under the SGI Ansi
# environment. Also bump switch table size so that cp-parse will
# compile. Bump string length limit so linker builds.
tentative_cc="cc -cckr -Wf,-XNg1500 -Wf,-XNk1000 -Wf,-XNh2000 -Wf,-XNl8192"
no)
# Make sure we get it printed in the list of not supported target libs.
noconfigdirs="$noconfigdirs ${libgcj}"
;;
mips*-sgi-irix3*)
host_makefile_frag="config/mh-sysv"
esac
case "${target}" in
*-*-chorusos)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
mips*-*-sysv4*)
host_makefile_frag="config/mh-sysv4"
*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
mips*-*-sysv*)
# This is for a MIPS running RISC/os 4.52C.
*-*-netbsd*)
# Skip some stuff on all NetBSD configurations.
skipdirs="$skipdirs target-newlib target-libiberty target-libgloss"
# This is needed for GDB, but needs to be in the top-level make because
# if a library is compiled with the bsd headers and gets linked with the
# sysv system libraries all hell can break loose (e.g. a jmp_buf might be
# a different size).
# ptrace(2) apparently has problems in the BSD environment. No workaround is
# known except to select the sysv environment. Could we use /proc instead?
# These "sysv environments" and "bsd environments" often end up being a pain.
#
# This is not part of CFLAGS because perhaps not all C compilers have this
# option.
tentative_cc="cc -systype sysv"
host_makefile_frag="config/mh-riscos"
# Skip some stuff that's unsupported on some NetBSD configurations.
case "${target}" in
i*86-*-netbsdelf*) ;;
*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
i370-ibm-opened*)
tentative_cc="c89"
host_makefile_frag="config/mh-openedition"
esac
;;
i[3456]86-*-sysv5*)
host_makefile_frag="config/mh-sysv5"
*-*-netware)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-newlib target-libiberty target-libgloss ${libgcj}"
;;
i[3456]86-*-dgux*)
tentative_cc="gcc -Wall -ansi -D__using_DGUX"
host_makefile_frag="config/mh-dgux386"
*-*-rtems*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
case ${target} in
h8300*-*-* | h8500-*-*)
noconfigdirs="$noconfigdirs target-libf2c"
;;
i[3456]86-ncr-sysv4.3*)
# The MetaWare compiler will generate a copyright message unless you
# turn it off by adding the -Hnocopyr flag.
tentative_cc="cc -Hnocopyr"
host_makefile_frag="config/mh-ncrsvr43"
*) ;;
esac
;;
i[3456]86-ncr-sysv4*)
# for an NCR 3000 (i486/SVR4) system.
# The NCR 3000 ships with a MetaWare compiler installed as /bin/cc.
# This compiler not only emits obnoxious copyright messages every time
# you run it, but it chokes and dies on a whole bunch of GNU source
# files. Default to using the AT&T compiler installed in /usr/ccs/ATT/cc.
tentative_cc="/usr/ccs/ATT/cc"
host_makefile_frag="config/mh-ncr3000"
*-*-vxworks*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
i[3456]86-*-sco3.2v5*)
host_makefile_frag="config/mh-sysv"
alpha*-dec-osf*)
# ld works, but does not support shared libraries.
# newlib is not 64 bit ready. I'm not sure about fileutils.
# gas doesn't generate exception information.
noconfigdirs="$noconfigdirs gas ld fileutils target-newlib target-libgloss"
;;
i[3456]86-*-sco*)
# The native C compiler botches some simple uses of const. Unfortunately,
# it doesn't defined anything like "__sco__" for us to test for in ansidecl.h.
tentative_cc="cc -Dconst="
host_makefile_frag="config/mh-sco"
alpha*-*-*vms*)
noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}"
;;
i[3456]86-*-udk*)
host_makefile_frag="config/mh-sysv5"
alpha*-*-linux*)
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
i[3456]86-*-isc*)
host_makefile_frag="config/mh-sysv"
alpha*-*-freebsd*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
i[3456]86-*-solaris2*)
host_makefile_frag="config/mh-sysv4"
alpha*-*-*)
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
i[3456]86-*-aix*)
host_makefile_frag="config/mh-aix386"
sh-*-linux*)
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
;;
i[3456]86-*-msdosdjgpp*)
host_makefile_frag="config/mh-djgpp"
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
noconfigdirs="$noconfigdirs ${libgcj}"
noconfigdirs="$noconfigdirs target-examples"
noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr"
noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim"
noconfigdirs="$noconfigdirs expect dejagnu"
# the C++ libraries don't build on top of CE's C libraries
noconfigdirs="$noconfigdirs ${libstdcxx_version}"
skipdirs="$skipdirs target-newlib"
case "${host}" in
*-*-cygwin*) ;; # keep gdb and readline
*) noconfigdirs="$noconfigdirs gdb readline ${libstdcxx_version}"
;;
*-cygwin*)
host_makefile_frag="config/mh-cygwin"
esac
;;
*-mingw32*)
host_makefile_frag="config/mh-mingw32"
arc-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
*-interix*)
host_makefile_frag="config/mh-interix"
arm-*-pe*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
vax-*-ultrix2*)
# The old BSD pcc isn't up to compiling parts of gdb so use gcc
tentative_cc=gcc
arm-*-oabi*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
*-*-solaris2*)
host_makefile_frag="config/mh-solaris"
thumb-*-coff)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
m68k-sun-sunos*)
# Sun's C compiler needs the -J flag to be able to compile cp-parse.c
# without overflowing the jump tables (-J says to use a 32 bit table)
tentative_cc="cc -J"
thumb-*-elf)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
*-hp-hpux[78]*)
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux8"
thumb-*-oabi)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
*-hp-hpux*)
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux"
strongarm-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
*-*-hiux*)
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux"
strongarm-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
rs6000-*-lynxos*)
# /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/usr/cygnus/progressive/bin/gcc"
host_makefile_frag="config/mh-lynxrs6k"
xscale-*-elf)
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
;;
*-*-lynxos*)
# /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/bin/gcc"
xscale-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
*-*-sysv4*)
host_makefile_frag="config/mh-sysv4"
thumb-*-pe)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
*-*-sysv*)
host_makefile_frag="config/mh-sysv"
arm-*-riscix*)
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;;
esac
fi
# If we aren't going to be using gcc, see if we can extract a definition
# of CC from the fragment.
# Actually, use the 'pre-extracted' version above.
if test -z "${CC}" && test "${build}" = "${host}" ; then
IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
found=
for dir in $PATH; do
test -z "$dir" && dir=.
if test -f $dir/gcc; then
found=yes
break
fi
done
IFS="$save_ifs"
if test -z "${found}" && test -n "${tentative_cc}" ; then
CC=$tentative_cc
fi
fi
# We default to --with-shared on platforms where -fpic is meaningless.
# Well, we don't yet, but we will.
if false && test "${host}" = "${target}" && test x${enable_shared} = x ; then
case "${target}" in
alpha*-dec-osf*) enable_shared=yes ;;
alpha*-*-linux*) enable_shared=yes ;;
mips-sgi-irix5*) enable_shared=yes ;;
*) enable_shared=no ;;
esac
fi
# hpux11 in 64bit mode has libraries in a weird place. Arrange to find
# them automatically.
case "${host}" in
hppa*64*-*-hpux11*)
withoptions="$withoptions -x-libraries=/usr/lib/pa20_64 -x-includes=/usr/X11R6/include"
avr-*-*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;;
esac
case "${enable_shared}" in
yes) shared=yes ;;
no) shared=no ;;
"") shared=no ;;
*) shared=yes ;;
esac
rm -f mh-frag
if test -n "${host_makefile_frag}" ; then
for f in ${host_makefile_frag}
do
cat ${srcdir}/$f >> mh-frag
done
host_makefile_frag=mh-frag
fi
case "${target}" in
v810*)
target_makefile_frag="${target_makefile_frag} config/mt-v810"
c4x-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
;;
i[3456]86-*-netware*)
target_makefile_frag="${target_makefile_frag} config/mt-netware"
c54x*-*-* | tic54x-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} gcc gdb newlib"
;;
powerpc-*-netware*)
target_makefile_frag="${target_makefile_frag} config/mt-netware"
cris-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
alpha*-*-linux*)
target_makefile_frag="${target_makefile_frag} config/mt-linux"
target_makefile_frag="${target_makefile_frag} config/mt-alphaieee"
d10v-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
;;
alpha*-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-alphaieee"
d30v-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
*-*-linux*)
target_makefile_frag="${target_makefile_frag} config/mt-linux"
fr30-*-elf*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
;;
*-*-aix4.[3456789]* | *-*-aix[56789].*)
target_makefile_frag="${target_makefile_frag} config/mt-aix43"
frv-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
fi
;;
mips*-*-pe | sh*-*-pe | *arm-wince-pe)
target_makefile_frag="${target_makefile_frag} config/mt-wince"
h8300*-*-*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
esac
# If --enable-target-optspace always use -Os instead of -O2 to build
# the target libraries, similarly if it is not specified, use -Os
# on selected platforms.
case "${enable_target_optspace}:${target}" in
yes:*)
target_makefile_frag="${target_makefile_frag} config/mt-ospace"
h8500-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} target-libf2c"
;;
:d30v-*)
target_makefile_frag="${target_makefile_frag} config/mt-d30v"
hppa*64*-*-linux* | parisc*64*-*-linux*)
# In this case, it's because the hppa64-linux target is for
# the kernel only at this point and has no libc, and thus no
# headers, crt*.o, etc., all of which are needed by these.
noconfigdirs="$noconfigdirs target-zlib"
;;
:m32r-* | :d10v-* | :fr30-*)
target_makefile_frag="${target_makefile_frag} config/mt-ospace"
hppa*-*-*elf* | \
parisc*-*-linux* | hppa*-*-linux* | \
hppa*-*-lites* | \
hppa*64*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
# Do configure ld/binutils/gas for this case.
;;
no:* | :*)
hppa*-*-*)
# According to Alexandre Oliva <aoliva@redhat.com>, libjava won't
# build on HP-UX 10.20.
noconfigdirs="$noconfigdirs ld shellutils ${libgcj}"
;;
*)
echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2
ia64*-*-elf*)
# No gdb support yet.
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb"
;;
esac
skipdirs=
use_gnu_ld=
use_gnu_as=
# some tools are so dependent upon X11 that if we're not building with X,
# it's not even worth trying to configure, much less build, that tool.
case ${with_x} in
yes | "") # the default value for this tree is that X11 is available
ia64*-**-hpux*)
# No gdb or ld support yet.
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld"
;;
no)
skipdirs="${skipdirs} tk libgui"
i[3456]86-*-coff | i[3456]86-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
;;
*)
echo "*** bad value \"${with_x}\" for -with-x flag; ignored" 1>&2
i[34567]86-*-freebsd*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
esac
# Some tools are only suitable for building in a "native" situation.
# Those are added when we have a host==target configuration. For cross
# toolchains, we add some directories that should only be useful in a
# cross-compiler.
s390*-*-linux*)
# The libffi port is not yet in the GCC tree
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
i[3456]86-*-linux*)
# This section makes it possible to build newlib natively on linux.
# If we are using a cross compiler then don't configure newlib.
if test x${is_cross_compiler} != xno ; then
noconfigdirs="$noconfigdirs target-newlib"
fi
noconfigdirs="$noconfigdirs target-libgloss"
# If we are not using a cross compiler, do configure newlib.
# Note however, that newlib will only be configured in this situation
# if the --with-newlib option has been given, because otherwise
# 'target-newlib' will appear in skipdirs.
;;
*-*-linux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
i[3456]86-*-mingw32*)
target_configdirs="$target_configdirs target-mingw"
noconfigdirs="$noconfigdirs expect target-libgloss ${libgcj}"
case $is_cross_compiler in
no) skipdirs="${skipdirs} ${cross_only}" ;;
yes) skipdirs="${skipdirs} ${native_only}" ;;
esac
# We always want to use the same name for this directory, so that dejagnu
# can reliably find it.
target_subdir=${target_alias}
if test ! -d ${target_subdir} ; then
if mkdir ${target_subdir} ; then true
else
echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${target_subdir}" 1>&2
exit 1
fi
fi
build_subdir=${build_alias}
if test x"${build_alias}" != x"${host}" ; then
if test ! -d ${build_subdir} ; then
if mkdir ${build_subdir} ; then true
else
echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${build_subdir}" 1>&2
exit 1
fi
fi
fi
copy_dirs=
# Handle --with-headers=XXX. The contents of the named directory are
# copied to $(tooldir)/sys-include.
if test x"${with_headers}" != x ; then
if test x${is_cross_compiler} = xno ; then
echo 1>&2 '***' --with-headers is only supported when cross compiling
exit 1
fi
case "${exec_prefixoption}" in
"") x=${prefix} ;;
*) x=${exec_prefix} ;;
# Can't build gdb for mingw32 if not native.
case "${host}" in
i[3456]86-*-mingw32) ;; # keep gdb tcl tk expect etc.
*) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix db snavigator gnuserv"
;;
esac
copy_dirs="${copy_dirs} ${with_headers} $x/${target_alias}/sys-include"
fi
;;
*-*-cygwin*)
target_configdirs="$target_configdirs target-libtermcap target-winsup"
noconfigdirs="$noconfigdirs target-gperf target-libgloss ${libgcj}"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
# Handle --with-libs=XXX. Multiple directories are permitted. The
# contents are copied to $(tooldir)/lib.
if test x"${with_libs}" != x ; then
if test x${is_cross_compiler} = xno ; then
echo 1>&2 '***' --with-libs is only supported when cross compiling
exit 1
fi
# Copy the libraries in reverse order, so that files in the first named
# library override files in subsequent libraries.
case "${exec_prefixoption}" in
"") x=${prefix} ;;
*) x=${exec_prefix} ;;
# Can't build gdb for Cygwin if not native.
case "${host}" in
*-*-cygwin*) ;; # keep gdb tcl tk expect etc.
*) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui db snavigator gnuserv"
;;
esac
for l in ${with_libs}; do
copy_dirs="$l $x/${target_alias}/lib ${copy_dirs}"
done
fi
# Handle ${copy_dirs}
set fnord ${copy_dirs}
shift
while test $# != 0 ; do
if test -f $2/COPIED && test x"`cat $2/COPIED`" = x"$1" ; then
:
else
echo Copying $1 to $2
# Use the install script to create the directory and all required
# parent directories.
if test -d $2 ; then
:
else
echo >config.temp
${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
fi
# Copy the directory, assuming we have tar.
# FIXME: Should we use B in the second tar? Not all systems support it.
(cd $1; tar -cf - .) | (cd $2; tar -xpf -)
# It is the responsibility of the user to correctly adjust all
# symlinks. If somebody can figure out how to handle them correctly
# here, feel free to add the code.
echo $1 > $2/COPIED
fi
shift; shift
done
# If both --with-headers and --with-libs are specified, default to
# --without-newlib.
if test x"${with_headers}" != x && test x"${with_libs}" != x ; then
if test x"${with_newlib}" = x ; then
with_newlib=no
fi
fi
# Recognize --with-newlib/--without-newlib.
case ${with_newlib} in
no) skipdirs="${skipdirs} target-newlib" ;;
yes) skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'` ;;
esac
# Default to using --with-stabs for certain targets.
if test x${with_stabs} = x ; then
case "${target}" in
mips*-*-irix6*)
;;
mips*-*-* | alpha*-*-osf*)
with_stabs=yes;
withoptions="${withoptions} --with-stabs"
i[3456]86-*-pe)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
;;
esac
fi
# Configure extra directories which are host specific
case "${host}" in
i[3456]86-*-go32*)
configdirs="$configdirs dosrel" ;;
i[3456]86-*-mingw32*)
configdirs="$configdirs dosrel" ;;
*-cygwin*)
configdirs="$configdirs libtermcap dosrel" ;;
esac
# Remove more programs from consideration, based on the host or
# target this usually means that a port of the program doesn't
# exist yet.
noconfigdirs=""
case "${host}" in
hppa*64*-*-*)
noconfigdirs="$noconfigdirs byacc"
i[3456]86-*-sco3.2v5*)
# The linker does not yet know about weak symbols in COFF,
# and is not configured to handle mixed ELF and COFF.
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;;
i[3456]86-*-vsta)
noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext"
i[3456]86-*-sco*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*)
noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile apache inet itcl tix db snavigator gnuserv libffi"
i[3456]86-*-solaris2*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
i[3456]86-*-mingw32*)
# noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv"
noconfigdirs="expect dejagnu cvs autoconf automake send-pr rcs guile perl texinfo apache inet libtool"
i[3456]86-*-sysv4*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
i[3456]86-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb"
;;
*-*-cygwin*)
noconfigdirs="autoconf automake send-pr rcs guile perl apache inet"
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
*-*-netbsd*)
noconfigdirs="rcs"
m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;;
ppc*-*-pe)
noconfigdirs="patch diff make tk tcl expect dejagnu cvssrc autoconf automake texinfo bison send-pr gprof rcs guile perl apache inet itcl tix db snavigator gnuserv"
m68k-*-elf*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
fi
;;
powerpc-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline"
m68k-*-coff*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
fi
;;
esac
# Save it here so that, even in case of --enable-libgcj, if the Java
# front-end isn't enabled, we still get libgcj disabled.
libgcj_saved=$libgcj
case $enable_libgcj in
yes)
# If we reset it here, it won't get added to noconfigdirs in the
# target-specific build rules, so it will be forcibly enabled
# (unless the Java language itself isn't enabled).
libgcj=
mcore-*-pe*)
# The EPOC C++ environment does not support exceptions or rtti,
# and so building libstdc++-v3 tends not to always work.
noconfigdirs="$noconfigdirs target-libstdc++-v3"
;;
no)
# Make sure we get it printed in the list of not supported target libs.
mmix-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
esac
case "${target}" in
*-*-chorusos)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
mn10200-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
;;
*-*-netbsd*)
# Skip some stuff on all NetBSD configurations.
skipdirs="$skipdirs target-newlib target-libiberty target-libgloss"
# Skip some stuff that's unsupported on some NetBSD configurations.
case "${target}" in
i*86-*-netbsdelf*) ;;
*)
mn10300-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
;;
esac
powerpc-*-aix*)
# copied from rs6000-*-* entry
noconfigdirs="$noconfigdirs gprof cvssrc target-libgloss ${libgcj}"
;;
*-*-netware)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-newlib target-libiberty target-libgloss ${libgcj}"
powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
target_configdirs="$target_configdirs target-winsup"
noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl tix db snavigator gnuserv ${libgcj}"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
;;
*-*-rtems*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
case ${target} in
h8300*-*-* | h8500-*-*)
noconfigdirs="$noconfigdirs target-libf2c"
# This is temporary until we can link against shared libraries
powerpcle-*-solaris*)
noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv ${libgcj}"
;;
*) ;;
esac
;;
*-*-vxworks*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
powerpc-*-beos*)
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
alpha*-dec-osf*)
# ld works, but does not support shared libraries.
# newlib is not 64 bit ready. I'm not sure about fileutils.
# gas doesn't generate exception information.
noconfigdirs="$noconfigdirs gas ld fileutils target-newlib target-libgloss"
powerpc-*-eabi)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
;;
alpha*-*-*vms*)
noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}"
rs6000-*-lynxos*)
# The CVS server code doesn't work on the RS/6000
noconfigdirs="$noconfigdirs target-newlib gprof cvssrc ${libgcj}"
;;
alpha*-*-linux*)
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
rs6000-*-aix*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
;;
alpha*-*-freebsd*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
rs6000-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
;;
alpha*-*-*)
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
m68k-apollo-*)
noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}"
;;
sh-*-linux*)
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
mips*-*-irix5*)
# The GNU linker does not support shared libraries.
noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}"
;;
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
noconfigdirs="$noconfigdirs ${libgcj}"
noconfigdirs="$noconfigdirs target-examples"
noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr"
noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim"
noconfigdirs="$noconfigdirs expect dejagnu"
# the C++ libraries don't build on top of CE's C libraries
noconfigdirs="$noconfigdirs ${libstdcxx_version}"
skipdirs="$skipdirs target-newlib"
case "${host}" in
*-*-cygwin*) ;; # keep gdb and readline
*) noconfigdirs="$noconfigdirs gdb readline ${libstdcxx_version}"
mips*-*-irix6*)
# The GNU assembler does not support IRIX 6.
# Linking libjava exceeds command-line length limits on at least
# IRIX 6.2, but not on IRIX 6.5.
# Also, boehm-gc won't build on IRIX 6.5, according to Jeffrey Oldham
# <oldham@codesourcery.com>
noconfigdirs="$noconfigdirs gas gprof target-libgloss ${libgcj}"
;;
esac
mips*-dec-bsd*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
arc-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
mips*-*-bsd*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
arm-*-pe*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
mipstx39-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
;;
arm-*-oabi*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
mips*-*-linux*)
noconfigdirs="$noconfigdirs target-libffi"
;;
thumb-*-coff)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
mips*-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
;;
thumb-*-elf)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
romp-*-*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
;;
thumb-*-oabi)
sh-*-*)
case "${host}" in
i[3456]86-*-vsta) ;; # don't add gprof back in
i[3456]86-*-go32*) ;; # don't add gprof back in
i[3456]86-*-msdosdjgpp*) ;; # don't add gprof back in
*) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
esac
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
strongarm-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
strongarm-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
xscale-*-elf)
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
;;
xscale-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
thumb-*-pe)
sh64-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
arm-*-riscix*)
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;;
avr-*-*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;;
c4x-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
;;
c54x*-*-* | tic54x-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} gcc gdb newlib"
;;
cris-*-*)
sparc-*-elf*)
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
;;
d10v-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
;;
d30v-*-*)
sparc64-*-elf*)
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
;;
fr30-*-elf*)
noconfigdirs="$noconfigdirs ${libgcj}"
sparclite-*-*)
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
;;
frv-*-*)
sparc-*-sunos4*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
noconfigdirs="$noconfigdirs gdb gdbtest target-newlib target-libgloss"
else
use_gnu_ld=no
fi
;;
h8300*-*-*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
h8500-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} target-libf2c"
sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
;;
hppa*64*-*-linux* | parisc*64*-*-linux*)
# In this case, it's because the hppa64-linux target is for
# the kernel only at this point and has no libc, and thus no
# headers, crt*.o, etc., all of which are needed by these.
noconfigdirs="$noconfigdirs target-zlib"
v810-*-*)
noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} opcodes target-libgloss ${libgcj}"
;;
hppa*-*-*elf* | \
parisc*-*-linux* | hppa*-*-linux* | \
hppa*-*-lites* | \
hppa*64*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
# Do configure ld/binutils/gas for this case.
v850-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
hppa*-*-*)
# According to Alexandre Oliva <aoliva@redhat.com>, libjava won't
# build on HP-UX 10.20.
noconfigdirs="$noconfigdirs ld shellutils ${libgcj}"
v850e-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
ia64*-*-elf*)
# No gdb support yet.
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb"
v850ea-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
ia64*-**-hpux*)
# No gdb or ld support yet.
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld"
vax-*-vms)
noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}"
;;
i[3456]86-*-coff | i[3456]86-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
vax-*-*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
i[34567]86-*-freebsd*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
ip2k-*-*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;;
s390*-*-linux*)
# The libffi port is not yet in the GCC tree
*-*-lynxos*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;;
i[3456]86-*-linux*)
# This section makes it possible to build newlib natively on linux.
# If we are using a cross compiler then don't configure newlib.
if test x${is_cross_compiler} != xno ; then
noconfigdirs="$noconfigdirs target-newlib"
fi
noconfigdirs="$noconfigdirs target-libgloss"
# If we are not using a cross compiler, do configure newlib.
# Note however, that newlib will only be configured in this situation
# if the --with-newlib option has been given, because otherwise
# 'target-newlib' will appear in skipdirs.
*-*-macos* | \
*-*-mpw*)
# Macs want a resource compiler.
configdirs="$configdirs grez"
noconfigdirs="$noconfigdirs ${libgcj}"
;;
*-*-linux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
i[3456]86-*-mingw32*)
target_configdirs="$target_configdirs target-mingw"
noconfigdirs="$noconfigdirs expect target-libgloss ${libgcj}"
esac
# Can't build gdb for mingw32 if not native.
case "${host}" in
i[3456]86-*-mingw32) ;; # keep gdb tcl tk expect etc.
*) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix db snavigator gnuserv"
;;
esac
;;
*-*-cygwin*)
target_configdirs="$target_configdirs target-libtermcap target-winsup"
noconfigdirs="$noconfigdirs target-gperf target-libgloss ${libgcj}"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
# If we aren't building newlib, then don't build libgloss, since libgloss
# depends upon some newlib header files.
case "${noconfigdirs}" in
*target-libgloss*) ;;
*target-newlib*) noconfigdirs="$noconfigdirs target-libgloss" ;;
esac
# Can't build gdb for Cygwin if not native.
case "${host}" in
*-*-cygwin*) ;; # keep gdb tcl tk expect etc.
*) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui db snavigator gnuserv"
;;
esac
;;
i[3456]86-*-pe)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
;;
i[3456]86-*-sco3.2v5*)
# The linker does not yet know about weak symbols in COFF,
# and is not configured to handle mixed ELF and COFF.
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;;
i[3456]86-*-sco*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
i[3456]86-*-solaris2*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
i[3456]86-*-sysv4*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
i[3456]86-*-beos*)
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;;
m68k-*-elf*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
fi
;;
m68k-*-coff*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
# Figure out what language subdirectories are present.
# Look if the user specified --enable-languages="..."; if not, use
# the environment variable $LANGUAGES if defined. $LANGUAGES might
# go away some day.
# NB: embedded tabs in this IF block -- do not untabify
if test x"${enable_languages+set}" != xset; then
if test x"${LANGUAGES+set}" = xset; then
enable_languages="${LANGUAGES}"
echo configure.in: warning: setting LANGUAGES is deprecated, use --enable-languages instead 1>&2
else
enable_languages=all
fi
;;
mcore-*-pe*)
# The EPOC C++ environment does not support exceptions or rtti,
# and so building libstdc++-v3 tends not to always work.
noconfigdirs="$noconfigdirs target-libstdc++-v3"
;;
mmix-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
mn10200-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
else
if test x"${enable_languages}" = x ||
test x"${enable_languages}" = xyes;
then
echo configure.in: --enable-languages needs at least one language argument 1>&2
exit 1
fi
fi
enable_languages=`echo "${enable_languages}" | sed -e 's/[ ,][ ,]*/,/g' -e 's/,$//'`
# First scan to see if an enabled language requires some other language.
# We assume that a given config-lang.in will list all the language
# front ends it requires, even if some are required indirectly.
for lang in ${srcdir}/gcc/*/config-lang.in ..
do
case $lang in
..)
;;
mn10300-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
# The odd quoting in the next line works around
# an apparent bug in bash 1.12 on linux.
${srcdir}/gcc/[*]/config-lang.in)
;;
powerpc-*-aix*)
# copied from rs6000-*-* entry
noconfigdirs="$noconfigdirs gprof cvssrc target-libgloss ${libgcj}"
*)
lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
this_lang_requires=`sed -n -e 's,^lang_requires=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^lang_requires=\([^ ]*\).*$,\1,p' $lang`
for other in $this_lang_requires
do
case ,${enable_languages}, in
*,$other,*)
;;
powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
target_configdirs="$target_configdirs target-winsup"
noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl tix db snavigator gnuserv ${libgcj}"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
*,all,*)
;;
# This is temporary until we can link against shared libraries
powerpcle-*-solaris*)
noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv ${libgcj}"
*,$lang_alias,*)
echo " \`$other' language required by \`$lang_alias'; enabling" 1>&2
enable_languages="$enable_languages,$other"
;;
powerpc-*-beos*)
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
esac
done
;;
powerpc-*-eabi)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
esac
done
subdirs=
for lang in ${srcdir}/gcc/*/config-lang.in ..
do
case $lang in
..) ;;
# The odd quoting in the next line works around
# an apparent bug in bash 1.12 on linux.
${srcdir}/gcc/[*]/config-lang.in) ;;
*)
lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
this_lang_libs=`sed -n -e 's,^target_libs=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^target_libs=\([^ ]*\).*$,\1,p' $lang`
this_lang_dirs=`sed -n -e 's,^lang_dirs=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^lang_dirs=\([^ ]*\).*$,\1,p' $lang`
build_by_default=`sed -n -e 's,^build_by_default=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^build_by_default=\([^ ]*\).*$,\1,p' $lang`
if test "x$lang_alias" = x
then
echo "$lang doesn't set \$language." 1>&2
exit 1
fi
case ${build_by_default},${enable_languages}, in
*,$lang_alias,*) add_this_lang=yes ;;
no,*) add_this_lang=no ;;
*,all,*) add_this_lang=yes ;;
*) add_this_lang=no ;;
esac
if test x"${add_this_lang}" = xyes; then
eval target_libs='"$target_libs "'\"$this_lang_libs\"
else
eval noconfigdirs='"$noconfigdirs "'\"$this_lang_libs $this_lang_dirs\"
fi
;;
rs6000-*-lynxos*)
# The CVS server code doesn't work on the RS/6000
noconfigdirs="$noconfigdirs target-newlib gprof cvssrc ${libgcj}"
;;
rs6000-*-aix*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
;;
rs6000-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
esac
done
# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
# $target_configdirs.
# If we have the source for $noconfigdirs entries, add them to $notsupp.
notsupp=""
for dir in . $skipdirs $noconfigdirs ; do
dirname=`echo $dir | sed -e s/target-//g`
if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure \
|| test -r $srcdir/$dirname/configure.in ; then
if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
true
else
notsupp="$notsupp $dir"
fi
fi
fi
if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure \
|| test -r $srcdir/$dirname/configure.in ; then
if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
true
else
notsupp="$notsupp $dir"
fi
fi
fi
done
# Sometimes the tools are distributed with libiberty but with no other
# libraries. In that case, we don't want to build target-libiberty.
if test -n "${target_configdirs}" ; then
others=
for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
if test "$i" != "libiberty" ; then
if test -r $srcdir/$i/configure || test -r $srcdir/$i/configure.in ; then
others=yes;
break;
fi
fi
done
if test -z "${others}" ; then
target_configdirs=
fi
fi
# Deconfigure all subdirectories, in case we are changing the
# configuration from one where a subdirectory is supported to one where it
# is not.
if test -z "${norecursion}" && test -n "${configdirs}" ; then
for i in `echo ${configdirs} | sed -e s/target-//g` ; do
rm -f $i/Makefile
done
fi
if test -z "${norecursion}" && test -n "${target_configdirs}" ; then
for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
rm -f ${target_subdir}/$i/Makefile
done
fi
# Quietly strip out all directories which aren't configurable in this tree.
# This relies on all configurable subdirectories being autoconfiscated, which
# is now the case.
configdirs_all="$configdirs"
configdirs=
for i in ${configdirs_all} ; do
if test -f ${srcdir}/$i/configure ; then
configdirs="${configdirs} $i"
fi
done
target_configdirs_all="$target_configdirs"
target_configdirs=
for i in ${target_configdirs_all} ; do
j=`echo $i | sed -e s/target-//g`
if test -f ${srcdir}/$j/configure ; then
target_configdirs="${target_configdirs} $i"
fi
done
# Produce a warning message for the subdirs we can't configure.
# This isn't especially interesting in the Cygnus tree, but in the individual
# FSF releases, it's important to let people know when their machine isn't
# supported by the one or two programs in a package.
if test -n "${notsupp}" && test -z "${norecursion}" ; then
# If $appdirs is non-empty, at least one of those directories must still
# be configured, or we error out. (E.g., if the gas release supports a
# specified target in some subdirs but not the gas subdir, we shouldn't
# pretend that all is well.)
if test -n "$appdirs" ; then
for dir in $appdirs ; do
if test -r $dir/Makefile.in ; then
if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
appdirs=""
break
fi
if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
appdirs=""
break
fi
fi
done
if test -n "$appdirs" ; then
echo "*** This configuration is not supported by this package." 1>&2
exit 1
fi
fi
# Okay, some application will build, or we don't care to check. Still
# notify of subdirs not getting built.
echo "*** This configuration is not supported in the following subdirectories:" 1>&2
echo " ${notsupp}" 1>&2
echo " (Any other directories should still work fine.)" 1>&2
fi
case "$host" in
*msdosdjgpp*)
enable_gdbtk=no ;;
esac
# Determine whether gdb needs tk/tcl or not.
case "$enable_gdbtk" in
no)
GDB_TK="" ;;
*)
GDB_TK="all-tcl all-tk all-itcl all-tix all-libgui" ;;
esac
copy_dirs=
# Handle --with-headers=XXX. The contents of the named directory are
# copied to $(tooldir)/sys-include.
if test x"${with_headers}" != x ; then
if test x${is_cross_compiler} = xno ; then
echo 1>&2 '***' --with-headers is only supported when cross compiling
exit 1
fi
case "${exec_prefixoption}" in
"") x=${prefix} ;;
*) x=${exec_prefix} ;;
esac
copy_dirs="${copy_dirs} ${with_headers} $x/${target_alias}/sys-include"
fi
# Handle --with-libs=XXX. Multiple directories are permitted. The
# contents are copied to $(tooldir)/lib.
if test x"${with_libs}" != x ; then
if test x${is_cross_compiler} = xno ; then
echo 1>&2 '***' --with-libs is only supported when cross compiling
exit 1
fi
# Copy the libraries in reverse order, so that files in the first named
# library override files in subsequent libraries.
case "${exec_prefixoption}" in
"") x=${prefix} ;;
*) x=${exec_prefix} ;;
esac
for l in ${with_libs}; do
copy_dirs="$l $x/${target_alias}/lib ${copy_dirs}"
done
fi
# Handle ${copy_dirs}
set fnord ${copy_dirs}
shift
while test $# != 0 ; do
if test -f $2/COPIED && test x"`cat $2/COPIED`" = x"$1" ; then
:
else
echo Copying $1 to $2
# Use the install script to create the directory and all required
# parent directories.
if test -d $2 ; then
:
else
echo >config.temp
${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
fi
# Copy the directory, assuming we have tar.
# FIXME: Should we use B in the second tar? Not all systems support it.
(cd $1; tar -cf - .) | (cd $2; tar -xpf -)
# It is the responsibility of the user to correctly adjust all
# symlinks. If somebody can figure out how to handle them correctly
# here, feel free to add the code.
echo $1 > $2/COPIED
fi
shift; shift
done
# Work in distributions that contain no compiler tools, like Autoconf.
tentative_cc=""
if test -d ${srcdir}/config ; then
case "${host}" in
m68k-hp-hpux*)
# Avoid "too much defining" errors from HPUX compiler.
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hp300"
;;
m68k-apollo-*)
noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}"
m68k-apollo-sysv*)
tentative_cc="cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG"
host_makefile_frag="config/mh-apollo68"
;;
mips*-*-irix5*)
# The GNU linker does not support shared libraries.
noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}"
m68k-apollo-bsd*)
#None of the Apollo compilers can compile gas or binutils. The preprocessor
# chokes on bfd, the compiler won't let you assign integers to enums, and
# other problems. Defining CC to gcc is a questionable way to say "don't use
# the apollo compiler" (the preferred version of GCC could be called cc,
# or whatever), but I'm not sure leaving CC as cc is any better...
#CC=cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DNO_STDARG
tentative_cc=gcc
host_makefile_frag="config/mh-a68bsd"
;;
mips*-*-irix6*)
# The GNU assembler does not support IRIX 6.
# Linking libjava exceeds command-line length limits on at least
# IRIX 6.2, but not on IRIX 6.5.
# Also, boehm-gc won't build on IRIX 6.5, according to Jeffrey Oldham
# <oldham@codesourcery.com>
noconfigdirs="$noconfigdirs gas gprof target-libgloss ${libgcj}"
m88k-dg-dgux*)
tentative_cc="gcc -Wall -ansi -D__using_DGUX"
host_makefile_frag="config/mh-dgux"
;;
mips*-dec-bsd*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
m88k-harris-cxux*)
# Under CX/UX, we want to tell the compiler to use ANSI mode.
tentative_cc="cc -Xa"
host_makefile_frag="config/mh-cxux"
;;
mips*-*-bsd*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
m88k-motorola-sysv*)
host_makefile_frag="config/mh-delta88"
;;
mipstx39-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
mips*-dec-ultrix*)
tentative_cc="cc -Wf,-XNg1000"
host_makefile_frag="config/mh-decstation"
;;
mips*-*-linux*)
noconfigdirs="$noconfigdirs target-libffi"
mips*-nec-sysv4*)
# The C compiler on NEC MIPS SVR4 needs bigger tables.
tentative_cc="cc -ZXNd=5000 -ZXNg=1000"
host_makefile_frag="config/mh-necv4"
;;
mips*-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
mips*-sgi-irix6*)
host_makefile_frag="config/mh-irix6"
;;
romp-*-*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
mips*-sgi-irix5*)
host_makefile_frag="config/mh-irix5"
;;
sh-*-*)
case "${host}" in
i[3456]86-*-vsta) ;; # don't add gprof back in
i[3456]86-*-go32*) ;; # don't add gprof back in
i[3456]86-*-msdosdjgpp*) ;; # don't add gprof back in
*) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
esac
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
mips*-sgi-irix4*)
# Tell compiler to use K&R C. We can't compile under the SGI Ansi
# environment. Also bump switch table size so that cp-parse will
# compile. Bump string length limit so linker builds.
tentative_cc="cc -cckr -Wf,-XNg1500 -Wf,-XNk1000 -Wf,-XNh2000 -Wf,-XNl8192"
;;
sh64-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
mips*-sgi-irix3*)
host_makefile_frag="config/mh-sysv"
;;
sparc-*-elf*)
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
mips*-*-sysv4*)
host_makefile_frag="config/mh-sysv4"
;;
sparc64-*-elf*)
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
mips*-*-sysv*)
# This is for a MIPS running RISC/os 4.52C.
# This is needed for GDB, but needs to be in the top-level make because
# if a library is compiled with the bsd headers and gets linked with the
# sysv system libraries all hell can break loose (e.g. a jmp_buf might be
# a different size).
# ptrace(2) apparently has problems in the BSD environment. No workaround is
# known except to select the sysv environment. Could we use /proc instead?
# These "sysv environments" and "bsd environments" often end up being a pain.
#
# This is not part of CFLAGS because perhaps not all C compilers have this
# option.
tentative_cc="cc -systype sysv"
host_makefile_frag="config/mh-riscos"
;;
sparclite-*-*)
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
i370-ibm-opened*)
tentative_cc="c89"
host_makefile_frag="config/mh-openedition"
;;
sparc-*-sunos4*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
noconfigdirs="$noconfigdirs gdb gdbtest target-newlib target-libgloss"
else
use_gnu_ld=no
fi
i[3456]86-*-sysv5*)
host_makefile_frag="config/mh-sysv5"
;;
sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
i[3456]86-*-dgux*)
tentative_cc="gcc -Wall -ansi -D__using_DGUX"
host_makefile_frag="config/mh-dgux386"
;;
v810-*-*)
noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} opcodes target-libgloss ${libgcj}"
i[3456]86-ncr-sysv4.3*)
# The MetaWare compiler will generate a copyright message unless you
# turn it off by adding the -Hnocopyr flag.
tentative_cc="cc -Hnocopyr"
host_makefile_frag="config/mh-ncrsvr43"
;;
v850-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
i[3456]86-ncr-sysv4*)
# for an NCR 3000 (i486/SVR4) system.
# The NCR 3000 ships with a MetaWare compiler installed as /bin/cc.
# This compiler not only emits obnoxious copyright messages every time
# you run it, but it chokes and dies on a whole bunch of GNU source
# files. Default to using the AT&T compiler installed in /usr/ccs/ATT/cc.
tentative_cc="/usr/ccs/ATT/cc"
host_makefile_frag="config/mh-ncr3000"
;;
v850e-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
i[3456]86-*-sco3.2v5*)
host_makefile_frag="config/mh-sysv"
;;
v850ea-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
i[3456]86-*-sco*)
# The native C compiler botches some simple uses of const. Unfortunately,
# it doesn't defined anything like "__sco__" for us to test for in ansidecl.h.
tentative_cc="cc -Dconst="
host_makefile_frag="config/mh-sco"
;;
vax-*-vms)
noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}"
i[3456]86-*-udk*)
host_makefile_frag="config/mh-sysv5"
;;
vax-*-*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
i[3456]86-*-isc*)
host_makefile_frag="config/mh-sysv"
;;
ip2k-*-*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
i[3456]86-*-solaris2*)
host_makefile_frag="config/mh-sysv4"
;;
*-*-lynxos*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
i[3456]86-*-aix*)
host_makefile_frag="config/mh-aix386"
;;
*-*-macos* | \
*-*-mpw*)
# Macs want a resource compiler.
configdirs="$configdirs grez"
noconfigdirs="$noconfigdirs ${libgcj}"
i[3456]86-*-msdosdjgpp*)
host_makefile_frag="config/mh-djgpp"
;;
*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
*-cygwin*)
host_makefile_frag="config/mh-cygwin"
;;
esac
# If we aren't building newlib, then don't build libgloss, since libgloss
# depends upon some newlib header files.
case "${noconfigdirs}" in
*target-libgloss*) ;;
*target-newlib*) noconfigdirs="$noconfigdirs target-libgloss" ;;
esac
# Make sure we don't let GNU ld be added if we didn't want it.
if test x$with_gnu_ld = xno ; then
use_gnu_ld=no
noconfigdirs="$noconfigdirs ld"
fi
# Make sure we don't let GNU as be added if we didn't want it.
if test x$with_gnu_as = xno ; then
use_gnu_as=no
noconfigdirs="$noconfigdirs gas"
fi
# Figure out what language subdirectories are present.
# Look if the user specified --enable-languages="..."; if not, use
# the environment variable $LANGUAGES if defined. $LANGUAGES might
# go away some day.
# NB: embedded tabs in this IF block -- do not untabify
if test x"${enable_languages+set}" != xset; then
if test x"${LANGUAGES+set}" = xset; then
enable_languages="${LANGUAGES}"
echo configure.in: warning: setting LANGUAGES is deprecated, use --enable-languages instead 1>&2
else
enable_languages=all
fi
else
if test x"${enable_languages}" = x ||
test x"${enable_languages}" = xyes;
then
echo configure.in: --enable-languages needs at least one language argument 1>&2
exit 1
fi
fi
enable_languages=`echo "${enable_languages}" | sed -e 's/[ ,][ ,]*/,/g' -e 's/,$//'`
# First scan to see if an enabled language requires some other language.
# We assume that a given config-lang.in will list all the language
# front ends it requires, even if some are required indirectly.
for lang in ${srcdir}/gcc/*/config-lang.in ..
do
case $lang in
..)
*-mingw32*)
host_makefile_frag="config/mh-mingw32"
;;
# The odd quoting in the next line works around
# an apparent bug in bash 1.12 on linux.
${srcdir}/gcc/[*]/config-lang.in)
*-interix*)
host_makefile_frag="config/mh-interix"
;;
*)
lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
this_lang_requires=`sed -n -e 's,^lang_requires=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^lang_requires=\([^ ]*\).*$,\1,p' $lang`
for other in $this_lang_requires
do
case ,${enable_languages}, in
*,$other,*)
vax-*-ultrix2*)
# The old BSD pcc isn't up to compiling parts of gdb so use gcc
tentative_cc=gcc
;;
*,all,*)
*-*-solaris2*)
host_makefile_frag="config/mh-solaris"
;;
*,$lang_alias,*)
echo " \`$other' language required by \`$lang_alias'; enabling" 1>&2
enable_languages="$enable_languages,$other"
m68k-sun-sunos*)
# Sun's C compiler needs the -J flag to be able to compile cp-parse.c
# without overflowing the jump tables (-J says to use a 32 bit table)
tentative_cc="cc -J"
;;
esac
done
*-hp-hpux[78]*)
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux8"
;;
esac
done
subdirs=
for lang in ${srcdir}/gcc/*/config-lang.in ..
do
case $lang in
..) ;;
# The odd quoting in the next line works around
# an apparent bug in bash 1.12 on linux.
${srcdir}/gcc/[*]/config-lang.in) ;;
*)
lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
this_lang_libs=`sed -n -e 's,^target_libs=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^target_libs=\([^ ]*\).*$,\1,p' $lang`
this_lang_dirs=`sed -n -e 's,^lang_dirs=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^lang_dirs=\([^ ]*\).*$,\1,p' $lang`
build_by_default=`sed -n -e 's,^build_by_default=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^build_by_default=\([^ ]*\).*$,\1,p' $lang`
if test "x$lang_alias" = x
then
echo "$lang doesn't set \$language." 1>&2
exit 1
fi
case ${build_by_default},${enable_languages}, in
*,$lang_alias,*) add_this_lang=yes ;;
no,*) add_this_lang=no ;;
*,all,*) add_this_lang=yes ;;
*) add_this_lang=no ;;
esac
if test x"${add_this_lang}" = xyes; then
eval target_libs='"$target_libs "'\"$this_lang_libs\"
else
eval noconfigdirs='"$noconfigdirs "'\"$this_lang_libs $this_lang_dirs\"
fi
*-hp-hpux*)
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux"
;;
esac
done
# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
# $target_configdirs.
# If we have the source for $noconfigdirs entries, add them to $notsupp.
notsupp=""
for dir in . $skipdirs $noconfigdirs ; do
dirname=`echo $dir | sed -e s/target-//g`
if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure \
|| test -r $srcdir/$dirname/configure.in ; then
if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
true
else
notsupp="$notsupp $dir"
fi
fi
fi
if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure \
|| test -r $srcdir/$dirname/configure.in ; then
if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
true
else
notsupp="$notsupp $dir"
fi
fi
fi
done
# Sometimes the tools are distributed with libiberty but with no other
# libraries. In that case, we don't want to build target-libiberty.
if test -n "${target_configdirs}" ; then
others=
for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
if test "$i" != "libiberty" ; then
if test -r $srcdir/$i/configure || test -r $srcdir/$i/configure.in ; then
others=yes;
break;
fi
fi
done
if test -z "${others}" ; then
target_configdirs=
fi
*-*-hiux*)
tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux"
;;
rs6000-*-lynxos*)
# /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/usr/cygnus/progressive/bin/gcc"
host_makefile_frag="config/mh-lynxrs6k"
;;
*-*-lynxos*)
# /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/bin/gcc"
;;
*-*-sysv4*)
host_makefile_frag="config/mh-sysv4"
;;
*-*-sysv*)
host_makefile_frag="config/mh-sysv"
;;
esac
fi
# Deconfigure all subdirectories, in case we are changing the
# configuration from one where a subdirectory is supported to one where it
# is not.
if test -z "${norecursion}" && test -n "${configdirs}" ; then
for i in `echo ${configdirs} | sed -e s/target-//g` ; do
rm -f $i/Makefile
done
fi
if test -z "${norecursion}" && test -n "${target_configdirs}" ; then
for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
rm -f ${target_subdir}/$i/Makefile
rm -f mh-frag
if test -n "${host_makefile_frag}" ; then
for f in ${host_makefile_frag}
do
cat ${srcdir}/$f >> mh-frag
done
host_makefile_frag=mh-frag
fi
# Quietly strip out all directories which aren't configurable in this tree.
# This relies on all configurable subdirectories being autoconfiscated, which
# is now the case.
configdirs_all="$configdirs"
configdirs=
for i in ${configdirs_all} ; do
if test -f ${srcdir}/$i/configure ; then
configdirs="${configdirs} $i"
# If we aren't going to be using gcc, see if we can extract a definition
# of CC from the fragment.
# Actually, use the 'pre-extracted' version above.
if test -z "${CC}" && test "${build}" = "${host}" ; then
IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
found=
for dir in $PATH; do
test -z "$dir" && dir=.
if test -f $dir/gcc; then
found=yes
break
fi
done
target_configdirs_all="$target_configdirs"
target_configdirs=
for i in ${target_configdirs_all} ; do
j=`echo $i | sed -e s/target-//g`
if test -f ${srcdir}/$j/configure ; then
target_configdirs="${target_configdirs} $i"
done
IFS="$save_ifs"
if test -z "${found}" && test -n "${tentative_cc}" ; then
CC=$tentative_cc
fi
done
fi
# Produce a warning message for the subdirs we can't configure.
# This isn't especially interesting in the Cygnus tree, but in the individual
# FSF releases, it's important to let people know when their machine isn't
# supported by the one or two programs in a package.
case "${target}" in
v810*)
target_makefile_frag="${target_makefile_frag} config/mt-v810"
;;
i[3456]86-*-netware*)
target_makefile_frag="${target_makefile_frag} config/mt-netware"
;;
powerpc-*-netware*)
target_makefile_frag="${target_makefile_frag} config/mt-netware"
;;
alpha*-*-linux*)
target_makefile_frag="${target_makefile_frag} config/mt-linux"
target_makefile_frag="${target_makefile_frag} config/mt-alphaieee"
;;
alpha*-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-alphaieee"
;;
*-*-linux*)
target_makefile_frag="${target_makefile_frag} config/mt-linux"
;;
*-*-aix4.[3456789]* | *-*-aix[56789].*)
target_makefile_frag="${target_makefile_frag} config/mt-aix43"
;;
mips*-*-pe | sh*-*-pe | *arm-wince-pe)
target_makefile_frag="${target_makefile_frag} config/mt-wince"
;;
esac
if test -n "${notsupp}" && test -z "${norecursion}" ; then
# If $appdirs is non-empty, at least one of those directories must still
# be configured, or we error out. (E.g., if the gas release supports a
# specified target in some subdirs but not the gas subdir, we shouldn't
# pretend that all is well.)
if test -n "$appdirs" ; then
for dir in $appdirs ; do
if test -r $dir/Makefile.in ; then
if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
appdirs=""
break
fi
if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
appdirs=""
break
fi
fi
# If --enable-target-optspace always use -Os instead of -O2 to build
# the target libraries, similarly if it is not specified, use -Os
# on selected platforms.
case "${enable_target_optspace}:${target}" in
yes:*)
target_makefile_frag="${target_makefile_frag} config/mt-ospace"
;;
:d30v-*)
target_makefile_frag="${target_makefile_frag} config/mt-d30v"
;;
:m32r-* | :d10v-* | :fr30-*)
target_makefile_frag="${target_makefile_frag} config/mt-ospace"
;;
no:* | :*)
;;
*)
echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2
;;
esac
rm -f mt-frag
if test -n "${target_makefile_frag}" ; then
for f in ${target_makefile_frag}
do
cat ${srcdir}/$f >> mt-frag
done
if test -n "$appdirs" ; then
echo "*** This configuration is not supported by this package." 1>&2
exit 1
fi
fi
# Okay, some application will build, or we don't care to check. Still
# notify of subdirs not getting built.
echo "*** This configuration is not supported in the following subdirectories:" 1>&2
echo " ${notsupp}" 1>&2
echo " (Any other directories should still work fine.)" 1>&2
target_makefile_frag=mt-frag
fi
# Set with_gnu_as and with_gnu_ld as appropriate.
......@@ -1269,47 +1247,63 @@ fi
# want to do that, then you should use the --without-gnu-as and
# --without-gnu-ld options for the configure script.
if test x${use_gnu_as} = x ; then
if test x${with_gnu_as} != xno && echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 && test -d ${srcdir}/gas ; then
if test x${use_gnu_as} = x &&
echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
with_gnu_as=yes
withoptions="$withoptions --with-gnu-as"
fi
fi
if test x${use_gnu_ld} = x ; then
if test x${with_gnu_ld} != xno && echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 && test -d ${srcdir}/ld ; then
if test x${use_gnu_ld} = x &&
echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
with_gnu_ld=yes
withoptions="$withoptions --with-gnu-ld"
fi
fi
# If using newlib, add --with-newlib to the withoptions so that gcc/configure
# can detect this case.
if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 && test -d ${srcdir}/newlib ; then
if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
with_newlib=yes
withoptions="$withoptions --with-newlib"
fi
rm -f mt-frag
if test -n "${target_makefile_frag}" ; then
for f in ${target_makefile_frag}
do
cat ${srcdir}/$f >> mt-frag
done
target_makefile_frag=mt-frag
# We default to --with-shared on platforms where -fpic is meaningless.
# Well, we don't yet, but we will.
if false && test "${host}" = "${target}" && test x${enable_shared} = x ; then
case "${target}" in
alpha*-dec-osf*) enable_shared=yes ;;
alpha*-*-linux*) enable_shared=yes ;;
mips-sgi-irix5*) enable_shared=yes ;;
*) enable_shared=no ;;
esac
fi
case "$host" in
*msdosdjgpp*)
enable_gdbtk=no ;;
case "${enable_shared}" in
yes) shared=yes ;;
no) shared=no ;;
"") shared=no ;;
*) shared=yes ;;
esac
# Determine whether gdb needs tk/tcl or not.
case "$enable_gdbtk" in
no)
GDB_TK="" ;;
*)
GDB_TK="all-tcl all-tk all-itcl all-tix all-libgui" ;;
# Default to using --with-stabs for certain targets.
if test x${with_stabs} = x ; then
case "${target}" in
mips*-*-irix6*)
;;
mips*-*-* | alpha*-*-osf*)
with_stabs=yes;
withoptions="${withoptions} --with-stabs"
;;
esac
fi
# hpux11 in 64bit mode has libraries in a weird place. Arrange to find
# them automatically.
case "${host}" in
hppa*64*-*-hpux11*)
withoptions="$withoptions -x-libraries=/usr/lib/pa20_64 -x-includes=/usr/X11R6/include"
;;
esac
# post-target:
......@@ -1520,8 +1514,7 @@ if test "${build}" = "${host}" && test -d ${srcdir}/gcc; then
fi
if test "x${use_gnu_ld}" = x && test "x${with_gnu_ld}" != xno &&
echo " ${configdirs} " | grep " ld " > /dev/null &&
test -d ${srcdir}/ld; then
echo " ${configdirs} " | grep " ld " > /dev/null ; then
# Arrange for us to find uninstalled linker scripts.
FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/ld'
fi
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment