summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure17
1 files changed, 15 insertions, 2 deletions
diff --git a/configure b/configure
index fbf5ab58479..fb636f84954 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