commit:     7c429348b674c1a310c4ab3360db72f6849a9a9c
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Wed Oct  9 13:22:53 2024 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Wed Oct  9 13:27:24 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c429348

dev-lang/spidermonkey: add a patch to 128.3.0 to not depend on llvm

 - spidermonkey can be built just fine without a mandatory llvm dependency.

Closes: https://bugs.gentoo.org/821091
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 dev-lang/spidermonkey/Manifest                    |  2 +-
 dev-lang/spidermonkey/spidermonkey-128.3.0.ebuild | 28 +++++++++++++----------
 2 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest
index 2843f7b0e31c..0b3152c54298 100644
--- a/dev-lang/spidermonkey/Manifest
+++ b/dev-lang/spidermonkey/Manifest
@@ -10,4 +10,4 @@ DIST firefox-128esr-patches-03.tar.xz 14156 BLAKE2B 
9a618f0ddb8596b740893dc9113f
 DIST spidermonkey-102-patches-05j.tar.xz 4596 BLAKE2B 
215b770bbdf17973d7b3fd1df6cee9647459d2b02b0be5bdb289d457e5dbdb06ceac7a3082fc2f5836e991a4ac4486d73330b0276a466b5c528dab226a27829c
 SHA512 
d2b8e32dac87d60a00fd93479dc34d8adab4feec24a38591cebeb4cf271aa2fd964f4dc26e67ebfb127a47bc8f684d50b32b2cff18ed5286701a04a289058185
 DIST spidermonkey-115-patches-01.tar.xz 3992 BLAKE2B 
e97d0cb3edfb885119226f54f22485ed4e8220cd904d3356b87ccc013403f976a042171cf9ca7250bcf3fe3d90996dd80b4104e7d614f95d7bcfcb0e710a8a78
 SHA512 
cece96f172a09dd0e29f7c2fdbf650cde405b276bc4083956365289f1da4b1d078ccbde760da6553888ddb3c53cf9aded52051db556a2c4ec492fed01dcb03a1
 DIST spidermonkey-115-patches-02.tar.xz 4896 BLAKE2B 
f78d9804c1427b45d6fda496b4991ec6f672dec9ce031ed57a2920fa1968c942a235f46e40166c8ab8d731a1963f322d34bb2f6984133179175e6f7376d27d13
 SHA512 
11fd01152d1e7b8ca89bf628076e1f4fb4f1ba6c9dc0f9dd544252495c580c04e4d5ffc238d5587f9e993aa91a47828333564ca55f60e008bd370089cd07d2e6
-DIST spidermonkey-128-patches-01.tar.xz 3612 BLAKE2B 
21143ee914743f21c9c68c8ba06b5662019c9526c658514e117da54ae0e82b0c361b859656be9d6cf7db83e64b1164cc19c878dce94f777f200304473fa05041
 SHA512 
8b21b5b637d00272479333d8d0ef9c04b63e569fa7d123972692e0c3f8b44d2d9fa45e702ed942ae05a0074609e3e41277580768e3228293e9d6256c7ebe7979
+DIST spidermonkey-128-patches-02.tar.xz 3916 BLAKE2B 
b6640860ea091b22c61b2a78da5004816a08ab9fb39fda04ae76fe48a3a8061770d6d6e451e5f34951aa3f63473dd77d3dde8b60aec80b4c31f1b29064ce68ee
 SHA512 
3f2d272a36ca2ac831de9108769c68e380be4e8bba7071d02686699702acac6a9325e4256d9c5c2441c3742552179031b0898d3f96f08477857fd6e989596ee6

diff --git a/dev-lang/spidermonkey/spidermonkey-128.3.0.ebuild 
b/dev-lang/spidermonkey/spidermonkey-128.3.0.ebuild
index 3bb97ef9d7cb..a51d1f5c1c92 100644
--- a/dev-lang/spidermonkey/spidermonkey-128.3.0.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-128.3.0.ebuild
@@ -4,7 +4,7 @@
 EAPI="8"
 
 FIREFOX_PATCHSET="firefox-128esr-patches-03.tar.xz"
-SPIDERMONKEY_PATCHSET="spidermonkey-128-patches-01.tar.xz"
+SPIDERMONKEY_PATCHSET="spidermonkey-128-patches-02.tar.xz"
 
 LLVM_COMPAT=( 17 18 )
 
@@ -69,10 +69,10 @@ RESTRICT="!test? ( test )"
 
 BDEPEND="${PYTHON_DEPS}
        $(llvm_gen_dep '
-               sys-devel/llvm:${LLVM_SLOT}
                clang? (
                        sys-devel/clang:${LLVM_SLOT}
                        sys-devel/lld:${LLVM_SLOT}
+                       sys-devel/llvm:${LLVM_SLOT}
                        virtual/rust:0/llvm-${LLVM_SLOT}
                )
        ')
@@ -92,17 +92,17 @@ RDEPEND="${DEPEND}"
 S="${WORKDIR}/firefox-${PV%_*}"
 
 llvm_check_deps() {
-       if ! has_version -b "sys-devel/llvm:${LLVM_SLOT}" ; then
-               einfo "sys-devel/llvm:${LLVM_SLOT} is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
-               return 1
-       fi
-
        if use clang ; then
                if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
                        einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot 
use LLVM slot ${LLVM_SLOT} ..." >&2
                        return 1
                fi
 
+               if ! has_version -b "sys-devel/llvm:${LLVM_SLOT}" ; then
+                       einfo "sys-devel/llvm:${LLVM_SLOT} is missing! Cannot 
use LLVM slot ${LLVM_SLOT} ..." >&2
+                       return 1
+               fi
+
                if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
                        einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! 
Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
                        return 1
@@ -263,8 +263,8 @@ src_prepare() {
        # sed-in toolchain prefix
        sed -i \
                -e "s/objdump/${CHOST}-objdump/" \
-               python/mozbuild/mozbuild/configure/check_debug_ranges.py \
-               || die "sed failed to set toolchain prefix"
+               python/mozbuild/mozbuild/configure/check_debug_ranges.py ||
+                       die "sed failed to set toolchain prefix"
 
        einfo "Removing pre-built binaries ..."
        find third_party -type f \( -name '*.so' -o -name '*.o' \) -print 
-delete || die
@@ -283,7 +283,7 @@ src_configure() {
        einfo "Current RUSTFLAGS: ${RUSTFLAGS}"
 
        local have_switched_compiler=
-       if use clang; then
+       if use clang ; then
                # Force clang
                einfo "Enforcing the use of clang due to USE=clang ..."
 
@@ -294,11 +294,14 @@ src_configure() {
                if tc-is-gcc; then
                        have_switched_compiler=yes
                fi
+
                AR=llvm-ar
                CC=${CHOST}-clang-${version_clang}
                CXX=${CHOST}-clang++-${version_clang}
                NM=llvm-nm
                RANLIB=llvm-ranlib
+               READELF=llvm-readelf
+               OBJDUMP=llvm-objdump
 
        elif ! use clang && ! tc-is-gcc ; then
                # Force gcc
@@ -309,6 +312,8 @@ src_configure() {
                CXX=${CHOST}-g++
                NM=gcc-nm
                RANLIB=gcc-ranlib
+               READELF=readelf
+               OBJDUMP=objdump
        fi
 
        if [[ -n "${have_switched_compiler}" ]] ; then
@@ -323,7 +328,7 @@ src_configure() {
        export HOST_CXX="$(tc-getBUILD_CXX)"
        export AS="$(tc-getCC) -c"
 
-       tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG
+       tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG
 
        # Pass the correct toolchain paths through cbindgen
        if tc-is-cross-compiler ; then
@@ -460,7 +465,6 @@ src_test() {
 src_install() {
        cd "${BUILD_DIR}" || die
        default
-       # DESTDIR="${D}" ./mach install || die
 
        # fix soname links
        pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die

Reply via email to