automake-patches
[Top][All Lists]
Advanced

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

Re: [PATCHES] Fix spurious Lex/Yacc-related failures in tests `silent*.t


From: Stefano Lattarini
Subject: Re: [PATCHES] Fix spurious Lex/Yacc-related failures in tests `silent*.test' w.r.t. Solaris XPG4 make.
Date: Thu, 18 Nov 2010 13:24:02 +0100
User-agent: KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; )

On Thursday 18 November 2010, Ralf Wildenhues wrote:
> * Stefano Lattarini wrote on Wed, Nov 17, 2010 at 09:10:08PM CET:
> > I'm seeing this failure with Solaris XPG4 make:
> 
> > $ MAKE=/usr/xpg4/bin/make sh silentyacc.test 
> > silentyacc: running bison --version
> > bison (GNU Bison) 2.4.1
> > Written by Robert Corbett and Richard Stallman.
> [...]
> 
> > A similar failure happens with heirlom make on Debian GNU/Linux.
> > 
> > Also, the tests `silentlex.test' and `silent5.test' experience
> > similar spurious failures with those two make implementations.
> > 
> > Now, these failures (which are due to the fact that those versions
> > of make do not chain implicit rules) are spurious in regard to the
> > being-tested "silent-rules" functionality, and easily worked around
> > by adding proper explicit dependency declarations to the generated
> > Makefile.am.  So I'd like to apply the attached patches to temporary
> > bugfixing branches, and merge them to maint.
> > 
> > Objections?
> 
> Yes.  Do you expect our users to have to add the same rules (which
> expose internal details, namely the object file names) to their
> Makefile.am files, just so things are silent?  I don't think so.
>
Well, the users would probably need to add those rules to have things
work *at all*, not just for the silent rules to work, so this is not
a bug in silent-rules support, but in general Lex/Yacc support. 

> So no, I don't think covering up those test failures is the right
> way to go.
>
We are not covering them: there are other Lex/Yacc tests which are
dutifully failing with those make implementations, and I don't intend
to "fix" those tests, becuase (as you noticed) they are exposing a
real problem.

> Even more, the added rules even change semantics of the build
> independently of silent-rules or not; *that* is something we
> need to fix in Automake proper.
>
In the long run, yes; but for the moment, I think it's better to fix
the tests to avoid spurious failures.  Otherwise, a future change
might introduce another bug causing (say) a testlex.test failure
w.r.t. silent-rules output when Solaris make is used, and we won't
see it becuase "that test is expected to fail anyway with Solaris
make".

> I think there might even be a pending patch from you for this.
>
Yes, an oldish one:
 <http://lists.gnu.org/archive/html/automake-patches/2010-05/msg00021.html>
 
> Remember, we don't have to (and I don't want to) fix all test failures
> just so that we don't see any FAILs in the logs.  If things are broken,
> then it is good to see that in the logs.
>
Yes, but here silent-rules are *not* broken, so *these* tests should
not fail (while other tests on Lex/Yacc should, and do, fail).
 
> Aside, again I don't see why this couldn't have been a single patch.
>
For the smae reasons stated in a previous thread: bugs/limitations
fixed here were introduced in different commits; but I can merge the
three patches on the top of maint, and push that, if you prefer: it's
really not big deal for me.

In the end, given the rationales above, would you re-evaluate the
usefulness of the patch?

Thanks,
   Stefano



reply via email to

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