GNU bug report logs - #27186
check-TESTS has dependency on check_PROGRAMS etc

Previous Next

Package: automake;

Reported by: Nick Brown <brownn <at> Brocade.com>

Date: Thu, 1 Jun 2017 14:01:01 UTC

Severity: normal

Tags: fixed

Done: Mathieu Lirzin <mthl <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 27186 in the body.
You can then email your comments to 27186 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-automake <at> gnu.org:
bug#27186; Package automake. (Thu, 01 Jun 2017 14:01:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nick Brown <brownn <at> Brocade.com>:
New bug report received and forwarded. Copy sent to bug-automake <at> gnu.org. (Thu, 01 Jun 2017 14:01:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Nick Brown <brownn <at> Brocade.com>
To: "bug-automake <at> gnu.org" <bug-automake <at> gnu.org>
Subject: check-TESTS has dependency on check_PROGRAMS etc
Date: Thu, 1 Jun 2017 13:39:16 +0000
Something like: 
   ./autogen.sh 
   ./configure 
   make check-TESTS 
will fail, unless 'make check' is run before 'make check-TESTS' for 
Makefile.am snippet like: 

check_PROGRAMS = foo 
check_SCRIPTS = run_foo_wrapper.sh 
TESTS = $(check_SCRIPTS) 
--- 
 lib/am/check.am | 3 ++- 
 1 file changed, 2 insertions(+), 1 deletion(-) 

diff --git a/lib/am/check.am b/lib/am/check.am 
index 7bcffd53faa8..15cfc7c64598 100644 
--- a/lib/am/check.am 
+++ b/lib/am/check.am 
@@ -401,7 +401,8 @@ RECHECK_LOGS = $(TEST_LOGS) 
 ## Running all tests, or rechecking failures. ## 
 ## ------------------------------------------ ## 
  
-check-TESTS: 
+## Running tests depend on $(check_SCRIPTS), $(check_PROGRAMS), etc. 
+check-TESTS: %CHECK_DEPS% 
 	@list='$(RECHECK_LOGS)';           test -z "$$list" || rm -f $$list 
 	@list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list 
 ## We always have to remove $(TEST_SUITE_LOG), to ensure its rule is run 
-- 

Information forwarded to bug-automake <at> gnu.org:
bug#27186; Package automake. (Sun, 04 Jun 2017 22:46:02 GMT) Full text and rfc822 format available.

Message #8 received at 27186 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Lirzin <mthl <at> gnu.org>
To: Nick Brown <brownn <at> Brocade.com>
Cc: 27186 <at> debbugs.gnu.org
Subject: Re: bug#27186: check-TESTS has dependency on check_PROGRAMS etc
Date: Mon, 05 Jun 2017 00:45:22 +0200
Hello Nick,

Nick Brown <brownn <at> Brocade.com> writes:

> Something like: 
>    ./autogen.sh 
>    ./configure 
>    make check-TESTS 
> will fail, unless 'make check' is run before 'make check-TESTS' for 
> Makefile.am snippet like: 
>
> check_PROGRAMS = foo 
> check_SCRIPTS = run_foo_wrapper.sh 
> TESTS = $(check_SCRIPTS) 
> --- 
>  lib/am/check.am | 3 ++- 
>  1 file changed, 2 insertions(+), 1 deletion(-) 
>
> diff --git a/lib/am/check.am b/lib/am/check.am 
> index 7bcffd53faa8..15cfc7c64598 100644 
> --- a/lib/am/check.am 
> +++ b/lib/am/check.am 
> @@ -401,7 +401,8 @@ RECHECK_LOGS = $(TEST_LOGS) 
>  ## Running all tests, or rechecking failures. ## 
>  ## ------------------------------------------ ## 
>   
> -check-TESTS: 
> +## Running tests depend on $(check_SCRIPTS), $(check_PROGRAMS), etc. 
> +check-TESTS: %CHECK_DEPS% 
>  	@list='$(RECHECK_LOGS)';           test -z "$$list" || rm -f $$list 
>  	@list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list 
>  ## We always have to remove $(TEST_SUITE_LOG), to ensure its rule is run 
> -- 

I must confess I have never used the 'check-TESTS' target myself.  In
fact Automake current manual doesn't even mention it.  So it is not
clear to me how it is expected to work, and what its role compare to the
'check' and 'recheck' target.  Since you seems to use it, maybe you can
give me more background on that target?

Thanks for your patch.

-- 
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37




Information forwarded to bug-automake <at> gnu.org:
bug#27186; Package automake. (Mon, 05 Jun 2017 10:31:02 GMT) Full text and rfc822 format available.

Message #11 received at 27186 <at> debbugs.gnu.org (full text, mbox):

From: Nick Brown <brownn <at> Brocade.com>
To: "mthl <at> gnu.org" <mthl <at> gnu.org>
Cc: "27186 <at> debbugs.gnu.org" <27186 <at> debbugs.gnu.org>
Subject: Re: bug#27186: check-TESTS has dependency on check_PROGRAMS etc
Date: Mon, 5 Jun 2017 10:29:55 +0000
On Mon, 2017-06-05 at 00:45 +0200, Mathieu Lirzin wrote:
> Hello Nick,
> 
> Nick Brown <brownn <at> Brocade.com> writes:
> 
> > Something like: 
> >    ./autogen.sh 
> >    ./configure 
> >    make check-TESTS 
> > will fail, unless 'make check' is run before 'make check-TESTS'
> > for 
> > Makefile.am snippet like: 
> > 
> > check_PROGRAMS = foo 
> > check_SCRIPTS = run_foo_wrapper.sh 
> > TESTS = $(check_SCRIPTS) 
> > --- 
> >  lib/am/check.am | 3 ++- 
> >  1 file changed, 2 insertions(+), 1 deletion(-) 
> > 
> > diff --git a/lib/am/check.am b/lib/am/check.am 
> > index 7bcffd53faa8..15cfc7c64598 100644 
> > --- a/lib/am/check.am 
> > +++ b/lib/am/check.am 
> > @@ -401,7 +401,8 @@ RECHECK_LOGS = $(TEST_LOGS) 
> >  ## Running all tests, or rechecking failures. ## 
> >  ## ------------------------------------------ ## 
> >   
> > -check-TESTS: 
> > +## Running tests depend on $(check_SCRIPTS), $(check_PROGRAMS),
> > etc. 
> > +check-TESTS: %CHECK_DEPS% 
> >  	@list='$(RECHECK_LOGS)';           test -z "$$list" || rm
> > -f $$list 
> >  	@list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm
> > -f $$list 
> >  ## We always have to remove $(TEST_SUITE_LOG), to ensure its rule
> > is run 
> > -- 
> 
> I must confess I have never used the 'check-TESTS' target myself.  In
> fact Automake current manual doesn't even mention it.  So it is not
> clear to me how it is expected to work, and what its role compare to
> the
> 'check' and 'recheck' target.  Since you seems to use it, maybe you
> can
> give me more background on that target?

As far as I've been able to determine it's purpose is to actually
execute the the test scripts, and is used by the 'check' target for
this.
I don't use it myself directly, but bumped into this issue when using
the the AX_VALGRIND automake macro that uses this target:
https://www.gnu.org/software/autoconf-archive/ax_valgrind_check.html


> 
> Thanks for your patch.
> 

Information forwarded to bug-automake <at> gnu.org:
bug#27186; Package automake. (Sat, 15 Jul 2017 22:58:01 GMT) Full text and rfc822 format available.

Message #14 received at 27186 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Lirzin <mthl <at> gnu.org>
To: Nick Brown <brownn <at> Brocade.com>
Cc: 27186 <at> debbugs.gnu.org
Subject: Re: bug#27186: check-TESTS has dependency on check_PROGRAMS etc
Date: Sun, 16 Jul 2017 00:57:36 +0200
Hello,

Nick Brown <brownn <at> Brocade.com> writes:

> On Mon, 2017-06-05 at 00:45 +0200, Mathieu Lirzin wrote:
>> 
>> Nick Brown <brownn <at> Brocade.com> writes:
>> 
>> > Something like: 
>> >    ./autogen.sh 
>> >    ./configure 
>> >    make check-TESTS 
>> > will fail, unless 'make check' is run before 'make check-TESTS'
>> > for 
>> > Makefile.am snippet like: 
>> > 
>> > check_PROGRAMS = foo 
>> > check_SCRIPTS = run_foo_wrapper.sh 
>> > TESTS = $(check_SCRIPTS) 
>> > --- 
>> >  lib/am/check.am | 3 ++- 
>> >  1 file changed, 2 insertions(+), 1 deletion(-) 
>> > 
>> > diff --git a/lib/am/check.am b/lib/am/check.am 
>> > index 7bcffd53faa8..15cfc7c64598 100644 
>> > --- a/lib/am/check.am 
>> > +++ b/lib/am/check.am 
>> > @@ -401,7 +401,8 @@ RECHECK_LOGS = $(TEST_LOGS) 
>> >  ## Running all tests, or rechecking failures. ## 
>> >  ## ------------------------------------------ ## 
>> >   
>> > -check-TESTS: 
>> > +## Running tests depend on $(check_SCRIPTS), $(check_PROGRAMS),
>> > etc. 
>> > +check-TESTS: %CHECK_DEPS% 
>> >  	@list='$(RECHECK_LOGS)';           test -z "$$list" || rm
>> > -f $$list 
>> >  	@list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm
>> > -f $$list 
>> >  ## We always have to remove $(TEST_SUITE_LOG), to ensure its rule
>> > is run 
>> > -- 
>> 
>> I must confess I have never used the 'check-TESTS' target myself.  In
>> fact Automake current manual doesn't even mention it.  So it is not
>> clear to me how it is expected to work, and what its role compare to
>> the
>> 'check' and 'recheck' target.  Since you seems to use it, maybe you
>> can
>> give me more background on that target?
>
> As far as I've been able to determine it's purpose is to actually
> execute the the test scripts, and is used by the 'check' target for
> this.
> I don't use it myself directly, but bumped into this issue when using
> the the AX_VALGRIND automake macro that uses this target:
> https://www.gnu.org/software/autoconf-archive/ax_valgrind_check.html
>

while I think nobody should rely on 'check-TESTS' target which is an
implementation detail.  I think it is fine to make it depends on
check_PROGRAMS and check_SCRIPTS.

This is fixes by commit 8555e7b81d0d68e1e8105d072d69b94788953e15.

Thank you.

-- 
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37




Added tag(s) fixed. Request was from Mathieu Lirzin <mthl <at> gnu.org> to control <at> debbugs.gnu.org. (Sat, 15 Jul 2017 22:59:01 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 27186 <at> debbugs.gnu.org and Nick Brown <brownn <at> Brocade.com> Request was from Mathieu Lirzin <mthl <at> gnu.org> to control <at> debbugs.gnu.org. (Sat, 15 Jul 2017 22:59:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 13 Aug 2017 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 6 years and 281 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.