From adfccec02c2474a509fc10d580a25d72f33cab55 Mon Sep 17 00:00:00 2001 From: Michał Górny Date: Tue, 13 Dec 2016 09:29:13 +0100 Subject: cmake-utils.eclass: Support running ctest in parallel Pass -j and --test-load options (with values based on MAKEOPTS) to CTest by default, in order to enable parallel test runs. --- eclass/cmake-utils.eclass | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'eclass/cmake-utils.eclass') diff --git a/eclass/cmake-utils.eclass b/eclass/cmake-utils.eclass index 1b269dd6d134..099aaac7b26f 100644 --- a/eclass/cmake-utils.eclass +++ b/eclass/cmake-utils.eclass @@ -117,7 +117,7 @@ case ${EAPI} in *) die "EAPI=${EAPI:-0} is not supported" ;; esac -inherit toolchain-funcs multilib flag-o-matic eutils versionator +inherit toolchain-funcs multilib flag-o-matic eutils multiprocessing versionator EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install @@ -780,8 +780,9 @@ enable_cmake-utils_src_test() { [[ -n ${TEST_VERBOSE} ]] && myctestargs+=( --extra-verbose --output-on-failure ) - echo ctest "${myctestargs[@]}" "$@" - if ctest "${myctestargs[@]}" "$@" ; then + set -- ctest -j "$(makeopts_jobs)" --test-load "$(makeopts_loadavg)" "${myctestargs[@]}" "$@" + echo "$@" >&2 + if "$@" ; then einfo "Tests succeeded." popd > /dev/null || die return 0 -- cgit v1.2.3-65-gdbad