On 10/04/2023 03:32, Paul Eggert wrote:
For a bit of time Savannah coreutils master was rejecting platforms with
32-bit signed time_t, with the idea that we really need to get
installations to be year 2038 safe. Coreutils used Gnulib's
AC_SYS_LARGEFILE to do that. However, this proved a bridge too far for
general use, and Autoconf master now has AC_SYS_YEAR2038_REQUIRED to do
this sort of thing instead. I've migrated this into Gnulib and have just
installed the attached patch to bring Savannah coreutils master back to
the state where 'configure' insists on support for timestamps past 2038.

We need to adjust the build instructions to allow enabling 32b-bit time_t.
The attached attempts to do that, but I'm unsure of the details.
Note I tested the attached on Solaris 10 on Sparc,
where the build failed without the ac_year2038_required=no configure option.

cheers,
Pádraig
From 5f624f007d95a8208e98a8741af9bef717760106 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C3=A1draig=20Brady?= <p...@draigbrady.com>
Date: Mon, 10 Apr 2023 15:14:21 +0100
Subject: [PATCH] build: document how to enable 32 bit time_t builds

* README-install: Adjust the info to support 32 bit time_t builds,
following the recent change to use the year2038-required gnulib module.
---
 README-install | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/README-install b/README-install
index 0c5bcf470..9f33f9ef9 100644
--- a/README-install
+++ b/README-install
@@ -54,10 +54,8 @@ all mention of "[$(EXEEXT)" from src/Makefile.
 32 bit time_t build failures
 ------------------------
 
-On systems where it's determined that 64 bit time_t is supported
-(indicated by touch -t <some time after 2038>), but that coreutils
-would be built with a narrower time_t, the build will fail.
-This can be allowed by passing TIME_T_32_BIT_OK=yes to configure,
+On systems where 64 bit time_t is not supported, the build will fail.
+This can be allowed by passing ac_year2038_required=no to configure,
 or avoided by enabling 64 bit builds.  For example GCC on AIX defaults
 to 32 bit, and to enable the 64 bit ABI one can use:
 ./configure CFLAGS=-maix64 LDFLAGs=-maix64 AR='ar -X64'
-- 
2.26.2

Reply via email to