automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: XFAIL and make


From: Ralf Wildenhues
Subject: Re: XFAIL and make
Date: Fri, 22 Feb 2008 18:47:54 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

Hi Patrick,

* Patrick Welche wrote on Fri, Feb 22, 2008 at 05:15:01PM CET:
> 
> env VERBOSE=x TESTS='all.test auxdir2.test cond17.test txinfo5.test' gmake -e 
> check

> 4 of 4 tests failed

> BSD make in NetBSD-current/i386
> 
> env VERBOSE=x TESTS='all.test auxdir2.test cond17.test txinfo5.test' make -e 
> check

> All 4 tests behaved as expected (4 expected failures)

1) NetBSD make always uses /bin/sh to spawn commands, it completely
ignores SHELL, be that on the command line, in the Makefile, or given
as environment variable and with -e.  This is unfortunate for us, but
AFAICS totally within what POSIX allows.

2) NetBSD ksh has a bug.  At least I *think* that is a bug, I haven't
checked SUSv3 yet.  This:
  foo=foo; t='[ ]'; case " foo bar " in *$t$foo$t*) echo yes;; esac

should IMHO print yes, but doesn't with this shell.

Please try the patch (against master) below.  You need to re-bootstrap
to propagate the change into tests/Makefile.in.

3) Is this failure exposed by the check[67].test tests?  If not, then
we need to add a testcase.

Thanks for the report.
Ralf

2008-02-22  Ralf Wildenhues  <address@hidden>

        * lib/am/check.am (check-TESTS): In the case patterns for 
        Report by Patrick Welche.

diff --git a/lib/am/check.am b/lib/am/check.am
index 9b1dc26..4b1a14b 100644
--- a/lib/am/check.am
+++ b/lib/am/check.am
@@ -38,7 +38,7 @@ endif !%?COLOR%
 .PHONY: check-TESTS
 
 check-TESTS: $(TESTS)
-       @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[        ]'; \
+       @failed=0; all=0; xfail=0; xpass=0; skip=0; \
        srcdir=$(srcdir); export srcdir; \
 ## Make sure Solaris VPATH-expands all members of this list, even
 ## the first and the last one; thus the spaces around $(TESTS)
@@ -55,7 +55,7 @@ check-TESTS: $(TESTS)
 ## Success
              all=`expr $$all + 1`; \
              case " $(XFAIL_TESTS) " in \
-             *$$ws$$tst$$ws*) \
+             *[\ \     ]$$tst[\ \      ]*) \
                xpass=`expr $$xpass + 1`; \
                failed=`expr $$failed + 1`; \
                col=$$red; res=XPASS; \
@@ -68,7 +68,7 @@ check-TESTS: $(TESTS)
 ## Failure
              all=`expr $$all + 1`; \
              case " $(XFAIL_TESTS) " in \
-             *$$ws$$tst$$ws*) \
+             *[\ \     ]$$tst[\ \      ]*) \
                xfail=`expr $$xfail + 1`; \
                col=$$lgn; res=XFAIL; \
              ;; \




reply via email to

[Prev in Thread] Current Thread [Next in Thread]