2002-12-05 Nathanael Nerode <neroden@gcc.gnu.org>

* Makefile.tpl: Change dependency for */multilib.out so that
	it works when gcc isn't in the tree.

	* configure.in: Substitute more.
	* configure: Run subconfigures from the Makefile.
	* Makefile.tpl: Run subconfigures from the Makefile; add a few
	convenience targets.  Make sure gcc isn't rebuilt after bootstrap.
This commit is contained in:
Nathanael Nerode
2002-12-05 18:34:48 +00:00
parent 49dd6fc61e
commit d6064c7925
5 changed files with 156 additions and 221 deletions

92
configure vendored
View File

@@ -1396,98 +1396,6 @@ if [ -r ./config.back ] ; then
fi
${config_shell} ${moveifchange} ./config.new ./config.status
# If there are subdirectories, then recur.
if [ -z "${norecursion}" ] && [ -n "${configdirs}" ] ; then
for configdir in ${configdirs} ${extraconfigdirs} ; do
# If configdir contains ',' it is
# srcdir,builddir,target_alias
# These come from extraconfigdirs.
case ${configdir} in
*,*)
eval `echo ${configdir} | sed -e 's/\([^,]*\),\([^,]*\),\(.*\)/cfg_dir=\1 bld_dir=\2 tgt_alias=\3/'`
;;
*)
cfg_dir=${configdir}
bld_dir=${configdir}
tgt_alias=${target_alias}
;;
esac
if [ -d ${srcdir}/${cfg_dir} ] ; then
eval echo Configuring ${configdir}... ${redirect}
case "${srcdir}" in
".") ;;
*)
if [ ! -d ./${bld_dir} ] ; then
if mkdir ./${bld_dir} ; then
true
else
echo '***' "${progname}: could not make ${PWD=`${PWDCMD-pwd}`}/${bld_dir}" 1>&2
exit 1
fi
fi
;;
esac
POPDIR=${PWD=`${PWDCMD-pwd}`}
cd ${bld_dir}
### figure out what to do with srcdir
case "${srcdir}" in
".") newsrcdir=${srcdir} ;; # no -srcdir option. We're building in place.
/* | [A-Za-z]:[\\/]* ) # absolute path
newsrcdir=${srcdir}/${cfg_dir}
srcdiroption="--srcdir=${newsrcdir}"
;;
*) # otherwise relative
newsrcdir=../${srcdir}/${cfg_dir}
srcdiroption="--srcdir=${newsrcdir}"
;;
esac
# Handle --cache-file=../XXX
case "${cache_file}" in
"") # empty
;;
/* | [A-Za-z]:[\\/]* ) # absolute path
cache_file_option="--cache-file=${cache_file}"
;;
*) # relative path
cache_file_option="--cache-file=../${cache_file}"
;;
esac
### check for guested configure, otherwise fix possibly relative progname
if [ -f ${newsrcdir}/configure ] ; then
recprog=${newsrcdir}/configure
elif [ -f ${newsrcdir}/configure.in ] ; then
case "${progname}" in
/* | [A-Za-z]:[\\/]* ) recprog=${progname} ;;
*) recprog=../${progname} ;;
esac
else
eval echo No configuration information in ${cfg_dir} ${redirect}
recprog=
fi
### The recursion line is here.
if [ ! -z "${recprog}" ] ; then
if eval ${config_shell} ${recprog} ${verbose} ${buildopt} --host=${host_alias} --target=${tgt_alias} \
${prefixoption} ${tmpdiroption} ${exec_prefixoption} \
${srcdiroption} ${diroptions} ${program_prefixoption} ${program_suffixoption} ${program_transform_nameoption} ${site_option} ${withoptions} ${withoutoptions} ${enableoptions} ${disableoptions} ${floating_pointoption} ${cache_file_option} ${other_options} ${redirect} ; then
true
else
echo Configure in `${PWDCMD-pwd}` failed, exiting. 1>&2
exit 1
fi
fi
cd ${POPDIR}
fi
done
fi
# Perform the same cleanup as the trap handler, minus the "exit 1" of course,
# and reset the trap handler.
rm -rf ${tmpdir}