+ 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"