summaryrefslogtreecommitdiff
path: root/posix/posix-envs.def
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-02-17 13:35:19 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-02-18 20:42:42 -0300
commit904cb172e7e49e4d36e9e22897ea3a081055fa72 (patch)
tree05a6e2545ee1fe4db89ff26ad01886265d471f9f /posix/posix-envs.def
parent3c0cd0d37d1d793ba66ac996b4aaf7fc200e17a8 (diff)
downloadglibc-904cb172e7e49e4d36e9e22897ea3a081055fa72.tar.gz
y2038: Add support for 64 bit time on legacy ABIs
A new build flag, _TIME_BITS, enables the usage of the newer 64 bit time symbols for legacy ABI (where 32 bit time_t is default). The 64 bit time support is only enabled if LFS (_FILE_OFFSET_BITS=64) is also used. Different than LFS support, the y2038 symbols are added only for the required ABIs (armhf, csky, hppa, i386, m68k, microblaze, mips32, nios2, powerpc32, sparc32, s390-32, and sh). The ABIs with 64 bit time support are unchanged, both for symbol and types redirection. On Linux apropoer 64 bit time support requires a minimum of kernel version v5.1. Otherwise, the 32 bit fallbacks are used and might results in error with overflow return code (EOVERFLOW). The i686-gnu does not yet support 64 bit time, and trying to build it using -D_TIME_BITS=64 results in an error. This patch also converts following implemetations to support 64 bit time: * libc: - adjtimex - adjtime - clock_adjtime - clock_getres - clock_gettime - clock_nanosleep_time - clock_settime - ctime - ctime_r - difftime - futimens - futimes - futimesat - getitimer - getrusage - gettimeofday - gmtime - gmtime - lutimes - mktime - msgctl - nanosleep - ntp_gettime - ntp_gettimex - ppoll - pselect - recvmmsg - sched_rr_get_interval - select - semctl - semtimedop - setitimer - settimeofday - shmctl - sigtimedwait - time - timegm - timerfd_gettime - timerfd_settime - timespec_get - utime - utimensat - utimes - wait3 - wait4 * libpthread: - mtx_timedlock - pthread_clockjoin_np - pthread_cond_clockwait - pthread_cond_timedwait - pthread_mutex_clocklock - pthread_mutex_timedlock - pthread_rwlock_clockrdlock - pthread_rwlock_clockwrlock - pthread_rwlock_timedrdlock - pthread_rwlock_timedwrlock - pthread_timedjoin_np - sem_clockwait - sem_timedwait * librt: - aio_suspend_time - mq_timedreceive_time - mq_timedsend_time - timer_gettime - timer_settime * libanl: - gai_suspend
Diffstat (limited to 'posix/posix-envs.def')
0 files changed, 0 insertions, 0 deletions