# Copyright © 2023 Nick Bowler # # Autotest monkey patches to fix some issues. This should be included before # expanding AT_INIT. # # License WTFPL2: Do What The Fuck You Want To Public License, version 2. # This is free software: you are free to do what the fuck you want to. # There is NO WARRANTY, to the extent permitted by law. # In a shell function, redirections on : are not correctly handled by some # shells, including Solaris 10 /bin/sh. Work around the problem using 'eval'. # See the following Autoconf patch description for further details: # # https://lists.gnu.org/archive/html/autoconf-patches/2021-03/msg00000.html m4_define([AT_INIT], m4_bpatsubst(m4_dquote(m4_defn([AT_INIT])), [^\( *\)\(: >"\$at_stdout".*$\)], [\1eval '\2'])) # Parsing of command-line options with arguments is busted in the two-argument # form if the option name contains a hyphen. Apply a fix for this bug. See # the following Autoconf patch description for further details: # # https://lists.gnu.org/archive/html/autoconf-patches/2020-02/msg00000.html m4_define([_AT_ARG_OPTION], m4_bpatsubst(m4_dquote(m4_defn([_AT_ARG_OPTION])), [at_prev=--AT_first_option_tr], [at_prev=--AT_first_option])) # The computation of the elapsed time can crash the testsuite on DJGPP because # in this environment date +%s can return a string that starts with a 0, which # bash interprets as octal digits in arithmetic expansions. With a working # GNU-like date +%s the output should never start with a 0 so just reject # anything that does. m4_define([AT_INIT], m4_bpatsubst(m4_dquote(m4_defn([AT_INIT])), [\[0-9]\*,\[0-9]\*], [[1-9][0-9]*,[1-9][0-9]*]))