diff options
Diffstat (limited to 'dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild')
-rw-r--r-- | dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild | 70 |
1 files changed, 36 insertions, 34 deletions
diff --git a/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild b/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild index 20632cb0a25f..d88bb88fc17c 100644 --- a/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild +++ b/dev-lang/spidermonkey/spidermonkey-78.2.0.ebuild @@ -7,9 +7,7 @@ PYTHON_COMPAT=( python3_{6..9} ) WANT_AUTOCONF="2.1" -LLVM_MAX_SLOT=10 - -inherit autotools check-reqs llvm multiprocessing python-any-r1 +inherit autotools check-reqs multiprocessing python-any-r1 toolchain-funcs MY_PN="mozjs" MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases @@ -55,13 +53,13 @@ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc64 ~s390 ~x86" SLOT="78" LICENSE="MPL-2.0" -IUSE="debug +jit test" +IUSE="cpu_flags_arm_neon debug +jit test" RESTRICT="!test? ( test )" BDEPEND="${PYTHON_DEPS} - sys-devel/clang - >=virtual/rust-1.43.0 + sys-devel/llvm + >=virtual/rust-1.41.0 virtual/pkgconfig" CDEPEND=">=dev-libs/icu-67.1:= @@ -78,15 +76,6 @@ 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}]" @@ -112,8 +101,6 @@ pkg_setup() { check-reqs_pkg_setup - llvm_pkg_setup - python-any-r1_pkg_setup } @@ -155,25 +142,40 @@ src_configure() { # ../python/mach/mach/mixin/process.py fails to detect SHELL export SHELL="${EPREFIX}/bin/bash" - # forcing system-icu allows us to skip patching bundled ICU for PPC + local -a myeconfargs=( + --host="${CBUILD:-${CHOST}}" + --target="${CHOST}" + --disable-jemalloc + --disable-optimize + --disable-strip + --enable-readline + --enable-shared-js + --with-intl-api + --with-system-icu + --with-system-nspr + --with-system-zlib + --with-toolchain-prefix="${CHOST}-" + $(use_enable debug) + $(use_enable jit) + $(use_enable test tests) + ) + + # Modifications to better support ARM, bug 717344 + if use cpu_flags_arm_neon ; then + myeconfargs+=( --with-fpu=neon ) + + if ! tc-is-clang ; then + # thumb options aren't supported when using clang, bug 666966 + myeconfargs+=( --with-thumb=yes ) + myeconfargs+=( --with-thumb-interwork=no ) + fi + fi + + # Forcing system-icu allows us to skip patching bundled ICU for PPC # and other minor arches ECONF_SOURCE="${S}" \ - econf \ - --host="${CBUILD:-${CHOST}}" \ - --target="${CHOST}" \ - --disable-jemalloc \ - --disable-optimize \ - --disable-strip \ - --enable-readline \ - --enable-shared-js \ - --with-intl-api \ - --with-system-icu \ - --with-system-nspr \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - $(use_enable debug) \ - $(use_enable jit) \ - $(use_enable test tests) \ + econf \ + ${myeconfargs[@]} \ XARGS="${EPREFIX}/usr/bin/xargs" } |