Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 512826 - dev-libs/check-0.9.13 version bump
Summary: dev-libs/check-0.9.13 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Nathan Phillip Brink (binki) (RETIRED)
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2014-06-09 14:11 UTC by Jeroen Roovers (RETIRED)
Modified: 2014-06-12 05:34 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeroen Roovers (RETIRED) gentoo-dev 2014-06-09 14:11:28 UTC
The 0.9.10 patch should be safe to drop now, I think. But I do get a long wait in src_test() after:

PASS: test_xml_output.sh
PASS: test_tap_output.sh
PASS: test_output.sh
PASS: test_check_nofork.sh
PASS: test_log_output.sh

Whichever order these are run in, after these five nothing more happens for a long time, so it's happening in check_check_export or check_check, if I read the tests/Makefile correctly. Maybe it's a parallel make issue in src_test()?


diff -u check-0.9.12.ebuild check-0.9.13.ebuild
--- check-0.9.12.ebuild 2014-01-21 16:09:49.000000000 +0100
+++ check-0.9.13.ebuild 2014-06-09 16:02:05.430168661 +0200
@@ -21,9 +21,6 @@
 RDEPEND="${DEPEND}"

 src_prepare() {
-       epatch \
-               "${FILESDIR}"/${PN}-0.9.10-AM_PATH_CHECK.patch
-
        sed -i -e '/^docdir =/d' {.,doc}/Makefile.am || die

        # fix out-of-sourcedir build having inconsistent check.h files, for
Comment 1 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2014-06-12 04:56:06 UTC
Thanks for the bug and patch. I haven’t looked into the long wait in the testsuite, sorry.
Comment 2 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2014-06-12 05:34:54 UTC
Regarding the long wait, I think that this is just some of the tests calling sleep() with values up to 14 seconds for “timeout” tests. See tests/check_check.h which will `#define TIMEOUT_TESTS_ENABLED 1` and tests/check_check_sub.c which will set various variables. Perhaps with the combination of `setenv("CK_DEFAULT_TIMEOUT", "6", 1);` and `setenv("CK_TIMEOUT_MULTIPLIER", "2", 1);`, libcheck will wait up to 12 seconds for a test to halt before halting it itself (and since it does multiple intervals in different combinations, they add up). And since the example test functions used to exercise this part of libcheck are just sleep() calls, your system will be quite idle while these tests play out. However, you should see that processwithprocesses with names starting with “check_check” exist during this time.

I have only looked at the surface, but perhaps this is where the issue is coming from. We could probably disable the timeout tests by appending `-DTIMEOUT_TESTS_ENABLED=0` to `CPPFLAGS` if we can find a way to let users opt in/out of this nicely.

And, yup, confirmed that, as a user, setting `CPPFLAGS=-DTIMEOUT_TESTS_ENABLED=0` makes the testsuite quite snappy.