summaryrefslogtreecommitdiff
path: root/doc/largefile.texi
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2021-07-01 19:29:57 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2021-07-01 19:33:19 -0700
commitdc09dc0888485698a8e74205b9df43159aef0f61 (patch)
treedde82a14a7d2a34c2d72f6decfc7b60fe6ee63a8 /doc/largefile.texi
parenta1b12914220e2dd1619f2362e384492406231827 (diff)
downloadgnulib-dc09dc0888485698a8e74205b9df43159aef0f61.tar.gz
year2038: support glibc 2.34 _TIME_BITS=64
In glibc 2.34 on Linux kernels where time_t is traditionally 32-bit, defining _FILE_OFFSET_BITS=64 and _TIME_BITS=64 makes time_t 64-bit. Apps must define both macros. Gnulib applications that use either the largefile or the year2038 modules will want this behavior; largefile because it deals with the off_t and ino_t components of struct stat already, and so should also deal with time_t. * NEWS, doc/largefile.texi, doc/posix-headers/time.texi: Mention this. * m4/largefile.m4: Override two macros even in Autoconf 2.70 and later. (_AC_SYS_LARGEFILE_MACRO_VALUE): #undef $1 before #defining it, in case some other Gnulib macro has #defined it. (AC_SYS_LARGEFILE): Use AS_IF and AS_CASE to propagate AC_REQUIREs. Invoke gl_YEAR2038_BODY if we need to set _FILE_OFFSET_BITS=64. * m4/year2038.m4 (gl_YEAR2038_TEST_INCLUDES): New macro. (gl_YEAR2038_BODY): New macro, with gl_YEAR2038’s old body; this macro is designed to be used directly instead of being AC_REQUIREd. It takes an argument specifying whether 64-bit is required. Set _TIME_BITS=64 if this makes a difference in time_t width when setting _FILE_OFFSET_BITS=64. Do not warn about 32-bit time_t more than once. * modules/largefile (Files): Add year2038.m4. (Depends-on): Require gl_YEAR2038_EARLY.
Diffstat (limited to 'doc/largefile.texi')
-rw-r--r--doc/largefile.texi5
1 files changed, 3 insertions, 2 deletions
diff --git a/doc/largefile.texi b/doc/largefile.texi
index 6d04b45b8a..13572b47e5 100644
--- a/doc/largefile.texi
+++ b/doc/largefile.texi
@@ -1,8 +1,9 @@
@node Large File Support
@section Large File Support
-The module provides support for files larger than 2 GB.
-To this effect, it ensures that @code{off_t} is a 64-bit integer type
+The module provides support for files larger than 2 GB, or with device
+or inode numbers or timestamps exceeding 32 bits. To this effect, it
+ensures that types like @code{off_t} and @code{time_t} are 64-bit when possible,
at least on the following platforms:
glibc, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, HP-UX, IRIX, Solaris,
Cygwin, mingw, MSVC.