diff --git a/ChangeLog b/ChangeLog index 7b22d4fd98..2960f08cf1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +20000-05-19 H.J. Lu (hjl@gnu.org) + + * configure: Provide --disable-target-dir-sanity-checking to + disable the gcc directory checking for cross compiling. + 20000-05-18 H.J. Lu (hjl@gnu.org) * configure: Ask to create the gcc directory for cross diff --git a/configure b/configure index fbf5ab5847..fb636f8495 100755 --- a/configure +++ b/configure @@ -753,8 +753,21 @@ target_vendor=`echo $result | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` target_os=`echo $result | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` target=${target_cpu}-${target_vendor}-${target_os} -if [ x${target} != x${build} -a x${build} = x${host} ]; then - if [ x${gcc_version} != x -a ! -d ${prefix}/lib/gcc-lib/${target_alias}/${gcc_version} ]; then +# We have to make sure the gcc directory exists for the non-canadian +# cross compiler if necessary. In that case, we will run the cross +# compiler we just build to compile other stuff. Due to how the cross +# compiler finds the C header files, the gcc directory may be needed +# for successful cross-compilation. This sanity check can be disabled +# by passing +# +# --disable-target-dir-sanity-checking +# +# to configure. +if test x${target} != x${build} && test x${build} = x${host} ; then + if test x${enable_target_dir_sanity_checking} != xno \ + && test x${gcc_version} != x \ + && test -d ${prefix}/${target_alias} \ + && test ! -d ${prefix}/lib/gcc-lib/${target_alias}/${gcc_version} ; then echo "Please create the directory:" 1>&2 echo 1>&2 echo " ${prefix}/lib/gcc-lib/${target_alias}/${gcc_version}" 1>&2