diff options
-rwxr-xr-x | bin/ebuild | 4 | ||||
-rwxr-xr-x | bin/ebuild.sh | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/bin/ebuild b/bin/ebuild index 55bb0fb81..f5c8d1f69 100755 --- a/bin/ebuild +++ b/bin/ebuild @@ -126,6 +126,10 @@ def discard_digests(myebuild, mysettings, mydbapi): for arg in pargs: try: tmpsettings = portage.config(clone=portage.settings) + if arg == "test" and not "test" in tmpsettings.features: + print "Forcing test." + tmpsettings["EBUILD_FORCE_TEST"] = "1" + tmpsettings.backupenv["EBUILD_FORCE_TEST"] = "1" if arg == "digest" and force: discard_digests(ebuild, tmpsettings, portage.portdb) a = portage.doebuild(ebuild, arg, portage.root, tmpsettings, diff --git a/bin/ebuild.sh b/bin/ebuild.sh index 1a9381682..5abc44bf9 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -1010,6 +1010,7 @@ dyn_compile() { } dyn_test() { + [ "${EBUILD_FORCE_TEST}" == "1" ] && rm -f "${PORTAGE_BUILDDIR}/.tested" [ "$(type -t pre_src_test)" == "function" ] && qa_call pre_src_test if [ "${PORTAGE_BUILDDIR}/.tested" -nt "${WORKDIR}" ]; then vecho ">>> It appears that ${PN} has already been tested; skipping." @@ -1020,7 +1021,7 @@ dyn_test() { if [ -d "${S}" ]; then cd "${S}" fi - if ! hasq test $FEATURES; then + if ! hasq test $FEATURES && [ "${EBUILD_FORCE_TEST}" != "1" ]; then vecho ">>> Test phase [not enabled]: ${CATEGORY}/${PF}" elif hasq test $RESTRICT; then ewarn "Skipping make test/check due to ebuild restriction." |