X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Flstat.m4;h=4e0cfefc440f2f27c68e7dfcbdba92397aaaccb7;hb=d2b42b931376d8d7a7f7e0735f1cc666529f6925;hp=bb2f75415f44d12394cec04b866a2bf472966d4e;hpb=4f3c9c7672c45db7693c5efebb0d3f06d0ab993f;p=gnulib.git diff --git a/m4/lstat.m4 b/m4/lstat.m4 index bb2f75415..4e0cfefc4 100644 --- a/m4/lstat.m4 +++ b/m4/lstat.m4 @@ -1,20 +1,19 @@ -#serial 1 +#serial 6 dnl From Jim Meyering. dnl Determine whether lstat has the bug that it succeeds when given the -dnl zero-length file name argument. The lstat from SunOS4.1.4 does this. +dnl zero-length file name argument. The lstat from SunOS4.1.4 and the Hurd +dnl (as of 1998-11-01) do this. dnl -dnl If it doesn't, arrange to use the replacement function. -dnl -dnl If you use this macro in a package, you should -dnl add the following two lines to acconfig.h: -dnl /* Define to rpl_lstat if the replacement function should be used. */ -dnl #undef lstat +dnl If it does, then define HAVE_LSTAT_EMPTY_STRING_BUG and arrange to +dnl compile the wrapper function. dnl AC_DEFUN(jm_FUNC_LSTAT, [ - AC_CACHE_CHECK([for working lstat], jm_cv_func_working_lstat, + AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK]) + AC_CACHE_CHECK([whether lstat accepts an empty string], + jm_cv_func_lstat_empty_string_bug, [AC_TRY_RUN([ # include # include @@ -23,16 +22,19 @@ AC_DEFUN(jm_FUNC_LSTAT, main () { struct stat sbuf; - exit (lstat ("", &sbuf) == 0 ? 1 : 0); + exit (lstat ("", &sbuf) ? 1 : 0); } ], - jm_cv_func_working_lstat=yes, - jm_cv_func_working_lstat=no, + jm_cv_func_lstat_empty_string_bug=yes, + jm_cv_func_lstat_empty_string_bug=no, dnl When crosscompiling, assume lstat is broken. - jm_cv_func_working_lstat=no) + jm_cv_func_lstat_empty_string_bug=yes) ]) - if test $jm_cv_func_working_lstat = no; then - LIBOBJS="$LIBOBJS lstat.o" - AC_DEFINE_UNQUOTED(lstat, rpl_lstat) + if test $jm_cv_func_lstat_empty_string_bug = yes; then + AC_LIBOBJ(lstat) + AC_DEFINE_UNQUOTED(HAVE_LSTAT_EMPTY_STRING_BUG, 1, +[Define if lstat has the bug that it succeeds when given the zero-length + file name argument. The lstat from SunOS4.1.4 and the Hurd as of 1998-11-01) + do this. ]) fi ])