Summary: | ebuild ... test no longer magically enables USE=test ? | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Jeroen Roovers (RETIRED) <jer> |
Component: | Unclassified | Assignee: | Portage team <dev-portage> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | candrews |
Priority: | Normal | Keywords: | TESTFAILURE |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=663278 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 912975 |
Description
Jeroen Roovers (RETIRED)
2019-09-14 08:20:56 UTC
Can you please post the full build log? Also, do you have >=dev-util/cunit-2.1[${MULTILIB_USEDEP}]? I can reproduce this if I don't have cunit, but I cannot reproduce it if cunit is installed. Looks like something weird is going on with ebuild(1). Now when I run `ebuild ... test`, it seems USE=test is not magically enabled any longer, so `-DCMAKE_DISABLE_FIND_PACKAGE_CUnit=$(usex !test)` in src_configure does not work as intended and the check target is not added to the Makefile. *** Bug 694342 has been marked as a duplicate of this bug. *** The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5df35cf0779ec8f882000a2016830cb3e0c2ab7e commit 5df35cf0779ec8f882000a2016830cb3e0c2ab7e Author: Craig Andrews <candrews@gentoo.org> AuthorDate: 2019-09-15 13:14:10 +0000 Commit: Craig Andrews <candrews@gentoo.org> CommitDate: 2019-09-15 13:33:08 +0000 net-libs/ngtcp2: Disable test phase when test USE flag is disabled Bug: https://bugs.gentoo.org/show_bug.cgi?id=694340 Package-Manager: Portage-2.3.76, Repoman-2.3.17 Signed-off-by: Craig Andrews <candrews@gentoo.org> net-libs/ngtcp2/ngtcp2-0_pre20190912.ebuild | 1 + net-libs/ngtcp2/ngtcp2-9999.ebuild | 1 + 2 files changed, 2 insertions(+) ebuild/emerge still automatically enables USE=test by default when FEATURES=test is enabled or you run ebuild ... test. However, if you have USE="-test" set in make.conf or the environment, this now takes precedence. This was changed last year [1]. ebuilds should set RESTRICT="!test? ( test )" if they need to prevent the test phase from running when USE="-test" [2]. This also works for USE flags other than 'test'. As an end user, if you want to avoid this issue, just make sure you don't have USE="-test" set in make.conf. See also: [1] https://github.com/gentoo/portage/pull/347 [2] https://bugs.gentoo.org/663278 I'm pretty sure I've experience a bug where USE=test is not enabled automatically, possibly only in certain cases such as after it generates a Manifest. I noticed it for packages where I had set RESTRICT="test? ( network-sandbox )" since network-sandbox triggered failures even though it should have been disabled. |