From: Zack Weinberg Date: Wed, 18 Mar 2026 18:34:15 +0000 (-0400) Subject: Allow --enable/disable-year2038 to be set in environment. X-Git-Tag: v2.73~4 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=f4ad4d43ad1fc021839c4dcb030a6d236fdbb33c;p=thirdparty%2Fautoconf.git Allow --enable/disable-year2038 to be set in environment. In both AC_SYS_YEAR2038 and AC_SYS_YEAR2038_RECOMMENDED, only set the shell variable ‘enable_year2038’ if it doesn’t already have a value, thus allowing it to be passed down from the environment. Fixes . * lib/autoconf/specific.m4 (_AC_SYS_YEAR2038_ENABLE): When setting the default value of enable_year2038, do not override a value that was set in the environment. * tests/semantics.at: Add tests for setting enable_year2038 in the environment and in config.site. --- diff --git a/lib/autoconf/specific.m4 b/lib/autoconf/specific.m4 index 38e9bfaeb..5b0ea7e58 100644 --- a/lib/autoconf/specific.m4 +++ b/lib/autoconf/specific.m4 @@ -184,8 +184,8 @@ AS_CASE([$ac_cv_sys_year2038_opts], m4_define([_AC_SYS_YEAR2038_ENABLE], [m4_divert_text([DEFAULTS], m4_provide_if([AC_SYS_YEAR2038], - [enable_year2038=yes], - [enable_year2038=no]))]dnl + [: ${enable_year2038:=yes}], + [: ${enable_year2038:=no}]))]dnl [AC_ARG_ENABLE([year2038], m4_provide_if([AC_SYS_YEAR2038], [AS_HELP_STRING([--disable-year2038], diff --git a/tests/semantics.at b/tests/semantics.at index 1d061cb74..b0176b35c 100644 --- a/tests/semantics.at +++ b/tests/semantics.at @@ -953,6 +953,47 @@ AT_CAPTURE_FILE([config.log]) AT_CHECK([./configure $configure_options || exit 77], [0], [ignore], []) ]) + +AT_SETUP([AC_SYS_YEAR2038_RECOMMENDED config.site override]) + +AT_CONFIGURE_AC([AC_SYS_YEAR2038_RECOMMENDED]) + +AT_CHECK_AUTOCONF +AT_CHECK_AUTOHEADER([], [ignore]) + +AT_DATA([config.site], +[enable_year2038=no +]) +CONFIG_SITE=`pwd`/config.site +export CONFIG_SITE + +AT_CHECK_CONFIGURE +AT_CHECK_ENV + +AT_CHECK([$EGREP -e '#undef _TIME_BITS' config.h], [0], [ignore]) +AT_CHECK([$EGREP -e '#undef __MINGW_USE_VC2005_COMPAT' config.h], [0], [ignore]) + +AT_CLEANUP + + +AT_SETUP([AC_SYS_YEAR2038_RECOMMENDED environment override]) + +AT_CONFIGURE_AC([AC_SYS_YEAR2038_RECOMMENDED]) + +AT_CHECK_AUTOCONF +AT_CHECK_AUTOHEADER([], [ignore]) + +enable_year2038=no +export enable_year2038 + +AT_CHECK_CONFIGURE +AT_CHECK_ENV + +AT_CHECK([$EGREP -e '#undef _TIME_BITS' config.h], [0], [ignore]) +AT_CHECK([$EGREP -e '#undef __MINGW_USE_VC2005_COMPAT' config.h], [0], [ignore]) + +AT_CLEANUP + ## ------------------------------- ## ## Obsolete non-updatable macros. ## ## ------------------------------- ##