Line 70... |
Line 70... |
# libraries as desired.
|
# libraries as desired.
|
|
|
# We have to handle being invoked by both Cygnus configure and Autoconf.
|
# We have to handle being invoked by both Cygnus configure and Autoconf.
|
#
|
#
|
# Cygnus configure incoming variables:
|
# Cygnus configure incoming variables:
|
# srcdir, subdir, target, arguments
|
# srcdir, subdir, host, arguments
|
#
|
#
|
# Autoconf incoming variables:
|
# Autoconf incoming variables:
|
# srcdir, target, ac_configure_args
|
# srcdir, host, ac_configure_args
|
#
|
#
|
# We *could* figure srcdir and target out, but we'd have to do work that
|
# We *could* figure srcdir and host out, but we'd have to do work that
|
# our caller has already done to figure them out and requiring these two
|
# our caller has already done to figure them out and requiring these two
|
# seems reasonable.
|
# seems reasonable.
|
|
# Note that `host' in this case is GCC's `target'. Target libraries are
|
|
# configured for a particular host.
|
|
|
if [ -n "${ac_configure_args}" ]; then
|
if [ -n "${ac_configure_args}" ]; then
|
Makefile=${ac_file-Makefile}
|
Makefile=${ac_file-Makefile}
|
ml_config_shell=${CONFIG_SHELL-/bin/sh}
|
ml_config_shell=${CONFIG_SHELL-/bin/sh}
|
ml_arguments="${ac_configure_args}"
|
ml_arguments="${ac_configure_args}"
|
Line 97... |
Line 99... |
fi
|
fi
|
fi
|
fi
|
|
|
# Scan all the arguments and set all the ones we need.
|
# Scan all the arguments and set all the ones we need.
|
|
|
|
ml_verbose=--verbose
|
for option in ${ml_arguments}
|
for option in ${ml_arguments}
|
do
|
do
|
case $option in
|
case $option in
|
--*) ;;
|
--*) ;;
|
-*) option=-$option ;;
|
-*) option=-$option ;;
|
Line 126... |
Line 129... |
eval $enableopt="$optarg"
|
eval $enableopt="$optarg"
|
;;
|
;;
|
--norecursion | --no*)
|
--norecursion | --no*)
|
ml_norecursion=yes
|
ml_norecursion=yes
|
;;
|
;;
|
|
--silent | --sil* | --quiet | --q*)
|
|
ml_verbose=--silent
|
|
;;
|
--verbose | --v | --verb*)
|
--verbose | --v | --verb*)
|
ml_verbose=--verbose
|
ml_verbose=--verbose
|
;;
|
;;
|
--with-*)
|
--with-*)
|
case "$option" in
|
case "$option" in
|
Line 198... |
Line 204... |
multidirs="${multidirs} ${dir}"
|
multidirs="${multidirs} ${dir}"
|
fi
|
fi
|
fi
|
fi
|
done
|
done
|
|
|
case "${target}" in
|
# Target libraries are configured for the host they run on, so we check
|
|
# $host here, not $target.
|
|
|
|
case "${host}" in
|
arc-*-elf*)
|
arc-*-elf*)
|
if [ x$enable_biendian != xyes ]
|
if [ x$enable_biendian != xyes ]
|
then
|
then
|
old_multidirs=${multidirs}
|
old_multidirs=${multidirs}
|
multidirs=""
|
multidirs=""
|
Line 212... |
Line 221... |
*) multidirs="${multidirs} ${x}" ;;
|
*) multidirs="${multidirs} ${x}" ;;
|
esac
|
esac
|
done
|
done
|
fi
|
fi
|
;;
|
;;
|
|
arm-*-*)
|
|
if [ x"$enable_fpu" = xno ]
|
|
then
|
|
old_multidirs=${multidirs}
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "${x}" in
|
|
*fpu*) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
if [ x"$enable_26bit" = xno ]
|
|
then
|
|
old_multidirs=${multidirs}
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "${x}" in
|
|
*26bit*) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
if [ x"$enable_underscore" = xno ]
|
|
then
|
|
old_multidirs=${multidirs}
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "${x}" in
|
|
*under*) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
if [ x"$enable_interwork" = xno ]
|
|
then
|
|
old_multidirs=${multidirs}
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "${x}" in
|
|
*interwork*) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
if [ x$enable_biendian = xno ]
|
|
then
|
|
old_multidirs="${multidirs}"
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "$x" in
|
|
*le* ) : ;;
|
|
*be* ) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
if [ x"$enable_nofmult" = xno ]
|
|
then
|
|
old_multidirs="${multidirs}"
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "$x" in
|
|
*nofmult* ) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
;;
|
m68*-*-*)
|
m68*-*-*)
|
if [ x$enable_softfloat = xno ]
|
if [ x$enable_softfloat = xno ]
|
then
|
then
|
old_multidirs="${multidirs}"
|
old_multidirs="${multidirs}"
|
multidirs=""
|
multidirs=""
|
Line 293... |
Line 371... |
*soft-float* ) : ;;
|
*soft-float* ) : ;;
|
*) multidirs="${multidirs} ${x}" ;;
|
*) multidirs="${multidirs} ${x}" ;;
|
esac
|
esac
|
done
|
done
|
fi
|
fi
|
|
case " $multidirs " in
|
|
*" mabi=64 "*)
|
|
# We will not be able to create libraries with -mabi=64 if
|
|
# we cannot even link a trivial program. It usually
|
|
# indicates the 64bit libraries are missing.
|
|
if echo 'main() {}' > conftest.c &&
|
|
${CC-gcc} -mabi=64 conftest.c -o conftest; then
|
|
:
|
|
else
|
|
echo Could not link program with -mabi=64, disabling it.
|
|
old_multidirs="${multidirs}"
|
|
multidirs=""
|
|
for x in ${old_multidirs}; do
|
|
case "$x" in
|
|
*mabi=64* ) : ;;
|
|
*) multidirs="${multidirs} ${x}" ;;
|
|
esac
|
|
done
|
|
fi
|
|
rm -f conftest.c conftest
|
|
;;
|
|
esac
|
;;
|
;;
|
powerpc*-*-* | rs6000*-*-*)
|
powerpc*-*-* | rs6000*-*-*)
|
if [ x$enable_softfloat = xno ]
|
if [ x$enable_softfloat = xno ]
|
then
|
then
|
old_multidirs="${multidirs}"
|
old_multidirs="${multidirs}"
|
Line 546... |
Line 646... |
if [ "${ml_verbose}" = --verbose ]; then
|
if [ "${ml_verbose}" = --verbose ]; then
|
echo "Running configure in multilib subdir ${ml_dir}"
|
echo "Running configure in multilib subdir ${ml_dir}"
|
echo "pwd: `pwd`"
|
echo "pwd: `pwd`"
|
fi
|
fi
|
|
|
if [ -d ${ml_dir} ]; then true; else mkdir ${ml_dir}; fi
|
if [ -d ${ml_dir} ]; then true; else
|
|
# ``mkdir -p ${ml_dir}'' See also mkinstalldirs.
|
|
pathcomp=""
|
|
for d in `echo ":${ml_dir}" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`; do
|
|
pathcomp="$pathcomp$d"
|
|
case "$pathcomp" in
|
|
-* ) pathcomp=./$pathcomp ;;
|
|
esac
|
|
if test ! -d "$pathcomp"; then
|
|
echo "mkdir $pathcomp" 1>&2
|
|
mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$?
|
|
fi
|
|
if test ! -d "$pathcomp"; then
|
|
exit $lasterr
|
|
fi
|
|
pathcomp="$pathcomp/"
|
|
done
|
|
fi
|
if [ -d ${ml_dir}/${ml_libdir} ]; then true; else mkdir ${ml_dir}/${ml_libdir}; fi
|
if [ -d ${ml_dir}/${ml_libdir} ]; then true; else mkdir ${ml_dir}/${ml_libdir}; fi
|
|
|
# Eg: if ${ml_dir} = m68000/m68881, dotdot = ../../
|
# Eg: if ${ml_dir} = m68000/m68881, dotdot = ../../
|
dotdot=../`echo ${ml_dir} | sed -e 's|[^/]||g' -e 's|/|../|g'`
|
dotdot=../`echo ${ml_dir} | sed -e 's|[^/]||g' -e 's|/|../|g'`
|
|
|
Line 599... |
Line 716... |
cd ${ml_dir}/${ml_libdir}
|
cd ${ml_dir}/${ml_libdir}
|
|
|
if [ -f ${ml_newsrcdir}/configure ]; then
|
if [ -f ${ml_newsrcdir}/configure ]; then
|
ml_recprog=${ml_newsrcdir}/configure
|
ml_recprog=${ml_newsrcdir}/configure
|
fi
|
fi
|
if eval ${ml_config_shell} ${ml_recprog} \
|
|
|
# find compiler flag corresponding to ${ml_dir}
|
|
for i in `${CC-gcc} --print-multi-lib 2>/dev/null`; do
|
|
dir=`echo $i | sed -e 's/;.*$//'`
|
|
if [ "${dir}" = "${ml_dir}" ]; then
|
|
flags=`echo $i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`
|
|
break
|
|
fi
|
|
done
|
|
ml_config_env='CC="${CC} $flags"'
|
|
|
|
if eval ${ml_config_env} ${ml_config_shell} ${ml_recprog} \
|
--with-multisubdir=${ml_dir} --with-multisrctop=${multisrctop} \
|
--with-multisubdir=${ml_dir} --with-multisrctop=${multisrctop} \
|
${ml_arguments} ${ml_srcdiroption} ; then
|
${ml_arguments} ${ml_srcdiroption} ; then
|
true
|
true
|
else
|
else
|
exit 1
|
exit 1
|