# It is advisable to support a few --enable/--disable options to let the
# user select which libraries s/he really wants.
#
+# Subdirectories wishing to use multilib should put the following lines
+# in the initial ("common") section of configure.in:
+#
+#if [ -n "${with_multilib_top}" ]; then
+# . ${with_multilib_top}/../cfg-ml-com.in
+#else
+# . ${srcdir}/../cfg-ml-com.in
+#fi
+#
+# `with_multilib_top' exists to handle the case of configuring in the source
+# tree: ${srcdir} is not constant.
+#
+# The following should be added to the "post-target" section of configure.in:
+#
+#if [ -n "${with_multilib_top}" ]; then
+# . ${with_multilib_top}/../cfg-ml-pos.in
+#else
+# . ${srcdir}/../cfg-ml-pos.in
+#fi
+
# FIXME: Multilib is currently disabled by default for everything other than
# newlib. It is up to each target to turn on multilib support for the other
# libraries as desired.
hppa*-*-*)
multidirs="soft-float"
;;
-m68*-*-*)
+m68*-*-aout* | m68*-*-coff* | m68*-*-elf* | m68*-*-vxworks*)
multidirs="m68000 m68020 m68881 msoft-float m68000/m68881 m68000/msoft-float m68020/m68881 m68020/msoft-float"
;;
i960-*-*)
;;
sh-*-*)
multidirs="ml"
+# start-sanitize-sh3e
+ multidirs="ml m3e"
+# end-sanitize-sh3e
;;
mips*-*-*)
# Note that not all of these will be built for a particular
;;
powerpc-*-eabiaix*)
multidirs="soft-float relocatable little-endian call-sysv little-endian/call-sysv relocatable/little-endian relocatable/call-sysv relocatable/little-endian/call-sysv soft-float/relocatable soft-float/little-endian soft-float/call-sysv soft-float/little-endian/call-sysv soft-float/relocatable/little-endian soft-float/relocatable/call-sysv soft-float/relocatable/little-endian/call-sysv"
+ if [ x$enable_biendian = xno ]
+ then
+ old_multidirs="${multidirs}"
+ multidirs=""
+ for x in ${old_multidirs}; do
+ case "$x" in
+ *endian* ) : ;;
+ *) if [ x"$multidirs" = x ]; then multidirs="$x"; else multidirs="${multidirs} ${x}"; fi ;;
+ esac
+ done
+ fi
+ if [ x$enable_softfloat = xno ]
+ then
+ old_multidirs="${multidirs}"
+ multidirs=""
+ for x in ${old_multidirs}; do
+ case "$x" in
+ *soft-float* ) : ;;
+ *) if [ x"$multidirs" = x ]; then multidirs="$x"; else multidirs="${multidirs} ${x}"; fi ;;
+ esac
+ done
+ fi
+ if [ x$enable_relocatable = xno ]
+ then
+ old_multidirs="${multidirs}"
+ multidirs=""
+ for x in ${old_multidirs}; do
+ case "$x" in
+ *relocatable* ) : ;;
+ *) if [ x"$multidirs" = x ]; then multidirs="$x"; else multidirs="${multidirs} ${x}"; fi ;;
+ esac
+ done
+ fi
+ if [ x$enable_sysv = xno ]
+ then
+ old_multidirs="${multidirs}"
+ multidirs=""
+ for x in ${old_multidirs}; do
+ case "$x" in
+ *sysv* ) : ;;
+ *) if [ x"$multidirs" = x ]; then multidirs="$x"; else multidirs="${multidirs} ${x}"; fi ;;
+ esac
+ done
+ fi
+ ;;
+powerpc*-*-eabisim*)
+ multidirs="little-endian big-endian mrelocatable little-endian/mrelocatable big-endian/mrelocatable"
+ if [ x$enable_biendian = xno ]
+ then
+ old_multidirs="${multidirs}"
+ multidirs=""
+ for x in ${old_multidirs}; do
+ case "$x" in
+ *endian* ) : ;;
+ *) if [ x"$multidirs" = x ]; then multidirs="$x"; else multidirs="${multidirs} ${x}"; fi ;;
+ esac
+ done
+ fi
+ if [ x$enable_relocatable = xno ]
+ then
+ old_multidirs="${multidirs}"
+ multidirs=""
+ for x in ${old_multidirs}; do
+ case "$x" in
+ *relocatable* ) : ;;
+ *) if [ x"$multidirs" = x ]; then multidirs="$x"; else multidirs="${multidirs} ${x}"; fi ;;
+ esac
+ done
+ fi
;;
powerpc-*-eabi* | powerpc-*-elf* | powerpc-*-sysv4*)
multidirs="soft-float relocatable little-endian call-aix little-endian/call-aix relocatable/little-endian relocatable/call-aix relocatable/little-endian/call-aix soft-float/relocatable soft-float/little-endian soft-float/call-aix soft-float/little-endian/call-aix soft-float/relocatable/little-endian soft-float/relocatable/call-aix soft-float/relocatable/little-endian/call-aix"
${dotdot}tmpconfig ${dotdot} ". .. CVS tmpconfig ${multidirs}")
rm -f tmpconfig
srcdiroption=
+ multilib_top=${dotdot}
;;
*)
case "${srcdir}" in
;;
esac
srcdiroption="-srcdir=${newsrcdir}"
+ multilib_top=${newsrcdir}
;;
esac
POPDIR=${PWD=`pwd`}
cd ${dir}
if eval ${config_shell} ${recprog} ${verbose} \
- --with-multisubdir=${dir} \
+ --with-multisubdir=${dir} --with-multilib-top=${multilib_top} \
${buildopt} --host=${host_alias} --target=${target_alias} \
${prefixoption} ${tmpdiroption} ${exec_prefixoption} \
${srcdiroption} ${program_prefixoption} ${program_suffixoption} \