summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--eclass/haskell-cabal.eclass12
1 files changed, 12 insertions, 0 deletions
diff --git a/eclass/haskell-cabal.eclass b/eclass/haskell-cabal.eclass
index 690bbf55b1c9..30b67bf7af94 100644
--- a/eclass/haskell-cabal.eclass
+++ b/eclass/haskell-cabal.eclass
@@ -66,6 +66,14 @@ inherit eutils ghc-package multilib toolchain-funcs
# Needs working 'diff'.
: ${CABAL_DEBUG_LOOSENING:=}
+# @ECLASS-VARIABLE: CABAL_REPORT_OTHER_BROKEN_PACKAGES
+# @DESCRIPTION:
+# Show other broken packages if 'cabal configure' fails.
+# It should be normally enabled unless you know you are about
+# to try to compile a lot of broken packages. Default value: 'yes'
+# Set to anything else to disable.
+: ${CABAL_REPORT_OTHER_BROKEN_PACKAGES:=yes}
+
HASKELL_CABAL_EXPF="pkg_setup src_compile src_test src_install pkg_postinst pkg_postrm"
# 'dev-haskell/cabal' passes those options with ./configure-based
@@ -271,6 +279,8 @@ cabal-die-if-nonempty() {
}
cabal-show-brokens() {
+ [[ ${CABAL_REPORT_OTHER_BROKEN_PACKAGES} != yes ]] && return 0
+
elog "ghc-pkg check: 'checking for other broken packages:'"
# pretty-printer
$(ghc-getghcpkg) check 2>&1 \
@@ -283,6 +293,8 @@ cabal-show-brokens() {
}
cabal-show-old() {
+ [[ ${CABAL_REPORT_OTHER_BROKEN_PACKAGES} != yes ]] && return 0
+
cabal-die-if-nonempty 'outdated' \
$("${EPREFIX}"/usr/sbin/haskell-updater --quiet --upgrade --list-only)
}