Hi,

When a make check test fails and a recent (>=1.13) automake version is used, it 
shows something like

PASS: unittest_erasure_code_plugin
FAILED: unittest_erasure_code

which is not very informative. The actual stderr/stdout of the test can be 
found in a file by the same name as the test with the .log suffix (i.e. 
unittest_erasure_code.log). It is displayed by the make check bot[1] but it's 
not a native feature of automake (or if it is I don't know about it ;-).

This automake behavior (having .log files for each individual test) changed in 
version 1.13[2]. In the automake 1.11 version which is the default for Ubuntu 
precise 12.04 and CentOS 6.5, the output of the tests are displayed on the 
stdout/stderr of make, as it has been for the past 25 years. 

As of https://github.com/ceph/ceph/pull/4908 the parallel-test option will 
always be set, even on precise and CentOS 6.5, and the make check behavior will 
be the same, regardless of the automake version: test outputs will be to 
individual .log files. The motivation is to 

  * reduce the size of the output of the gitbuilders, 
  * make errors more consumable from the browser, 
  * be able to run test in parallel (it currently runs 4 times faster when 
running with -j4).
  * avoid confusion because make check behaves differently depending on the 
automake version.

Cheers

[1] loop to display the logs of failed tests 
http://workbench.dachary.org/ceph/ceph/blob/master/run-make-check.sh#L73
[2] automake 1.13 release notes 
http://lists.gnu.org/archive/html/automake/2012-12/msg00038.html

-- 
Loïc Dachary, Artisan Logiciel Libre

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to