]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
Don't include <sys/sysmacros.h>.
authorJim Meyering <jim@meyering.net>
Sat, 22 Mar 2003 21:32:22 +0000 (21:32 +0000)
committerJim Meyering <jim@meyering.net>
Sat, 22 Mar 2003 21:32:22 +0000 (21:32 +0000)
That is already done via system.h.  Otherwise, the multiple
inclusion would evoke redefinition warnings from Cray's /bin/cc
(Cray Standard C Version 4.0.3  (057126) Mar 22 2003  22:02:28).
(human_fstype): Factor some directives `up', out of this function.
Cast away `const' to avoid error from Cray's /bin/cc.

src/stat.c

index 455f1c709885382821082a4392f1b9afe2bdcf0f..473f265a85ce7caa9fe0af4364c33ca9625ab5af 100644 (file)
@@ -21,9 +21,6 @@
 
 #include <stdio.h>
 #include <sys/types.h>
-#ifdef HAVE_SYS_SYSMACROS_H
-# include <sys/sysmacros.h>
-#endif
 #include <pwd.h>
 #include <grp.h>
 #include <unistd.h>
 # define NAMEMAX_FORMAT "s"
 #endif
 
+#if HAVE_STRUCT_STATVFS_F_BASETYPE
+# define STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME f_basetype
+#else
+# if HAVE_STRUCT_STATFS_F_FSTYPENAME
+#  define STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME f_basetype
+# endif
+#endif
+
 #define PROGRAM_NAME "stat"
 
 #define AUTHORS "Michael Meskes"
@@ -106,17 +111,14 @@ char *program_name;
 static char *
 human_fstype (STRUCT_STATVFS const *statfsbuf)
 {
-#if HAVE_STRUCT_STATVFS_F_BASETYPE
-  return statfsbuf->f_basetype;
+#ifdef STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME
+  /* Cast away the `const' attribute.  */
+  return (char *) statfsbuf->STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME;
 #else
-# if HAVE_STRUCT_STATFS_F_FSTYPENAME
-  return statfsbuf->f_fstypename;
-# else
   char const *type;
-
   switch (statfsbuf->f_type)
     {
-#  if defined __linux__
+# if defined __linux__
     case S_MAGIC_AFFS:
       type = "affs";
       break;
@@ -204,7 +206,7 @@ human_fstype (STRUCT_STATVFS const *statfsbuf)
     case S_MAGIC_ROMFS:
       type = "romfs";
       break;
-#  elif __GNU__
+# elif __GNU__
     case FSTYPE_UFS:
       type = "ufs";
       break;
@@ -286,7 +288,7 @@ human_fstype (STRUCT_STATVFS const *statfsbuf)
     case FSTYPE_ISO9660:
       type = "iso9660";
       break;
-#  endif
+# endif
     default:
       type = NULL;
       break;
@@ -301,7 +303,6 @@ human_fstype (STRUCT_STATVFS const *statfsbuf)
     sprintf (buf, "UNKNOWN (0x%x)", statfsbuf->f_type);
     return buf;
   }
-# endif
 #endif
 }