From 1bf7ea8fd12af0520594af4736646dab91aa341f Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Sat, 22 Mar 2003 21:32:22 +0000 Subject: Don't include . 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 | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/src/stat.c b/src/stat.c index 455f1c709..473f265a8 100644 --- a/src/stat.c +++ b/src/stat.c @@ -21,9 +21,6 @@ #include #include -#ifdef HAVE_SYS_SYSMACROS_H -# include -#endif #include #include #include @@ -79,6 +76,14 @@ # 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 } -- cgit v1.2.3-70-g09d2