There's no real point in compiling all the test related binaries when people aren't running the tests. So change the PROGRAMS category from noinst to test to speed up default `make && make install`.
If people want to run the tests, then the utilities will be compiled automatically when they run `make check`, so the normal workflow should be unchanged.
Signed-off-by: Mike Frysinger vapier@gentoo.org --- tests/ChangeLog | 4 ++++ tests/Makefile.am | 26 +++++++++++++------------- 2 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/tests/ChangeLog b/tests/ChangeLog index 6f5e458..5790d81 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,7 @@ +2012-06-26 Mike Frysinger vapier@gentoo.org + + * Makefile.am (check_PROGRAMS): Rename from noinst_PROGRAMS. + 2012-05-07 Mark Wielaard mjw@redhat.com
* low_high_pc.c: Use proper inttypes in printf formats. diff --git a/tests/Makefile.am b/tests/Makefile.am index ced7831..8e41bc9 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -40,17 +40,17 @@ else tests_rpath = no endif
-noinst_PROGRAMS = arextract arsymtest newfile saridx scnnames sectiondump \ - showptable update1 update2 update3 update4 test-nlist \ - show-die-info get-files get-lines get-pubnames \ - get-aranges allfcts line2addr addrscopes funcscopes \ - show-abbrev hash newscn ecp dwflmodtest \ - find-prologues funcretval allregs rdwrmmap \ - dwfl-bug-addr-overflow arls dwfl-bug-fd-leak \ - dwfl-addr-sect dwfl-bug-report early-offscn \ - dwfl-bug-getmodules dwarf-getmacros addrcfi \ - test-flag-nobits dwarf-getstring rerequest_tag \ - alldts md5-sha1-test typeiter low_high_pc +check_PROGRAMS = arextract arsymtest newfile saridx scnnames sectiondump \ + showptable update1 update2 update3 update4 test-nlist \ + show-die-info get-files get-lines get-pubnames \ + get-aranges allfcts line2addr addrscopes funcscopes \ + show-abbrev hash newscn ecp dwflmodtest \ + find-prologues funcretval allregs rdwrmmap \ + dwfl-bug-addr-overflow arls dwfl-bug-fd-leak \ + dwfl-addr-sect dwfl-bug-report early-offscn \ + dwfl-bug-getmodules dwarf-getmacros addrcfi \ + test-flag-nobits dwarf-getstring rerequest_tag \ + alldts md5-sha1-test typeiter low_high_pc asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \ asm-tst6 asm-tst7 asm-tst8 asm-tst9
@@ -82,12 +82,12 @@ TESTS = run-arextract.sh run-arsymtest.sh newfile test-nlist \ run-readelf-d.sh run-unstrip-n.sh run-low_high_pc.sh
if !STANDALONE -noinst_PROGRAMS += msg_tst md5-sha1-test +check_PROGRAMS += msg_tst md5-sha1-test TESTS += msg_tst md5-sha1-test endif
if HAVE_LIBASM -noinst_PROGRAMS += $(asm_TESTS) +check_PROGRAMS += $(asm_TESTS) TESTS += $(asm_TESTS) endif
Hmm. Ambivalent. I've always liked that 'make' compiles everything and 'make check' has nothing to do but actually run the tests.
On Tue, 2012-06-26 at 18:02 -0700, Roland McGrath wrote:
Hmm. Ambivalent. I've always liked that 'make' compiles everything and 'make check' has nothing to do but actually run the tests.
I actually like the build/dependency logic proposed. But I don't like the fact people are skipping make check. We are really trying to keep make check clean, so that any failure really means something is wrong either with elfutils itself or the toolchain used. Such issues really should be reported and fixed whenever possible.
Does gentoo keep build logs, do they include the make check output? If not, what is the reason for wanting to skip make check?
Thanks,
Mark
On Wednesday 27 June 2012 03:45:54 Mark Wielaard wrote:
On Tue, 2012-06-26 at 18:02 -0700, Roland McGrath wrote:
Hmm. Ambivalent. I've always liked that 'make' compiles everything and 'make check' has nothing to do but actually run the tests.
I actually like the build/dependency logic proposed. But I don't like the fact people are skipping make check. We are really trying to keep make check clean, so that any failure really means something is wrong either with elfutils itself or the toolchain used. Such issues really should be reported and fixed whenever possible.
Does gentoo keep build logs, do they include the make check output? If not, what is the reason for wanting to skip make check?
Gentoo users (usually) build everything from source. also running all the packages' tests all the time is wasteful and kind of pointless. but since it's optional, we do have some users that do it (and so we see reports when `make check` fails), and in those cases the log files are available and we triage things then. -mike
On Wed, 2012-06-27 at 19:25 -0400, Mike Frysinger wrote:
On Wednesday 27 June 2012 03:45:54 Mark Wielaard wrote:
On Tue, 2012-06-26 at 18:02 -0700, Roland McGrath wrote:
Hmm. Ambivalent. I've always liked that 'make' compiles everything and 'make check' has nothing to do but actually run the tests.
I actually like the build/dependency logic proposed. But I don't like the fact people are skipping make check. We are really trying to keep make check clean, so that any failure really means something is wrong either with elfutils itself or the toolchain used. Such issues really should be reported and fixed whenever possible.
Does gentoo keep build logs, do they include the make check output? If not, what is the reason for wanting to skip make check?
Gentoo users (usually) build everything from source. also running all the packages' tests all the time is wasteful and kind of pointless. but since it's optional, we do have some users that do it (and so we see reports when `make check` fails), and in those cases the log files are available and we triage things then.
I tweaked your patch to apply to current HEAD and applied it. But only because I feel using check_PROGRAMS is technically more correct than noinst_PROGRAMS in this case. I also tweaked the commit message to make this clear. In the elfutils case running the tests really is not pointless. If any test FAILs against the currently used toolchain or for your arch we really want to know about it.
Thanks,
Mark
elfutils-devel@lists.fedorahosted.org