about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2019-12-17 18:19:05 -0500
committerRich Felker <dalias@aerifal.cx>2019-12-17 18:19:05 -0500
commitf12bd8e05c8bb2c3e2b91d635887ec424ef8fbd9 (patch)
tree3422273fde4f27abb33b8e4554737475b7581463 /include
parent9432bbd4e880850357fd0a81b429499451eb2084 (diff)
downloadmusl-f12bd8e05c8bb2c3e2b91d635887ec424ef8fbd9.tar.gz
musl-f12bd8e05c8bb2c3e2b91d635887ec424ef8fbd9.tar.xz
musl-f12bd8e05c8bb2c3e2b91d635887ec424ef8fbd9.zip
signal to kernel headers that time_t is 64-bit
linux/input.h and perhaps others use this macro to determine whether
the userspace time_t is 64-bit when potentially defining types in
terms of time_t and derived structures. the name __USE_TIME_BITS64 is
unfortunate; it really should have been in the __UAPI namespace. but
this is what was chosen back in v4.16 when first preparing input.h for
time64 userspace, presumably based on expectations about what the
glibc-internal features.h macro for time64 would be, and changing it
now would just put a new minimum version requirement on kernel
headers.

the __USE_TIME_BITS64 macro is not intended as a public interface. it
is purely an internal contract between libc and Linux uapi headers.
Diffstat (limited to 'include')
-rw-r--r--include/alltypes.h.in1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/alltypes.h.in b/include/alltypes.h.in
index 94aa2089..d9ff462e 100644
--- a/include/alltypes.h.in
+++ b/include/alltypes.h.in
@@ -1,5 +1,6 @@
 #define __LITTLE_ENDIAN 1234
 #define __BIG_ENDIAN 4321
+#define __USE_TIME_BITS64 1
 
 TYPEDEF unsigned _Addr size_t;
 TYPEDEF unsigned _Addr uintptr_t;