Commit 55380b08 by Nathanael Nerode

Reorganize, remove now-redundant tests.

From-SVN: r55154
parent 6bfa5aac
2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org> 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. * Makefile.in: Eliminate last reference to LIBGCC1_TEST.
2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org> 2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
......
...@@ -127,1133 +127,1111 @@ else ...@@ -127,1133 +127,1111 @@ else
is_cross_compiler=yes is_cross_compiler=yes
fi fi
# Work in distributions that contain no compiler tools, like Autoconf. # We always want to use the same name for this directory, so that dejagnu
tentative_cc="" # can reliably find it.
if test -d ${srcdir}/config ; then 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 case "${host}" in
m68k-hp-hpux*) i[3456]86-*-go32*)
# Avoid "too much defining" errors from HPUX compiler. configdirs="$configdirs dosrel" ;;
tentative_cc="cc -Wp,-H256000" i[3456]86-*-mingw32*)
host_makefile_frag="config/mh-hp300" 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*) i[3456]86-*-vsta)
tentative_cc="cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG" 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"
host_makefile_frag="config/mh-apollo68"
;; ;;
m68k-apollo-bsd*) i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*)
#None of the Apollo compilers can compile gas or binutils. The preprocessor noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile apache inet itcl tix db snavigator gnuserv libffi"
# 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"
;; ;;
m88k-dg-dgux*) i[3456]86-*-mingw32*)
tentative_cc="gcc -Wall -ansi -D__using_DGUX" # 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"
host_makefile_frag="config/mh-dgux" noconfigdirs="expect dejagnu cvs autoconf automake send-pr rcs guile perl texinfo apache inet libtool"
;; ;;
m88k-harris-cxux*) i[3456]86-*-beos*)
# Under CX/UX, we want to tell the compiler to use ANSI mode. noconfigdirs="$noconfigdirs tk itcl tix libgui gdb"
tentative_cc="cc -Xa"
host_makefile_frag="config/mh-cxux"
;; ;;
m88k-motorola-sysv*) *-*-cygwin*)
host_makefile_frag="config/mh-delta88" noconfigdirs="autoconf automake send-pr rcs guile perl apache inet"
;; ;;
mips*-dec-ultrix*) *-*-netbsd*)
tentative_cc="cc -Wf,-XNg1000" noconfigdirs="rcs"
host_makefile_frag="config/mh-decstation"
;; ;;
mips*-nec-sysv4*) ppc*-*-pe)
# The C compiler on NEC MIPS SVR4 needs bigger tables. 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"
tentative_cc="cc -ZXNd=5000 -ZXNg=1000"
host_makefile_frag="config/mh-necv4"
;; ;;
mips*-sgi-irix6*) powerpc-*-beos*)
host_makefile_frag="config/mh-irix6" noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline"
;; ;;
mips*-sgi-irix5*) esac
host_makefile_frag="config/mh-irix5"
# 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*) no)
# Tell compiler to use K&R C. We can't compile under the SGI Ansi # Make sure we get it printed in the list of not supported target libs.
# environment. Also bump switch table size so that cp-parse will noconfigdirs="$noconfigdirs ${libgcj}"
# compile. Bump string length limit so linker builds.
tentative_cc="cc -cckr -Wf,-XNg1500 -Wf,-XNk1000 -Wf,-XNh2000 -Wf,-XNl8192"
;; ;;
mips*-sgi-irix3*) esac
host_makefile_frag="config/mh-sysv"
case "${target}" in
*-*-chorusos)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
mips*-*-sysv4*) *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
host_makefile_frag="config/mh-sysv4" noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
mips*-*-sysv*) *-*-netbsd*)
# This is for a MIPS running RISC/os 4.52C. # 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 # Skip some stuff that's unsupported on some NetBSD configurations.
# if a library is compiled with the bsd headers and gets linked with the case "${target}" in
# sysv system libraries all hell can break loose (e.g. a jmp_buf might be i*86-*-netbsdelf*) ;;
# a different size). *)
# ptrace(2) apparently has problems in the BSD environment. No workaround is noconfigdirs="$noconfigdirs ${libgcj}"
# 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"
;; ;;
i370-ibm-opened*) esac
tentative_cc="c89"
host_makefile_frag="config/mh-openedition"
;; ;;
i[3456]86-*-sysv5*) *-*-netware)
host_makefile_frag="config/mh-sysv5" noconfigdirs="$noconfigdirs ${libstdcxx_version} target-newlib target-libiberty target-libgloss ${libgcj}"
;; ;;
i[3456]86-*-dgux*) *-*-rtems*)
tentative_cc="gcc -Wall -ansi -D__using_DGUX" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
host_makefile_frag="config/mh-dgux386" 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 esac
# turn it off by adding the -Hnocopyr flag.
tentative_cc="cc -Hnocopyr"
host_makefile_frag="config/mh-ncrsvr43"
;; ;;
i[3456]86-ncr-sysv4*) *-*-vxworks*)
# for an NCR 3000 (i486/SVR4) system. noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
# 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"
;; ;;
i[3456]86-*-sco3.2v5*) alpha*-dec-osf*)
host_makefile_frag="config/mh-sysv" # 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*) alpha*-*-*vms*)
# The native C compiler botches some simple uses of const. Unfortunately, noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}"
# 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"
;; ;;
i[3456]86-*-udk*) alpha*-*-linux*)
host_makefile_frag="config/mh-sysv5" # newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;; ;;
i[3456]86-*-isc*) alpha*-*-freebsd*)
host_makefile_frag="config/mh-sysv" noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;; ;;
i[3456]86-*-solaris2*) alpha*-*-*)
host_makefile_frag="config/mh-sysv4" # newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
i[3456]86-*-aix*) sh-*-linux*)
host_makefile_frag="config/mh-aix386" noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
;; ;;
i[3456]86-*-msdosdjgpp*) sh*-*-pe|mips*-*-pe|*arm-wince-pe)
host_makefile_frag="config/mh-djgpp" 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*) esac
host_makefile_frag="config/mh-cygwin"
;; ;;
*-mingw32*) arc-*-*)
host_makefile_frag="config/mh-mingw32" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
*-interix*) arm-*-pe*)
host_makefile_frag="config/mh-interix" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
vax-*-ultrix2*) arm-*-oabi*)
# The old BSD pcc isn't up to compiling parts of gdb so use gcc noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
tentative_cc=gcc
;; ;;
*-*-solaris2*) thumb-*-coff)
host_makefile_frag="config/mh-solaris" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
m68k-sun-sunos*) thumb-*-elf)
# Sun's C compiler needs the -J flag to be able to compile cp-parse.c noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
# without overflowing the jump tables (-J says to use a 32 bit table)
tentative_cc="cc -J"
;; ;;
*-hp-hpux[78]*) thumb-*-oabi)
tentative_cc="cc -Wp,-H256000" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
host_makefile_frag="config/mh-hpux8"
;; ;;
*-hp-hpux*) strongarm-*-elf)
tentative_cc="cc -Wp,-H256000" noconfigdirs="$noconfigdirs ${libgcj}"
host_makefile_frag="config/mh-hpux"
;; ;;
*-*-hiux*) strongarm-*-coff)
tentative_cc="cc -Wp,-H256000" noconfigdirs="$noconfigdirs ${libgcj}"
host_makefile_frag="config/mh-hpux"
;; ;;
rs6000-*-lynxos*) xscale-*-elf)
# /bin/cc is less than useful for our purposes. Always use GCC noconfigdirs="$noconfigdirs target-libffi target-qthreads"
tentative_cc="/usr/cygnus/progressive/bin/gcc"
host_makefile_frag="config/mh-lynxrs6k"
;; ;;
*-*-lynxos*) xscale-*-coff)
# /bin/cc is less than useful for our purposes. Always use GCC noconfigdirs="$noconfigdirs ${libgcj}"
tentative_cc="/bin/gcc"
;; ;;
*-*-sysv4*) thumb-*-pe)
host_makefile_frag="config/mh-sysv4" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
*-*-sysv*) arm-*-riscix*)
host_makefile_frag="config/mh-sysv" noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;; ;;
esac avr-*-*)
fi noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
# 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"
;; ;;
esac c4x-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
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"
;; ;;
i[3456]86-*-netware*) c54x*-*-* | tic54x-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-netware" noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} gcc gdb newlib"
;; ;;
powerpc-*-netware*) cris-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-netware" noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
alpha*-*-linux*) d10v-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-linux" noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
target_makefile_frag="${target_makefile_frag} config/mt-alphaieee"
;; ;;
alpha*-*-*) d30v-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-alphaieee" noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
*-*-linux*) fr30-*-elf*)
target_makefile_frag="${target_makefile_frag} config/mt-linux" 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].*) frv-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-aix43" 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) h8300*-*-*)
target_makefile_frag="${target_makefile_frag} config/mt-wince" noconfigdirs="$noconfigdirs target-libgloss"
;; ;;
esac h8500-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} target-libf2c"
# 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-*) hppa*64*-*-linux* | parisc*64*-*-linux*)
target_makefile_frag="${target_makefile_frag} config/mt-d30v" # 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-*) hppa*-*-*elf* | \
target_makefile_frag="${target_makefile_frag} config/mt-ospace" 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}"
;; ;;
*) ia64*-*-elf*)
echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2 # No gdb support yet.
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb"
;; ;;
esac ia64*-**-hpux*)
# No gdb or ld support yet.
skipdirs= noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld"
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
;; ;;
no) i[3456]86-*-coff | i[3456]86-*-elf)
skipdirs="${skipdirs} tk libgui" noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
;; ;;
*) i[34567]86-*-freebsd*)
echo "*** bad value \"${with_x}\" for -with-x flag; ignored" 1>&2 noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;; ;;
esac s390*-*-linux*)
# The libffi port is not yet in the GCC tree
# Some tools are only suitable for building in a "native" situation. noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
# Those are added when we have a host==target configuration. For cross ;;
# toolchains, we add some directories that should only be useful in a i[3456]86-*-linux*)
# cross-compiler. # 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 # Can't build gdb for mingw32 if not native.
no) skipdirs="${skipdirs} ${cross_only}" ;; case "${host}" in
yes) skipdirs="${skipdirs} ${native_only}" ;; i[3456]86-*-mingw32) ;; # keep gdb tcl tk expect etc.
esac *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix db snavigator gnuserv"
;;
# 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} ;;
esac 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 # Can't build gdb for Cygwin if not native.
# contents are copied to $(tooldir)/lib. case "${host}" in
if test x"${with_libs}" != x ; then *-*-cygwin*) ;; # keep gdb tcl tk expect etc.
if test x${is_cross_compiler} = xno ; then *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui db snavigator gnuserv"
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 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*) i[3456]86-*-pe)
with_stabs=yes; noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}"
withoptions="${withoptions} --with-stabs"
;; ;;
esac i[3456]86-*-sco3.2v5*)
fi # The linker does not yet know about weak symbols in COFF,
# and is not configured to handle mixed ELF and COFF.
# Configure extra directories which are host specific noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
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-*-vsta) i[3456]86-*-sco*)
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" noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;; ;;
i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*) i[3456]86-*-solaris2*)
noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile apache inet itcl tix db snavigator gnuserv libffi" noconfigdirs="$noconfigdirs target-libgloss"
;; ;;
i[3456]86-*-mingw32*) i[3456]86-*-sysv4*)
# 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="$noconfigdirs target-libgloss ${libgcj}"
noconfigdirs="expect dejagnu cvs autoconf automake send-pr rcs guile perl texinfo apache inet libtool"
;; ;;
i[3456]86-*-beos*) i[3456]86-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb" noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
*-*-cygwin*)
noconfigdirs="autoconf automake send-pr rcs guile perl apache inet"
;; ;;
*-*-netbsd*) m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
noconfigdirs="rcs" noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;; ;;
ppc*-*-pe) m68k-*-elf*)
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" noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
fi
;; ;;
powerpc-*-beos*) m68k-*-coff*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline" noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-cygmon"
fi
;; ;;
esac mcore-*-pe*)
# The EPOC C++ environment does not support exceptions or rtti,
# Save it here so that, even in case of --enable-libgcj, if the Java # and so building libstdc++-v3 tends not to always work.
# front-end isn't enabled, we still get libgcj disabled. noconfigdirs="$noconfigdirs target-libstdc++-v3"
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=
;; ;;
no) mmix-*-*)
# Make sure we get it printed in the list of not supported target libs.
noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
esac mn10200-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
case "${target}" in if test x${is_cross_compiler} != xno ; then
*-*-chorusos) target_configdirs="${target_configdirs} target-libstub target-cygmon"
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" fi
;;
*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
*-*-netbsd*) mn10300-*-*)
# 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*) ;;
*)
noconfigdirs="$noconfigdirs ${libgcj}" 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) powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-newlib target-libiberty target-libgloss ${libgcj}" 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*) # This is temporary until we can link against shared libraries
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" powerpcle-*-solaris*)
case ${target} in noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv ${libgcj}"
h8300*-*-* | h8500-*-*)
noconfigdirs="$noconfigdirs target-libf2c"
;; ;;
*) ;; powerpc-*-beos*)
esac noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
*-*-vxworks*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
alpha*-dec-osf*) powerpc-*-eabi)
# ld works, but does not support shared libraries. noconfigdirs="$noconfigdirs ${libgcj}"
# newlib is not 64 bit ready. I'm not sure about fileutils. if test x${is_cross_compiler} != xno ; then
# gas doesn't generate exception information. target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
noconfigdirs="$noconfigdirs gas ld fileutils target-newlib target-libgloss" fi
;; ;;
alpha*-*-*vms*) rs6000-*-lynxos*)
noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}" # The CVS server code doesn't work on the RS/6000
noconfigdirs="$noconfigdirs target-newlib gprof cvssrc ${libgcj}"
;; ;;
alpha*-*-linux*) rs6000-*-aix*)
# newlib is not 64 bit ready noconfigdirs="$noconfigdirs gprof ${libgcj}"
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;; ;;
alpha*-*-freebsd*) rs6000-*-*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss" noconfigdirs="$noconfigdirs gprof ${libgcj}"
;; ;;
alpha*-*-*) m68k-apollo-*)
# newlib is not 64 bit ready noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}"
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
sh-*-linux*) mips*-*-irix5*)
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" # The GNU linker does not support shared libraries.
noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}"
;; ;;
sh*-*-pe|mips*-*-pe|*arm-wince-pe) mips*-*-irix6*)
noconfigdirs="$noconfigdirs ${libgcj}" # The GNU assembler does not support IRIX 6.
noconfigdirs="$noconfigdirs target-examples" # Linking libjava exceeds command-line length limits on at least
noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" # IRIX 6.2, but not on IRIX 6.5.
noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim" # Also, boehm-gc won't build on IRIX 6.5, according to Jeffrey Oldham
noconfigdirs="$noconfigdirs expect dejagnu" # <oldham@codesourcery.com>
# the C++ libraries don't build on top of CE's C libraries noconfigdirs="$noconfigdirs gas gprof target-libgloss ${libgcj}"
noconfigdirs="$noconfigdirs ${libstdcxx_version}"
skipdirs="$skipdirs target-newlib"
case "${host}" in
*-*-cygwin*) ;; # keep gdb and readline
*) noconfigdirs="$noconfigdirs gdb readline ${libstdcxx_version}"
;; ;;
esac mips*-dec-bsd*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;; ;;
arc-*-*) mips*-*-bsd*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;; ;;
arm-*-pe*) mipstx39-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
;; ;;
arm-*-oabi*) mips*-*-linux*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" noconfigdirs="$noconfigdirs target-libffi"
;; ;;
thumb-*-coff) mips*-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" noconfigdirs="$noconfigdirs gprof ${libgcj}"
;; ;;
thumb-*-elf) romp-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" 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}" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
strongarm-*-elf) sh64-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
strongarm-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
xscale-*-elf)
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
;;
xscale-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
thumb-*-pe)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
arm-*-riscix*) sparc-*-elf*)
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}" if test x${is_cross_compiler} != xno ; then
;; target_configdirs="${target_configdirs} target-libstub target-cygmon"
avr-*-*) fi
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-*-*)
noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
d10v-*-*) sparc64-*-elf*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}" if test x${is_cross_compiler} != xno ; then
;; target_configdirs="${target_configdirs} target-libstub target-cygmon"
d30v-*-*) fi
noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
fr30-*-elf*) sparclite-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi fi
noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
frv-*-*) sparc-*-sunos4*)
noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then 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 fi
;; ;;
h8300*-*-*) sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
h8500-*-*)
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj} target-libf2c"
;; ;;
hppa*64*-*-linux* | parisc*64*-*-linux*) v810-*-*)
# In this case, it's because the hppa64-linux target is for noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} opcodes target-libgloss ${libgcj}"
# 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"
;; ;;
hppa*-*-*elf* | \ v850-*-*)
parisc*-*-linux* | hppa*-*-linux* | \ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
hppa*-*-lites* | \
hppa*64*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
# Do configure ld/binutils/gas for this case.
;; ;;
hppa*-*-*) v850e-*-*)
# According to Alexandre Oliva <aoliva@redhat.com>, libjava won't noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
# build on HP-UX 10.20.
noconfigdirs="$noconfigdirs ld shellutils ${libgcj}"
;; ;;
ia64*-*-elf*) v850ea-*-*)
# No gdb support yet. noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb"
;; ;;
ia64*-**-hpux*) vax-*-vms)
# No gdb or ld support yet. noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}"
noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld"
;; ;;
i[3456]86-*-coff | i[3456]86-*-elf) vax-*-*)
noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
;; ;;
i[34567]86-*-freebsd*) ip2k-*-*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss" noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}"
;; ;;
s390*-*-linux*) *-*-lynxos*)
# The libffi port is not yet in the GCC tree
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
;; ;;
i[3456]86-*-linux*) *-*-macos* | \
# This section makes it possible to build newlib natively on linux. *-*-mpw*)
# If we are using a cross compiler then don't configure newlib. # Macs want a resource compiler.
if test x${is_cross_compiler} != xno ; then configdirs="$configdirs grez"
noconfigdirs="$noconfigdirs target-newlib" noconfigdirs="$noconfigdirs ${libgcj}"
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" noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
i[3456]86-*-mingw32*) esac
target_configdirs="$target_configdirs target-mingw"
noconfigdirs="$noconfigdirs expect target-libgloss ${libgcj}"
# Can't build gdb for mingw32 if not native. # If we aren't building newlib, then don't build libgloss, since libgloss
case "${host}" in # depends upon some newlib header files.
i[3456]86-*-mingw32) ;; # keep gdb tcl tk expect etc. case "${noconfigdirs}" in
*) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix db snavigator gnuserv" *target-libgloss*) ;;
;; *target-newlib*) noconfigdirs="$noconfigdirs target-libgloss" ;;
esac 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 / /'`
# Can't build gdb for Cygwin if not native. # Figure out what language subdirectories are present.
case "${host}" in # Look if the user specified --enable-languages="..."; if not, use
*-*-cygwin*) ;; # keep gdb tcl tk expect etc. # the environment variable $LANGUAGES if defined. $LANGUAGES might
*) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui db snavigator gnuserv" # go away some day.
;; # NB: embedded tabs in this IF block -- do not untabify
esac if test x"${enable_languages+set}" != xset; then
;; if test x"${LANGUAGES+set}" = xset; then
i[3456]86-*-pe) enable_languages="${LANGUAGES}"
noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss ${libgcj}" echo configure.in: warning: setting LANGUAGES is deprecated, use --enable-languages instead 1>&2
;; else
i[3456]86-*-sco3.2v5*) enable_languages=all
# 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"
fi fi
;; else
mcore-*-pe*) if test x"${enable_languages}" = x ||
# The EPOC C++ environment does not support exceptions or rtti, test x"${enable_languages}" = xyes;
# and so building libstdc++-v3 tends not to always work. then
noconfigdirs="$noconfigdirs target-libstdc++-v3" echo configure.in: --enable-languages needs at least one language argument 1>&2
;; exit 1
mmix-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
mn10200-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi 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-*-*) # The odd quoting in the next line works around
noconfigdirs="$noconfigdirs ${libgcj}" # an apparent bug in bash 1.12 on linux.
if test x${is_cross_compiler} != xno ; then ${srcdir}/gcc/[*]/config-lang.in)
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
;; ;;
powerpc-*-aix*) *)
# copied from rs6000-*-* entry lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
noconfigdirs="$noconfigdirs gprof cvssrc target-libgloss ${libgcj}" 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) *,all,*)
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 / /'`
;; ;;
# This is temporary until we can link against shared libraries *,$lang_alias,*)
powerpcle-*-solaris*) echo " \`$other' language required by \`$lang_alias'; enabling" 1>&2
noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv ${libgcj}" enable_languages="$enable_languages,$other"
;; ;;
powerpc-*-beos*) esac
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}" done
;; ;;
powerpc-*-eabi) esac
noconfigdirs="$noconfigdirs ${libgcj}" done
if test x${is_cross_compiler} != xno ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" 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 fi
;; ;;
rs6000-*-lynxos*) esac
# The CVS server code doesn't work on the RS/6000 done
noconfigdirs="$noconfigdirs target-newlib gprof cvssrc ${libgcj}"
;; # Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
rs6000-*-aix*) # $target_configdirs.
noconfigdirs="$noconfigdirs gprof ${libgcj}" # If we have the source for $noconfigdirs entries, add them to $notsupp.
;;
rs6000-*-*) notsupp=""
noconfigdirs="$noconfigdirs gprof ${libgcj}" 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-*) m68k-apollo-sysv*)
noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}" tentative_cc="cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG"
host_makefile_frag="config/mh-apollo68"
;; ;;
mips*-*-irix5*) m68k-apollo-bsd*)
# The GNU linker does not support shared libraries. #None of the Apollo compilers can compile gas or binutils. The preprocessor
noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}" # 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*) m88k-dg-dgux*)
# The GNU assembler does not support IRIX 6. tentative_cc="gcc -Wall -ansi -D__using_DGUX"
# Linking libjava exceeds command-line length limits on at least host_makefile_frag="config/mh-dgux"
# 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}"
;; ;;
mips*-dec-bsd*) m88k-harris-cxux*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" # 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*) m88k-motorola-sysv*)
noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" host_makefile_frag="config/mh-delta88"
;; ;;
mipstx39-*-*) mips*-dec-ultrix*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips tentative_cc="cc -Wf,-XNg1000"
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" host_makefile_frag="config/mh-decstation"
;; ;;
mips*-*-linux*) mips*-nec-sysv4*)
noconfigdirs="$noconfigdirs target-libffi" # The C compiler on NEC MIPS SVR4 needs bigger tables.
tentative_cc="cc -ZXNd=5000 -ZXNg=1000"
host_makefile_frag="config/mh-necv4"
;; ;;
mips*-*-*) mips*-sgi-irix6*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" host_makefile_frag="config/mh-irix6"
;; ;;
romp-*-*) mips*-sgi-irix5*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" host_makefile_frag="config/mh-irix5"
;; ;;
sh-*-*) mips*-sgi-irix4*)
case "${host}" in # Tell compiler to use K&R C. We can't compile under the SGI Ansi
i[3456]86-*-vsta) ;; # don't add gprof back in # environment. Also bump switch table size so that cp-parse will
i[3456]86-*-go32*) ;; # don't add gprof back in # compile. Bump string length limit so linker builds.
i[3456]86-*-msdosdjgpp*) ;; # don't add gprof back in tentative_cc="cc -cckr -Wf,-XNg1500 -Wf,-XNk1000 -Wf,-XNh2000 -Wf,-XNl8192"
*) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
esac
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;; ;;
sh64-*-*) mips*-sgi-irix3*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" host_makefile_frag="config/mh-sysv"
;; ;;
sparc-*-elf*) mips*-*-sysv4*)
if test x${is_cross_compiler} != xno ; then host_makefile_frag="config/mh-sysv4"
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
sparc64-*-elf*) mips*-*-sysv*)
if test x${is_cross_compiler} != xno ; then # This is for a MIPS running RISC/os 4.52C.
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi # This is needed for GDB, but needs to be in the top-level make because
noconfigdirs="$noconfigdirs ${libgcj}" # 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-*-*) i370-ibm-opened*)
if test x${is_cross_compiler} != xno ; then tentative_cc="c89"
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" host_makefile_frag="config/mh-openedition"
fi
noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
sparc-*-sunos4*) i[3456]86-*-sysv5*)
noconfigdirs="$noconfigdirs ${libgcj}" host_makefile_frag="config/mh-sysv5"
if test x${is_cross_compiler} != xno ; then
noconfigdirs="$noconfigdirs gdb gdbtest target-newlib target-libgloss"
else
use_gnu_ld=no
fi
;; ;;
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-*-*) i[3456]86-ncr-sysv4.3*)
noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} opcodes target-libgloss ${libgcj}" # 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-*-*) i[3456]86-ncr-sysv4*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" # 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-*-*) i[3456]86-*-sco3.2v5*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" host_makefile_frag="config/mh-sysv"
;; ;;
v850ea-*-*) i[3456]86-*-sco*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" # 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) i[3456]86-*-udk*)
noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}" host_makefile_frag="config/mh-sysv5"
;; ;;
vax-*-*) i[3456]86-*-isc*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" host_makefile_frag="config/mh-sysv"
;; ;;
ip2k-*-*) i[3456]86-*-solaris2*)
noconfigdirs="$noconfigdirs target-libiberty ${libstdcxx_version} ${libgcj}" host_makefile_frag="config/mh-sysv4"
;; ;;
*-*-lynxos*) i[3456]86-*-aix*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" host_makefile_frag="config/mh-aix386"
;; ;;
*-*-macos* | \ i[3456]86-*-msdosdjgpp*)
*-*-mpw*) host_makefile_frag="config/mh-djgpp"
# Macs want a resource compiler.
configdirs="$configdirs grez"
noconfigdirs="$noconfigdirs ${libgcj}"
;; ;;
*-*-*) *-cygwin*)
noconfigdirs="$noconfigdirs ${libgcj}" host_makefile_frag="config/mh-cygwin"
;; ;;
esac *-mingw32*)
host_makefile_frag="config/mh-mingw32"
# 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
..)
;; ;;
# The odd quoting in the next line works around *-interix*)
# an apparent bug in bash 1.12 on linux. host_makefile_frag="config/mh-interix"
${srcdir}/gcc/[*]/config-lang.in)
;; ;;
*) vax-*-ultrix2*)
lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang` # The old BSD pcc isn't up to compiling parts of gdb so use gcc
this_lang_requires=`sed -n -e 's,^lang_requires=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^lang_requires=\([^ ]*\).*$,\1,p' $lang` tentative_cc=gcc
for other in $this_lang_requires
do
case ,${enable_languages}, in
*,$other,*)
;; ;;
*,all,*) *-*-solaris2*)
host_makefile_frag="config/mh-solaris"
;; ;;
*,$lang_alias,*) m68k-sun-sunos*)
echo " \`$other' language required by \`$lang_alias'; enabling" 1>&2 # Sun's C compiler needs the -J flag to be able to compile cp-parse.c
enable_languages="$enable_languages,$other" # without overflowing the jump tables (-J says to use a 32 bit table)
tentative_cc="cc -J"
;; ;;
esac *-hp-hpux[78]*)
done tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux8"
;; ;;
esac *-hp-hpux*)
done tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux"
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
;; ;;
esac *-*-hiux*)
done tentative_cc="cc -Wp,-H256000"
host_makefile_frag="config/mh-hpux"
# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and ;;
# $target_configdirs. rs6000-*-lynxos*)
# If we have the source for $noconfigdirs entries, add them to $notsupp. # /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/usr/cygnus/progressive/bin/gcc"
notsupp="" host_makefile_frag="config/mh-lynxrs6k"
for dir in . $skipdirs $noconfigdirs ; do ;;
dirname=`echo $dir | sed -e s/target-//g` *-*-lynxos*)
if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then # /bin/cc is less than useful for our purposes. Always use GCC
configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"` tentative_cc="/bin/gcc"
if test -r $srcdir/$dirname/configure \ ;;
|| test -r $srcdir/$dirname/configure.in ; then *-*-sysv4*)
if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then host_makefile_frag="config/mh-sysv4"
true ;;
else *-*-sysv*)
notsupp="$notsupp $dir" host_makefile_frag="config/mh-sysv"
fi ;;
fi esac
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 fi
# Deconfigure all subdirectories, in case we are changing the rm -f mh-frag
# configuration from one where a subdirectory is supported to one where it if test -n "${host_makefile_frag}" ; then
# is not. for f in ${host_makefile_frag}
if test -z "${norecursion}" && test -n "${configdirs}" ; then do
for i in `echo ${configdirs} | sed -e s/target-//g` ; do cat ${srcdir}/$f >> mh-frag
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 done
host_makefile_frag=mh-frag
fi fi
# Quietly strip out all directories which aren't configurable in this tree. # If we aren't going to be using gcc, see if we can extract a definition
# This relies on all configurable subdirectories being autoconfiscated, which # of CC from the fragment.
# is now the case. # Actually, use the 'pre-extracted' version above.
configdirs_all="$configdirs" if test -z "${CC}" && test "${build}" = "${host}" ; then
configdirs= IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
for i in ${configdirs_all} ; do found=
if test -f ${srcdir}/$i/configure ; then for dir in $PATH; do
configdirs="${configdirs} $i" test -z "$dir" && dir=.
if test -f $dir/gcc; then
found=yes
break
fi fi
done done
target_configdirs_all="$target_configdirs" IFS="$save_ifs"
target_configdirs= if test -z "${found}" && test -n "${tentative_cc}" ; then
for i in ${target_configdirs_all} ; do CC=$tentative_cc
j=`echo $i | sed -e s/target-//g`
if test -f ${srcdir}/$j/configure ; then
target_configdirs="${target_configdirs} $i"
fi fi
done fi
# Produce a warning message for the subdirs we can't configure. case "${target}" in
# This isn't especially interesting in the Cygnus tree, but in the individual v810*)
# FSF releases, it's important to let people know when their machine isn't target_makefile_frag="${target_makefile_frag} config/mt-v810"
# supported by the one or two programs in a package. ;;
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 --enable-target-optspace always use -Os instead of -O2 to build
# If $appdirs is non-empty, at least one of those directories must still # the target libraries, similarly if it is not specified, use -Os
# be configured, or we error out. (E.g., if the gas release supports a # on selected platforms.
# specified target in some subdirs but not the gas subdir, we shouldn't case "${enable_target_optspace}:${target}" in
# pretend that all is well.) yes:*)
if test -n "$appdirs" ; then target_makefile_frag="${target_makefile_frag} config/mt-ospace"
for dir in $appdirs ; do ;;
if test -r $dir/Makefile.in ; then :d30v-*)
if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then target_makefile_frag="${target_makefile_frag} config/mt-d30v"
appdirs="" ;;
break :m32r-* | :d10v-* | :fr30-*)
fi target_makefile_frag="${target_makefile_frag} config/mt-ospace"
if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then ;;
appdirs="" no:* | :*)
break ;;
fi *)
fi 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 done
if test -n "$appdirs" ; then target_makefile_frag=mt-frag
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 fi
# Set with_gnu_as and with_gnu_ld as appropriate. # Set with_gnu_as and with_gnu_ld as appropriate.
...@@ -1269,47 +1247,63 @@ fi ...@@ -1269,47 +1247,63 @@ fi
# want to do that, then you should use the --without-gnu-as and # want to do that, then you should use the --without-gnu-as and
# --without-gnu-ld options for the configure script. # --without-gnu-ld options for the configure script.
if test x${use_gnu_as} = x ; then if test x${use_gnu_as} = x &&
if test x${with_gnu_as} != xno && echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 && test -d ${srcdir}/gas ; then echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
with_gnu_as=yes with_gnu_as=yes
withoptions="$withoptions --with-gnu-as" withoptions="$withoptions --with-gnu-as"
fi
fi fi
if test x${use_gnu_ld} = x ; then if test x${use_gnu_ld} = x &&
if test x${with_gnu_ld} != xno && echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 && test -d ${srcdir}/ld ; then echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
with_gnu_ld=yes with_gnu_ld=yes
withoptions="$withoptions --with-gnu-ld" withoptions="$withoptions --with-gnu-ld"
fi
fi fi
# If using newlib, add --with-newlib to the withoptions so that gcc/configure # If using newlib, add --with-newlib to the withoptions so that gcc/configure
# can detect this case. # 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 with_newlib=yes
withoptions="$withoptions --with-newlib" withoptions="$withoptions --with-newlib"
fi fi
rm -f mt-frag # We default to --with-shared on platforms where -fpic is meaningless.
if test -n "${target_makefile_frag}" ; then # Well, we don't yet, but we will.
for f in ${target_makefile_frag} if false && test "${host}" = "${target}" && test x${enable_shared} = x ; then
do case "${target}" in
cat ${srcdir}/$f >> mt-frag alpha*-dec-osf*) enable_shared=yes ;;
done alpha*-*-linux*) enable_shared=yes ;;
target_makefile_frag=mt-frag mips-sgi-irix5*) enable_shared=yes ;;
*) enable_shared=no ;;
esac
fi fi
case "$host" in case "${enable_shared}" in
*msdosdjgpp*) yes) shared=yes ;;
enable_gdbtk=no ;; no) shared=no ;;
"") shared=no ;;
*) shared=yes ;;
esac esac
# Determine whether gdb needs tk/tcl or not.
case "$enable_gdbtk" in
no) # Default to using --with-stabs for certain targets.
GDB_TK="" ;; if test x${with_stabs} = x ; then
*) case "${target}" in
GDB_TK="all-tcl all-tk all-itcl all-tix all-libgui" ;; 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 esac
# post-target: # post-target:
...@@ -1520,8 +1514,7 @@ if test "${build}" = "${host}" && test -d ${srcdir}/gcc; then ...@@ -1520,8 +1514,7 @@ if test "${build}" = "${host}" && test -d ${srcdir}/gcc; then
fi fi
if test "x${use_gnu_ld}" = x && test "x${with_gnu_ld}" != xno && if test "x${use_gnu_ld}" = x && test "x${with_gnu_ld}" != xno &&
echo " ${configdirs} " | grep " ld " > /dev/null && echo " ${configdirs} " | grep " ld " > /dev/null ; then
test -d ${srcdir}/ld; then
# Arrange for us to find uninstalled linker scripts. # Arrange for us to find uninstalled linker scripts.
FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/ld' FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/ld'
fi 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