X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fsymlink.m4;h=de4924b431ad2d8616c3e3277500993cdee5f1ad;hb=c43cc7b973f4daf0c59368ae52e130dfd12ce8d6;hp=3a991b83e759ff9363cda3a62710696bc59fe130;hpb=04da1cb11cf8285b944492aaa636dbd596ed5e74;p=gnulib.git diff --git a/m4/symlink.m4 b/m4/symlink.m4 index 3a991b83e..de4924b43 100644 --- a/m4/symlink.m4 +++ b/m4/symlink.m4 @@ -1,7 +1,7 @@ -# serial 4 +# serial 6 # See if we need to provide symlink replacement. -dnl Copyright (C) 2009, 2010 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -11,13 +11,13 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_SYMLINK], [ AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_CHECK_FUNCS_ONCE([symlink]) dnl The best we can do on mingw is provide a dummy that always fails, so dnl that compilation can proceed with fewer ifdefs. On FreeBSD 7.2, AIX 7.1, dnl and Solaris 9, we want to fix a bug with trailing slash handling. if test $ac_cv_func_symlink = no; then HAVE_SYMLINK=0 - AC_LIBOBJ([symlink]) else AC_CACHE_CHECK([whether symlink handles trailing slash correctly], [gl_cv_func_symlink_works], @@ -35,11 +35,19 @@ AC_DEFUN([gl_FUNC_SYMLINK], return result; ]])], [gl_cv_func_symlink_works=yes], [gl_cv_func_symlink_works=no], - [gl_cv_func_symlink_works="guessing no"]) + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_symlink_works="guessing yes" ;; + # If we don't know, assume the worst. + *) gl_cv_func_symlink_works="guessing no" ;; + esac + ]) rm -f conftest.f conftest.link conftest.lnk2]) - if test "$gl_cv_func_symlink_works" != yes; then - REPLACE_SYMLINK=1 - AC_LIBOBJ([symlink]) - fi + case "$gl_cv_func_symlink_works" in + *yes) ;; + *) + REPLACE_SYMLINK=1 + ;; + esac fi ])