X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fcanonicalize.m4;h=ba7a38bb968b862e165f33693a7dc19c5af52f3f;hb=1a9afb04e6f2fb36d17b3837942165cd1a0c50ac;hp=beb6163ec437369ea7d8a3c5ff9ca71b4dec1d8c;hpb=b6772983c800c6faee7fc793b83975afb6d58bcc;p=gnulib.git diff --git a/m4/canonicalize.m4 b/m4/canonicalize.m4 index beb6163ec..ba7a38bb9 100644 --- a/m4/canonicalize.m4 +++ b/m4/canonicalize.m4 @@ -1,4 +1,4 @@ -# canonicalize.m4 serial 18 +# canonicalize.m4 serial 23 dnl Copyright (C) 2003-2007, 2009-2011 Free Software Foundation, Inc. @@ -10,8 +10,6 @@ dnl with or without modifications, as long as this notice is preserved. # not provide or fix realpath. AC_DEFUN([gl_FUNC_CANONICALIZE_FILENAME_MODE], [ - AC_LIBOBJ([canonicalize]) - AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) AC_CHECK_FUNCS_ONCE([canonicalize_file_name]) AC_REQUIRE([gl_DOUBLE_SLASH_ROOT]) @@ -30,21 +28,19 @@ AC_DEFUN([gl_CANONICALIZE_LGPL], AC_REQUIRE([gl_CANONICALIZE_LGPL_SEPARATE]) if test $ac_cv_func_canonicalize_file_name = no; then HAVE_CANONICALIZE_FILE_NAME=0 - AC_LIBOBJ([canonicalize-lgpl]) if test $ac_cv_func_realpath = no; then HAVE_REALPATH=0 elif test "$gl_cv_func_realpath_works" != yes; then REPLACE_REALPATH=1 fi elif test "$gl_cv_func_realpath_works" != yes; then - AC_LIBOBJ([canonicalize-lgpl]) - REPLACE_REALPATH=1 REPLACE_CANONICALIZE_FILE_NAME=1 + REPLACE_REALPATH=1 fi ]) # Like gl_CANONICALIZE_LGPL, except prepare for separate compilation -# (no AC_LIBOBJ). +# (no REPLACE_CANONICALIZE_FILE_NAME, no REPLACE_REALPATH, no AC_LIBOBJ). AC_DEFUN([gl_CANONICALIZE_LGPL_SEPARATE], [ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) @@ -62,10 +58,12 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS], AC_CHECK_FUNCS_ONCE([realpath]) AC_CACHE_CHECK([whether realpath works], [gl_cv_func_realpath_works], [ touch conftest.a + mkdir conftest.d AC_RUN_IFELSE([ AC_LANG_PROGRAM([[ ]GL_NOCRASH[ #include + #include ]], [[ int result = 0; { @@ -83,10 +81,17 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS], if (name != NULL) result |= 4; } + { + char *name1 = realpath (".", NULL); + char *name2 = realpath ("conftest.d//./..", NULL); + if (strcmp (name1, name2) != 0) + result |= 8; + } return result; ]]) ], [gl_cv_func_realpath_works=yes], [gl_cv_func_realpath_works=no], [gl_cv_func_realpath_works="guessing no"]) + 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()