From: Jim Meyering <jim@meyering.net>
Date: Fri, 7 Jun 2002 14:43:36 +0000 (+0000)
Subject: (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
X-Git-Tag: FILEUTILS-4_1_9~51
X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=3020c6e8913e682a94e7333d65699a89e06f7035;p=gnulib.git

(jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
They're needed at least for NetBSD 1.5.2.
($statxfs_includes): Include those same headers.
($statxfs_includes): Include sys/vfs.h if available.
($statxfs_includes): Likewise for sys/statvfs.h.
Check for the following members in both structs statfs and statvfs:
f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
---

diff --git a/m4/prereq.m4 b/m4/prereq.m4
index afa4e5fcb4..3045c9d664 100644
--- a/m4/prereq.m4
+++ b/m4/prereq.m4
@@ -167,20 +167,35 @@ AC_DEFUN([jm_PREREQ_REGEX],
 AC_DEFUN([jm_PREREQ_STAT],
 [
   AC_CHECK_HEADERS(sys/sysmacros.h sys/statvfs.h sys/vfs.h inttypes.h)
+  AC_CHECK_HEADERS(sys/param.h sys/mount.h)
   AC_CHECK_FUNCS(statvfs)
   jm_AC_TYPE_LONG_LONG
-  statfs_includes="\
-$ac_includes_default
-#include <sys/vfs.h>
-"
-  statvfs_includes="\
+
+  statxfs_includes="\
 $ac_includes_default
-#include <sys/statvfs.h>
+#if HAVE_SYS_STATVFS_H
+# include <sys/statvfs.h>
+#endif
+#if HAVE_SYS_VFS_H
+# include <sys/vfs.h>
+#endif
+#if ( ! HAVE_SYS_STATVFS_H && ! HAVE_SYS_VFS_H && HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H )
+/* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */
+# include <sys/param.h>
+# include <sys/mount.h>
+#endif
 "
-  AC_CHECK_MEMBERS([struct statfs.f_basetype],,,[$statfs_includes])
-  AC_CHECK_MEMBERS([struct statvfs.f_basetype],,,[$statvfs_includes])
-  AC_CHECK_MEMBERS([struct statfs.f_type],,,[$statfs_includes])
-  AC_CHECK_MEMBERS([struct statvfs.f_type],,,[$statvfs_includes])
+  AC_CHECK_MEMBERS([struct statfs.f_basetype],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statvfs.f_basetype],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statfs.f_type],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statvfs.f_type],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statfs.f_fsid.__val],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statvfs.f_fsid.__val],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statfs.f_namemax],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statvfs.f_namemax],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statfs.f_namelen],,,[$statxfs_includes])
+  AC_CHECK_MEMBERS([struct statvfs.f_namelen],,,[$statxfs_includes])
 ])
 
 AC_DEFUN([jm_PREREQ_STRNLEN],