aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rwxr-xr-xconfigure17
2 files changed, 20 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7b22d4f..2960f08 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 fbf5ab5..fb636f8 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