summaryrefslogtreecommitdiff
path: root/Porting
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2015-10-30 17:50:42 -0400
committerJarkko Hietaniemi <jhi@iki.fi>2015-10-30 17:50:42 -0400
commitea4421009acdf10bf0a7b26ff22c5afd431690db (patch)
tree89915d220d6dc218f562e104980c7c25a9f748ce /Porting
parent7711f97842bc713f668a0686e9cb44322fe53f8c (diff)
downloadperl-ea4421009acdf10bf0a7b26ff22c5afd431690db.tar.gz
Revert "Remove unused filesystem stat symbols."
This reverts commit 821805a244cacd9869331999cd53407f3323206a. What's out, is out. perl #107904 Filesys-Df perl #108189 Filesys-DfPortable perl #108191 Filesys-Statvfs perl #126368 Filesys-DfPortable
Diffstat (limited to 'Porting')
-rw-r--r--Porting/Glossary73
-rw-r--r--Porting/config.sh17
-rw-r--r--Porting/config_H100
3 files changed, 190 insertions, 0 deletions
diff --git a/Porting/Glossary b/Porting/Glossary
index ae8cc79261..68ee298416 100644
--- a/Porting/Glossary
+++ b/Porting/Glossary
@@ -932,6 +932,10 @@ d_frexpl (d_frexpl.U):
This variable conditionally defines the HAS_FREXPL symbol, which
indicates to the C program that the frexpl() routine is available.
+d_fs_data_s (d_fs_data_s.U):
+ This variable conditionally defines the HAS_STRUCT_FS_DATA symbol,
+ which indicates that the struct fs_data is supported.
+
d_fseeko (d_fseeko.U):
This variable conditionally defines the HAS_FSEEKO symbol, which
indicates to the C program that the fseeko() routine is available.
@@ -940,6 +944,14 @@ d_fsetpos (d_fsetpos.U):
This variable conditionally defines HAS_FSETPOS if fsetpos() is
available to set the file position indicator.
+d_fstatfs (d_fstatfs.U):
+ This variable conditionally defines the HAS_FSTATFS symbol, which
+ indicates to the C program that the fstatfs() routine is available.
+
+d_fstatvfs (d_statvfs.U):
+ This variable conditionally defines the HAS_FSTATVFS symbol, which
+ indicates to the C program that the fstatvfs() routine is available.
+
d_fsync (d_fsync.U):
This variable conditionally defines the HAS_FSYNC symbol, which
indicates to the C program that the fsync() routine is available.
@@ -1010,6 +1022,10 @@ d_getespwnam (d_getespwnam.U):
This variable conditionally defines HAS_GETESPWNAM if getespwnam() is
available to retrieve enhanced (shadow) password entries by name.
+d_getfsstat (d_getfsstat.U):
+ This variable conditionally defines the HAS_GETFSSTAT symbol, which
+ indicates to the C program that the getfsstat() routine is available.
+
d_getgrent (d_getgrent.U):
This variable conditionally defines the HAS_GETGRENT symbol, which
indicates to the C program that the getgrent() routine is available
@@ -1089,6 +1105,16 @@ d_getlogin_r (d_getlogin_r.U):
which indicates to the C program that the getlogin_r()
routine is available.
+d_getmnt (d_getmnt.U):
+ This variable conditionally defines the HAS_GETMNT symbol, which
+ indicates to the C program that the getmnt() routine is available
+ to retrieve one or more mount info blocks by filename.
+
+d_getmntent (d_getmntent.U):
+ This variable conditionally defines the HAS_GETMNTENT symbol, which
+ indicates to the C program that the getmntent() routine is available
+ to iterate through mounted files to get their mount info.
+
d_getnameinfo (d_getnameinfo.U):
This variable conditionally defines the HAS_GETNAMEINFO symbol,
which indicates to the C program that the getnameinfo() function
@@ -1284,6 +1310,11 @@ d_grpasswd (i_grp.U):
This variable conditionally defines GRPASSWD, which indicates
that struct group in <grp.h> contains gr_passwd.
+d_hasmntopt (d_hasmntopt.U):
+ This variable conditionally defines the HAS_HASMNTOPT symbol, which
+ indicates to the C program that the hasmntopt() routine is available
+ to query the mount options of file systems.
+
d_htonl (d_htonl.U):
This variable conditionally defines HAS_HTONL if htonl() and its
friends are available to do network order byte swapping.
@@ -2362,12 +2393,26 @@ d_statblks (d_statblks.U):
if this system has a stat structure declaring
st_blksize and st_blocks.
+d_statfs_f_flags (d_statfs_f_flags.U):
+ This variable conditionally defines the HAS_STRUCT_STATFS_F_FLAGS
+ symbol, which indicates to struct statfs from has f_flags member.
+ This kind of struct statfs is coming from sys/mount.h (BSD),
+ not from sys/statfs.h (SYSV).
+
+d_statfs_s (d_statfs_s.U):
+ This variable conditionally defines the HAS_STRUCT_STATFS symbol,
+ which indicates that the struct statfs is supported.
+
d_static_inline (d_static_inline.U):
This variable conditionally defines the HAS_STATIC_INLINE symbol,
which indicates that the C compiler supports C99-style static
inline. That is, the function can't be called from another
translation unit.
+d_statvfs (d_statvfs.U):
+ This variable conditionally defines the HAS_STATVFS symbol, which
+ indicates to the C program that the statvfs() routine is available.
+
d_stdio_cnt_lval (d_stdstdio.U):
This variable conditionally defines STDIO_CNT_LVALUE if the
FILE_cnt macro can be used as an lvalue.
@@ -2630,6 +2675,10 @@ d_usleepproto (d_usleepproto.U):
a prototype for the usleep() function. Otherwise, it is
up to the program to supply one.
+d_ustat (d_ustat.U):
+ This variable conditionally defines HAS_USTAT if ustat() is
+ available to query file system statistics by dev_t.
+
d_vendorarch (vendorarch.U):
This variable conditionally defined PERL_VENDORARCH.
@@ -3361,6 +3410,10 @@ i_memory (i_memory.U):
This variable conditionally defines the I_MEMORY symbol, and indicates
whether a C program should include <memory.h>.
+i_mntent (i_mntent.U):
+ This variable conditionally defines the I_MNTENT symbol, and indicates
+ whether a C program should include <mntent.h>.
+
i_ndbm (i_ndbm.U):
This variable conditionally defines the I_NDBM symbol, which
indicates to the C program that <ndbm.h> exists and should
@@ -3494,6 +3547,10 @@ i_sysmode (i_sysmode.U):
This variable conditionally defines the I_SYSMODE symbol,
and indicates whether a C program should include <sys/mode.h>.
+i_sysmount (i_sysmount.U):
+ This variable conditionally defines the I_SYSMOUNT symbol,
+ and indicates whether a C program should include <sys/mount.h>.
+
i_sysndir (i_sysndir.U):
This variable conditionally defines the I_SYS_NDIR symbol, and indicates
whether a C program should include <sys/ndir.h>.
@@ -3528,6 +3585,14 @@ i_sysstat (i_sysstat.U):
This variable conditionally defines the I_SYS_STAT symbol,
and indicates whether a C program should include <sys/stat.h>.
+i_sysstatfs (i_sysstatfs.U):
+ This variable conditionally defines the I_SYSSTATFS symbol,
+ and indicates whether a C program should include <sys/statfs.h>.
+
+i_sysstatvfs (i_sysstatvfs.U):
+ This variable conditionally defines the I_SYSSTATVFS symbol,
+ and indicates whether a C program should include <sys/statvfs.h>.
+
i_systime (i_time.U):
This variable conditionally defines I_SYS_TIME, which indicates
to the C program that it should include <sys/time.h>.
@@ -3558,6 +3623,10 @@ i_sysutsname (i_sysutsname.U):
This variable conditionally defines the I_SYSUTSNAME symbol,
and indicates whether a C program should include <sys/utsname.h>.
+i_sysvfs (i_sysvfs.U):
+ This variable conditionally defines the I_SYSVFS symbol,
+ and indicates whether a C program should include <sys/vfs.h>.
+
i_syswait (i_syswait.U):
This variable conditionally defines I_SYS_WAIT, which indicates
to the C program that it should include <sys/wait.h>.
@@ -3580,6 +3649,10 @@ i_unistd (i_unistd.U):
This variable conditionally defines the I_UNISTD symbol, and indicates
whether a C program should include <unistd.h>.
+i_ustat (i_ustat.U):
+ This variable conditionally defines the I_USTAT symbol, and indicates
+ whether a C program should include <ustat.h>.
+
i_utime (i_utime.U):
This variable conditionally defines the I_UTIME symbol, and indicates
whether a C program should include <utime.h>.
diff --git a/Porting/config.sh b/Porting/config.sh
index d22437c11f..b7e75bd311 100644
--- a/Porting/config.sh
+++ b/Porting/config.sh
@@ -231,8 +231,11 @@ d_fpclassl='undef'
d_fpgetround='undef'
d_fpos64_t='undef'
d_frexpl='define'
+d_fs_data_s='undef'
d_fseeko='define'
d_fsetpos='define'
+d_fstatfs='define'
+d_fstatvfs='define'
d_fsync='define'
d_ftello='define'
d_ftime='undef'
@@ -242,6 +245,7 @@ d_gdbmndbm_h_uses_prototypes='undef'
d_getaddrinfo='define'
d_getcwd='define'
d_getespwnam='undef'
+d_getfsstat='undef'
d_getgrent='define'
d_getgrent_r='undef'
d_getgrgid_r='undef'
@@ -258,6 +262,8 @@ d_gethostprotos='define'
d_getitimer='define'
d_getlogin='define'
d_getlogin_r='undef'
+d_getmnt='undef'
+d_getmntent='define'
d_getnameinfo='define'
d_getnbyaddr='define'
d_getnbyname='define'
@@ -298,6 +304,7 @@ d_gmtime64='undef'
d_gmtime_r='undef'
d_gnulibc='define'
d_grpasswd='define'
+d_hasmntopt='define'
d_htonl='define'
d_hypot='undef'
d_ilogb='undef'
@@ -525,7 +532,10 @@ d_sresgproto='undef'
d_sresuproto='undef'
d_stat='define'
d_statblks='define'
+d_statfs_f_flags='define'
+d_statfs_s='define'
d_static_inline='define'
+d_statvfs='define'
d_stdio_cnt_lval='undef'
d_stdio_ptr_lval='define'
d_stdio_ptr_lval_nochange_cnt='undef'
@@ -584,6 +594,7 @@ d_unordered='undef'
d_unsetenv='define'
d_usleep='define'
d_usleepproto='define'
+d_ustat='define'
d_vendorarch='undef'
d_vendorbin='undef'
d_vendorlib='undef'
@@ -734,6 +745,7 @@ i_malloc='define'
i_mallocmalloc='undef'
i_math='define'
i_memory='undef'
+i_mntent='define'
i_ndbm='define'
i_netdb='define'
i_neterrno='undef'
@@ -764,6 +776,7 @@ i_sysioctl='define'
i_syslog='define'
i_sysmman='define'
i_sysmode='undef'
+i_sysmount='define'
i_sysndir='undef'
i_sysparam='define'
i_syspoll='define'
@@ -772,6 +785,8 @@ i_syssecrt='undef'
i_sysselct='define'
i_syssockio='undef'
i_sysstat='define'
+i_sysstatfs='define'
+i_sysstatvfs='define'
i_systime='define'
i_systimek='undef'
i_systimes='define'
@@ -779,11 +794,13 @@ i_systypes='define'
i_sysuio='define'
i_sysun='define'
i_sysutsname='define'
+i_sysvfs='define'
i_syswait='define'
i_termio='undef'
i_termios='define'
i_time='define'
i_unistd='define'
+i_ustat='define'
i_utime='define'
i_values='define'
i_varargs='undef'
diff --git a/Porting/config_H b/Porting/config_H
index 1b9337a026..08ff181dab 100644
--- a/Porting/config_H
+++ b/Porting/config_H
@@ -3304,12 +3304,24 @@
*/
#define HAS_FREXPL /**/
+/* HAS_STRUCT_FS_DATA:
+ * This symbol, if defined, indicates that the struct fs_data
+ * to do statfs() is supported.
+ */
+/*#define HAS_STRUCT_FS_DATA / **/
+
/* HAS_FSEEKO:
* This symbol, if defined, indicates that the fseeko routine is
* available to fseek beyond 32 bits (useful for ILP32 hosts).
*/
#define HAS_FSEEKO /**/
+/* HAS_FSTATFS:
+ * This symbol, if defined, indicates that the fstatfs routine is
+ * available to stat filesystems by file descriptors.
+ */
+#define HAS_FSTATFS /**/
+
/* HAS_FSYNC:
* This symbol, if defined, indicates that the fsync routine is
* available to write a file's modified data and attributes to
@@ -3347,12 +3359,30 @@
*/
/*#define HAS_GETESPWNAM / **/
+/* HAS_GETFSSTAT:
+ * This symbol, if defined, indicates that the getfsstat routine is
+ * available to stat filesystems in bulk.
+ */
+/*#define HAS_GETFSSTAT / **/
+
/* HAS_GETITIMER:
* This symbol, if defined, indicates that the getitimer routine is
* available to return interval timers.
*/
#define HAS_GETITIMER /**/
+/* HAS_GETMNT:
+ * This symbol, if defined, indicates that the getmnt routine is
+ * available to get filesystem mount info by filename.
+ */
+/*#define HAS_GETMNT / **/
+
+/* HAS_GETMNTENT:
+ * This symbol, if defined, indicates that the getmntent routine is
+ * available to iterate through mounted file systems to get their info.
+ */
+#define HAS_GETMNTENT /**/
+
/* HAS_GETNAMEINFO:
* This symbol, if defined, indicates that the getnameinfo() function
* is available for use.
@@ -3371,6 +3401,12 @@
*/
#define HAS_GETSPNAM /**/
+/* HAS_HASMNTOPT:
+ * This symbol, if defined, indicates that the hasmntopt routine is
+ * available to query the mount options of file systems.
+ */
+#define HAS_HASMNTOPT /**/
+
/* HAS_ILOGBL:
* This symbol, if defined, indicates that the ilogbl routine is
* available. If scalbnl is also present we can emulate frexpl.
@@ -3666,6 +3702,29 @@
*/
/*#define HAS_SETRESUID_PROTO / **/
+/* HAS_STRUCT_STATFS_F_FLAGS:
+ * This symbol, if defined, indicates that the struct statfs
+ * does have the f_flags member containing the mount flags of
+ * the filesystem containing the file.
+ * This kind of struct statfs is coming from <sys/mount.h> (BSD 4.3),
+ * not from <sys/statfs.h> (SYSV). Older BSDs (like Ultrix) do not
+ * have statfs() and struct statfs, they have ustat() and getmnt()
+ * with struct ustat and struct fs_data.
+ */
+/*#define HAS_STRUCT_STATFS_F_FLAGS / **/
+
+/* HAS_STRUCT_STATFS:
+ * This symbol, if defined, indicates that the struct statfs
+ * to do statfs() is supported.
+ */
+#define HAS_STRUCT_STATFS /**/
+
+/* HAS_FSTATVFS:
+ * This symbol, if defined, indicates that the fstatvfs routine is
+ * available to stat filesystems by file descriptors.
+ */
+#define HAS_FSTATVFS /**/
+
/* HAS_STRFTIME:
* This symbol, if defined, indicates that the strftime routine is
* available to do time formatting.
@@ -3803,6 +3862,12 @@
*/
#define HAS_USLEEP_PROTO /**/
+/* HAS_USTAT:
+ * This symbol, if defined, indicates that the ustat system call is
+ * available to query file system statistics by dev_t.
+ */
+#define HAS_USTAT /**/
+
/* HAS_WRITEV:
* This symbol, if defined, indicates that the writev routine is
* available to do scatter writes.
@@ -3913,6 +3978,12 @@
*/
/*#define I_MALLOCMALLOC / **/
+/* I_MNTENT:
+ * This symbol, if defined, indicates that <mntent.h> exists and
+ * should be included.
+ */
+#define I_MNTENT /**/
+
/* I_NETINET_TCP:
* This symbol, if defined, indicates to the C program that it should
* include <netinet/tcp.h>.
@@ -3961,12 +4032,41 @@
*/
/*#define I_SYSMODE / **/
+/* I_SYS_MOUNT:
+ * This symbol, if defined, indicates that <sys/mount.h> exists and
+ * should be included.
+ */
+#define I_SYS_MOUNT /**/
+
+/* I_SYS_STATFS:
+ * This symbol, if defined, indicates that <sys/statfs.h> exists.
+ */
+#define I_SYS_STATFS /**/
+
+/* I_SYS_STATVFS:
+ * This symbol, if defined, indicates that <sys/statvfs.h> exists and
+ * should be included.
+ */
+#define I_SYS_STATVFS /**/
+
/* I_SYSUTSNAME:
* This symbol, if defined, indicates that <sys/utsname.h> exists and
* should be included.
*/
#define I_SYSUTSNAME /**/
+/* I_SYS_VFS:
+ * This symbol, if defined, indicates that <sys/vfs.h> exists and
+ * should be included.
+ */
+#define I_SYS_VFS /**/
+
+/* I_USTAT:
+ * This symbol, if defined, indicates that <ustat.h> exists and
+ * should be included.
+ */
+#define I_USTAT /**/
+
/* PERL_PRIfldbl:
* This symbol, if defined, contains the string used by stdio to
* format long doubles (format 'f') for output.