canonicalize[-lgpl]: Avoid "guessing no" when cross-compiling to glibc.
authorBruno Haible <bruno@clisp.org>
Sat, 5 May 2012 06:47:21 +0000 (08:47 +0200)
committerBruno Haible <bruno@clisp.org>
Sat, 5 May 2012 06:47:21 +0000 (08:47 +0200)
* m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Require
AC_CANONICAL_HOST. When cross-compiling to a glibc system, set
gl_cv_func_realpath_works to "guessing yes".

ChangeLog
m4/canonicalize.m4

index 4d14dae..f44d6ef 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2012-05-05  Bruno Haible  <bruno@clisp.org>
 
+       canonicalize[-lgpl]: Avoid "guessing no" when cross-compiling to glibc.
+       * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Require
+       AC_CANONICAL_HOST. When cross-compiling to a glibc system, set
+       gl_cv_func_realpath_works to "guessing yes".
+
+2012-05-05  Bruno Haible  <bruno@clisp.org>
+
        gettimeofday: Avoid bad guess when cross-compiling to glibc systems.
        * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY_CLOBBER): Require
        AC_CANONICAL_HOST. When cross-compiling, guess no on glibc platforms.
index 623253f..69b3f4c 100644 (file)
@@ -1,4 +1,4 @@
-# canonicalize.m4 serial 23
+# canonicalize.m4 serial 24
 
 dnl Copyright (C) 2003-2007, 2009-2012 Free Software Foundation, Inc.
 
@@ -56,6 +56,7 @@ AC_DEFUN([gl_CANONICALIZE_LGPL_SEPARATE],
 AC_DEFUN([gl_FUNC_REALPATH_WORKS],
 [
   AC_CHECK_FUNCS_ONCE([realpath])
+  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([whether realpath works], [gl_cv_func_realpath_works], [
     touch conftest.a
     mkdir conftest.d
@@ -89,13 +90,23 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS],
         }
         return result;
       ]])
-    ], [gl_cv_func_realpath_works=yes], [gl_cv_func_realpath_works=no],
-       [gl_cv_func_realpath_works="guessing no"])
+     ],
+     [gl_cv_func_realpath_works=yes],
+     [gl_cv_func_realpath_works=no],
+     [case "$host_os" in
+                # Guess yes on glibc systems.
+        *-gnu*) gl_cv_func_realpath_works="guessing yes" ;;
+                # If we don't know, assume the worst.
+        *)      gl_cv_func_realpath_works="guessing no" ;;
+      esac
+     ])
     rm -rf conftest.a conftest.d
   ])
-  if test "$gl_cv_func_realpath_works" = yes; then
-    AC_DEFINE([FUNC_REALPATH_WORKS], [1], [Define to 1 if realpath()
-      can malloc memory, always gives an absolute path, and handles
-      trailing slash correctly.])
-  fi
+  case "$gl_cv_func_realpath_works" in
+    *yes)
+      AC_DEFINE([FUNC_REALPATH_WORKS], [1], [Define to 1 if realpath()
+        can malloc memory, always gives an absolute path, and handles
+        trailing slash correctly.])
+      ;;
+  esac
 ])