(get_version): Adjust prototype.
[gnulib.git] / m4 / lstat.m4
index bb2f754..8378645 100644 (file)
@@ -1,20 +1,18 @@
-#serial 1
+#serial 3
 
 dnl From Jim Meyering.
 dnl Determine whether lstat has the bug that it succeeds when given the
 
 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
-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,
 [
 dnl
 
 AC_DEFUN(jm_FUNC_LSTAT,
 [
- AC_CACHE_CHECK([for working lstat], jm_cv_func_working_lstat,
+ AC_CACHE_CHECK([whether lstat accepts an empty string],
+  jm_cv_func_lstat_empty_string_bug,
   [AC_TRY_RUN([
 #   include <sys/types.h>
 #   include <sys/stat.h>
   [AC_TRY_RUN([
 #   include <sys/types.h>
 #   include <sys/stat.h>
@@ -23,16 +21,19 @@ AC_DEFUN(jm_FUNC_LSTAT,
     main ()
     {
       struct stat sbuf;
     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.
         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
+  if test $jm_cv_func_lstat_empty_string_bug = yes; then
     LIBOBJS="$LIBOBJS lstat.o"
     LIBOBJS="$LIBOBJS lstat.o"
-    AC_DEFINE_UNQUOTED(lstat, rpl_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
 ])
   fi
 ])