summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Gordon <bmgordon@chromium.org>2020-01-29 12:38:13 -0700
committerSergei Trofimovich <slyfox@gentoo.org>2020-01-29 22:04:46 +0000
commitf58d31d661f7bda2fe7b591419f0d9f138a2dae6 (patch)
treef04601f913203f12e0b767511d4c40d8874ff222 /eclass/ghc-package.eclass
parentx11-libs/libxcb: Add support for Python 3.8. Drop support for Python 2.7. (diff)
downloadgentoo-f58d31d661f7bda2fe7b591419f0d9f138a2dae6.tar.gz
gentoo-f58d31d661f7bda2fe7b591419f0d9f138a2dae6.tar.bz2
gentoo-f58d31d661f7bda2fe7b591419f0d9f138a2dae6.zip
ghc-package.eclass: Handle missing ghc in lookups
ghc-getghc() and ghc-getghcpkg() both assume that they can find an installed binary. If ghc isn't installed (e.g., because it's being being rebuilt or has been unmerged), there is no such binary. This causes the intended arguments to be run as a command, which produces "command not found" QA Notices. If ghc can't be found, return "false" instead. The false command will harmlessly absorb the other command-line arguments. This doesn't produce any difference in the final result because the invalid commands were failing anyway. Closes: https://bugs.gentoo.org/683144 Signed-off-by: Benjamin Gordon <bmgordon@chromium.org> Closes: https://github.com/gentoo/gentoo/pull/14499 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'eclass/ghc-package.eclass')
-rw-r--r--eclass/ghc-package.eclass10
1 files changed, 8 insertions, 2 deletions
diff --git a/eclass/ghc-package.eclass b/eclass/ghc-package.eclass
index 27fafff5a21b..dbe7dc2a5acd 100644
--- a/eclass/ghc-package.eclass
+++ b/eclass/ghc-package.eclass
@@ -22,14 +22,20 @@ esac
# @DESCRIPTION:
# returns the name of the ghc executable
ghc-getghc() {
- type -P ${HC:-ghc}
+ if ! type -P ${HC:-ghc}; then
+ ewarn "ghc not found"
+ type -P false
+ fi
}
# @FUNCTION: ghc-getghcpkg
# @DESCRIPTION:
# Internal function determines returns the name of the ghc-pkg executable
ghc-getghcpkg() {
- type -P ${HC_PKG:-ghc-pkg}
+ if ! type -P ${HC_PKG:-ghc-pkg}; then
+ ewarn "ghc-pkg not found"
+ type -P false
+ fi
}
# @FUNCTION: ghc-getghcpkgbin