commit:     2caf8004b7c582d65d1d01a96f32febdedcb8fdd
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  7 21:20:59 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Sep  7 21:59:06 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2caf8004

dev-lang/spidermonkey: clang/LLVM is required

Closes: https://bugs.gentoo.org/740890
Package-Manager: Portage-3.0.5, Repoman-3.0.1
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild 
b/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild
index c41e32dbc5c..28d49a10116 100644
--- a/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild
@@ -7,7 +7,9 @@ PYTHON_COMPAT=( python3_{6..9} )
 
 WANT_AUTOCONF="2.1"
 
-inherit autotools check-reqs multiprocessing python-any-r1
+LLVM_MAX_SLOT=10
+
+inherit autotools check-reqs llvm multiprocessing python-any-r1
 
 MY_PN="mozjs"
 MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases
@@ -58,6 +60,7 @@ IUSE="debug +jit test"
 RESTRICT="!test? ( test )"
 
 BDEPEND="${PYTHON_DEPS}
+       sys-devel/clang
        >=virtual/rust-1.43.0
        virtual/pkgconfig"
 
@@ -75,6 +78,15 @@ RDEPEND="${CDEPEND}"
 
 S="${WORKDIR}/firefox-${MY_PV}/js/src"
 
+llvm_check_deps() {
+       if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+               ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+               return 1
+       fi
+
+       einfo "Will use LLVM slot ${LLVM_SLOT}!" >&2
+}
+
 python_check_deps() {
        if use test ; then
                has_version "dev-python/six[${PYTHON_USEDEP}]"
@@ -100,6 +112,8 @@ pkg_setup() {
 
        check-reqs_pkg_setup
 
+       llvm_pkg_setup
+
        python-any-r1_pkg_setup
 }
 

Reply via email to