changeset 6744:3d99d01160aa

* fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit. Don't assume that exit status -1 is valid. * nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise. * putenv.m4 (gl_FUNC_PUTENV): Likewise. * rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise. * readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>. * rename.m4 (vb_FUNC_RENAME): Likewise. * unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE, not AC_TRY_RUN. Use return, not exit. Don't assume that functions can be used without declaring them, or that you can exit with status -1. * utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
author Paul Eggert <eggert@cs.ucla.edu>
date Mon, 24 Apr 2006 07:35:24 +0000
parents c9defcc6cacf
children aca74c06bca0
files m4/ChangeLog m4/fsusage.m4 m4/nanosleep.m4 m4/putenv.m4 m4/readdir.m4 m4/rename.m4 m4/rmdir-errno.m4 m4/unlink-busy.m4 m4/utimes-null.m4
diffstat 9 files changed, 63 insertions(+), 42 deletions(-) [+]
line wrap: on
line diff
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -1,3 +1,18 @@
+2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+	* fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
+	Don't assume that exit status -1 is valid.
+	* nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
+	* putenv.m4 (gl_FUNC_PUTENV): Likewise.
+	* rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
+	* readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
+	* rename.m4 (vb_FUNC_RENAME): Likewise.
+	* unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
+	not AC_TRY_RUN.  Use return, not exit.  Don't assume that
+	functions can be used without declaring them, or that you can
+	exit with status -1.
+	* utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
+
 2006-04-20  Bruno Haible  <bruno@clisp.org>
 
 	* argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
--- a/m4/fsusage.m4
+++ b/m4/fsusage.m4
@@ -1,7 +1,7 @@
-#serial 16
+#serial 17
 # Obtaining file system usage information.
 
-# Copyright (C) 1997, 1998, 2000, 2001, 2003, 2004, 2005 Free Software
+# Copyright (C) 1997, 1998, 2000, 2001, 2003, 2004, 2005, 2006 Free Software
 # Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
@@ -78,7 +78,7 @@
   {
     struct statfs fsd;
     fsd.f_fsize = 0;
-    exit (statfs (".", &fsd, sizeof (struct statfs)));
+    return statfs (".", &fsd, sizeof (struct statfs)) != 0;
   }],
   fu_cv_sys_stat_statfs3_osf1=yes,
   fu_cv_sys_stat_statfs3_osf1=no,
@@ -110,7 +110,7 @@
   {
   struct statfs fsd;
   fsd.f_bsize = 0;
-  exit (statfs (".", &fsd));
+  return statfs (".", &fsd) != 0;
   }],
   fu_cv_sys_stat_statfs2_bsize=yes,
   fu_cv_sys_stat_statfs2_bsize=no,
@@ -133,7 +133,7 @@
   main ()
   {
   struct statfs fsd;
-  exit (statfs (".", &fsd, sizeof fsd, 0));
+  return statfs (".", &fsd, sizeof fsd, 0) != 0;
   }],
     fu_cv_sys_stat_statfs4=yes,
     fu_cv_sys_stat_statfs4=no,
@@ -162,7 +162,7 @@
   {
   struct statfs fsd;
   fsd.f_fsize = 0;
-  exit (statfs (".", &fsd));
+  return statfs (".", &fsd) != 0;
   }],
   fu_cv_sys_stat_statfs2_fsize=yes,
   fu_cv_sys_stat_statfs2_fsize=no,
@@ -195,7 +195,7 @@
   struct fs_data fsd;
   /* Ultrix's statfs returns 1 for success,
      0 for not mounted, -1 for failure.  */
-  exit (statfs (".", &fsd) != 1);
+  return statfs (".", &fsd) != 1;
   }],
   fu_cv_sys_stat_fs_data=yes,
   fu_cv_sys_stat_fs_data=no,
--- a/m4/nanosleep.m4
+++ b/m4/nanosleep.m4
@@ -1,4 +1,4 @@
-#serial 15
+#serial 16
 
 dnl From Jim Meyering.
 dnl Check for the nanosleep function.
@@ -51,7 +51,7 @@
       struct timespec ts_sleep, ts_remaining;
       ts_sleep.tv_sec = 0;
       ts_sleep.tv_nsec = 1;
-      exit (nanosleep (&ts_sleep, &ts_remaining) == 0 ? 0 : 1);
+      return nanosleep (&ts_sleep, &ts_remaining) != 0;
     }
 	  ],
 	 jm_cv_func_nanosleep_works=yes,
--- a/m4/putenv.m4
+++ b/m4/putenv.m4
@@ -1,5 +1,5 @@
-# putenv.m4 serial 10
-dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+# putenv.m4 serial 11
+dnl Copyright (C) 2002, 2003, 2004, 2005, 2006 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.
@@ -17,17 +17,17 @@
     {
       /* Put it in env.  */
       if (putenv ("CONFTEST_putenv=val"))
-        exit (1);
+        return 1;
 
       /* Try to remove it.  */
       if (putenv ("CONFTEST_putenv"))
-        exit (1);
+        return 1;
 
       /* Make sure it was deleted.  */
       if (getenv ("CONFTEST_putenv") != 0)
-        exit (1);
+        return 1;
 
-      exit (0);
+      return 0;
     }
 	      ],
 	     jm_cv_func_svid_putenv=yes,
--- a/m4/readdir.m4
+++ b/m4/readdir.m4
@@ -1,6 +1,6 @@
-#serial 8
+#serial 9
 
-# Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003 Free Software
+# Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2006 Free Software
 # Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
@@ -33,6 +33,7 @@
 
   AC_TRY_RUN(
 [#   include <stdio.h>
+#   include <stdlib.h>
 #   include <sys/types.h>
 #   include <string.h>
 
--- a/m4/rename.m4
+++ b/m4/rename.m4
@@ -1,6 +1,6 @@
-#serial 8
+#serial 9
 
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2006 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -23,6 +23,7 @@
       AC_MSG_ERROR([cannot create temporary directory])
     AC_TRY_RUN([
 #       include <stdio.h>
+#       include <stdlib.h>
         int
         main ()
         {
--- a/m4/rmdir-errno.m4
+++ b/m4/rmdir-errno.m4
@@ -1,6 +1,6 @@
-#serial 5
+#serial 6
 
-# Copyright (C) 2000, 2001, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2005, 2006 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -32,7 +32,7 @@
 	  val = errno;
 	  s = fopen ("confdir2/errno", "w");
 	  fprintf (s, "%d\n", val);
-	  exit (0);
+	  return 0;
 	}
 	],
       gl_cv_func_rmdir_errno_not_empty=`cat confdir2/errno`,
--- a/m4/unlink-busy.m4
+++ b/m4/unlink-busy.m4
@@ -1,10 +1,10 @@
-#serial 8
+#serial 9
 
 dnl From J. David Anglin.
 
 dnl HPUX and other systems can't unlink shared text that is being executed.
 
-# Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2004, 2006 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -14,16 +14,16 @@
   AC_CACHE_CHECK([whether a running program can be unlinked],
     jm_cv_func_unlink_busy_text,
     [
-      AC_TRY_RUN([
-        main (argc, argv)
-          int argc;
-          char **argv;
-        {
-          if (!argc)
-            exit (-1);
-          exit (unlink (argv[0]));
-        }
-	],
+      AC_RUN_IFELSE(
+        [AC_LANG_SOURCE(
+           [AC_INCLUDES_DEFAULT
+	    int
+	    main (argc, argv)
+	      int argc;
+	      char **argv;
+	    {
+	      return !argc || unlink (argv[0]) != 0;
+	    }])],
       jm_cv_func_unlink_busy_text=yes,
       jm_cv_func_unlink_busy_text=no,
       jm_cv_func_unlink_busy_text=no
--- a/m4/utimes-null.m4
+++ b/m4/utimes-null.m4
@@ -1,6 +1,8 @@
-#serial 6
+#serial 7
 
-# Copyright (C) 1998, 1999, 2001, 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 1998, 1999, 2001, 2003, 2004, 2006 Free Software
+# Foundation, Inc.
+
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,13 +18,15 @@
 #undef stat
 #include <sys/types.h>
 #include <sys/stat.h>
-main() {
+#include <sys/time.h>
+int
+main () {
 struct stat s, t;
-exit(!(stat ("conftest.data", &s) == 0
-       && utimes("conftest.data", (long *)0) == 0
-       && stat("conftest.data", &t) == 0
-       && t.st_mtime >= s.st_mtime
-       && t.st_mtime - s.st_mtime < 120));
+return ! (stat ("conftest.data", &s) == 0
+	  && utimes ("conftest.data", 0) == 0
+	  && stat ("conftest.data", &t) == 0
+	  && t.st_mtime >= s.st_mtime
+	  && t.st_mtime - s.st_mtime < 120));
 }],
   ac_cv_func_utimes_null=yes,
   ac_cv_func_utimes_null=no,