[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: return values of test programs in *.m4 macros
From: |
Ralf Wildenhues |
Subject: |
Re: return values of test programs in *.m4 macros |
Date: |
Sun, 5 Dec 2010 19:39:41 +0100 |
User-agent: |
Mutt/1.5.20 (2010-08-04) |
Hello,
* Bruno Haible wrote on Sun, Dec 05, 2010 at 02:12:49AM CET:
> > If the particular
> > combination of failures matches 63, 77, or 99 (as commonly used by
> > automake and autoconf to mean version mismatch, skip, or hard fail),
> > then the configure script might misbehave.
>
> In the generated configure scripts, AC_RUN_IFELSE tests for an exit
> code equal to 0 and nothing else. And this cannot change, because it's
> documented behaviour of AC_RUN_IFELSE:
>
> -- Macro: AC_RUN_IFELSE (INPUT, [ACTION-IF-TRUE], [ACTION-IF-FALSE],
> [ACTION-IF-CROSS-COMPILING])
> If PROGRAM compiles and links successfully and returns an exit
> status of 0 when executed, run shell commands ACTION-IF-TRUE.
> Otherwise, run shell commands ACTION-IF-FALSE.
>
> So, there is no problem now, and there cannot be a problem in the
> future.
Well, I think what Eric was hinting at was that, for example, some tests
in Autoconf's and Automake's own test suites interpret an exit status of
77 from a configure execution within that test run to infer that the
test should be skipped.
I don't think that the current gnulib testsuite invokes configure
programs from within, and I don't think Autoconf's nor Automake's test
suites currently use gnulib macros, but it wouldn't be a big leap to
think that some gnulib-using packages interpreted an exit from configure
with status 77 to infer some hint about skipping.
IMVHO a NEWS entry should be good enough to warn about this possible
semantic change, however.
Cheers,
Ralf