summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4')
-rw-r--r--m4/stat-prog.m448
1 files changed, 48 insertions, 0 deletions
diff --git a/m4/stat-prog.m4 b/m4/stat-prog.m4
new file mode 100644
index 000000000..f5a40ba33
--- /dev/null
+++ b/m4/stat-prog.m4
@@ -0,0 +1,48 @@
+#serial 1
+# Record the prerequisites of src/stat.c from the coreutils package.
+
+AC_DEFUN([cu_PREREQ_STAT_PROG],
+[
+ 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)
+
+ # For `struct statfs' on Ultrix 4.4.
+ AC_CHECK_HEADERS([netinet/in.h nfs/nfs_clnt.h nfs/vfs.h],,,
+ [AC_INCLUDES_DEFAULT])
+
+ AC_REQUIRE([gl_AC_TYPE_LONG_LONG])
+
+ statxfs_includes="\
+$ac_includes_default
+#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
+# if 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>
+# elif HAVE_NETINET_IN_H && HAVE_NFS_NFS_CLNT_H && HAVE_NFS_VFS_H
+/* Ultrix 4.4 needs these for the declaration of struct statfs. */
+# include <netinet/in.h>
+# include <nfs/nfs_clnt.h>
+# include <nfs/vfs.h>
+# endif
+#endif
+"
+ 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])
+])