diff options
author | Jim Meyering <jim@meyering.net> | 2003-05-26 20:23:14 +0000 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 2003-05-26 20:23:14 +0000 |
commit | e4ac725a11b6e8cc5b1e1f7f30a118d073e2dc89 (patch) | |
tree | 63f5915ed50bb0486b54d50b6ce6dca6bb5ea78a | |
parent | 1df8b738db6355899d5eff4c14ecf6a25a388f38 (diff) | |
download | coreutils-e4ac725a11b6e8cc5b1e1f7f30a118d073e2dc89.tar.xz |
Fix portability problem on FreeBSD5.0: don't include
<sys/statvfs.h> on systems without HAVE_STRUCT_STATVFS_F_BASETYPE.
Use #if/#elif/... cascade so we get only one set of include files.
-rw-r--r-- | src/stat.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/src/stat.c b/src/stat.c index 841cffa09..af19a17be 100644 --- a/src/stat.c +++ b/src/stat.c @@ -25,24 +25,22 @@ #include <grp.h> #include <unistd.h> #include <time.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 -# if HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H +#elif HAVE_SYS_STATVFS_H && HAVE_STRUCT_STATVFS_F_BASETYPE +# include <sys/statvfs.h> +#elif HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H +/* NOTE: freebsd5.0 needs sys/param.h and sys/mount.h for statfs. + It does have statvfs.h, but shouldn't use it, since it doesn't + HAVE_STRUCT_STATVFS_F_BASETYPE. So find a clean way to fix it. */ /* 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 +# 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 +# include <netinet/in.h> +# include <nfs/nfs_clnt.h> +# include <nfs/vfs.h> #endif #include "system.h" |