summaryrefslogtreecommitdiff
path: root/dev-lang/spidermonkey
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/spidermonkey')
-rw-r--r--dev-lang/spidermonkey/Manifest8
-rw-r--r--dev-lang/spidermonkey/files/spidermonkey-52-baseconfig.patch22
-rw-r--r--dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild147
-rw-r--r--dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild1
-rw-r--r--dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r1.ebuild144
5 files changed, 298 insertions, 24 deletions
diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest
index 8c9a24080fab..4a1df9869e9e 100644
--- a/dev-lang/spidermonkey/Manifest
+++ b/dev-lang/spidermonkey/Manifest
@@ -1,5 +1,4 @@
AUX moz38-dont-hardcode-libc-soname.patch 637 BLAKE2B d78f53814955c3e0842040f47330d8216b3f496574fadc045294b534f2ec7d049b14564cb495c37ae2d084db2f5671e447d1d98aa19a367f8b96ec97201b4f30 SHA512 f3d447996da3bf445f082a0b5c3018eb618b6b08a49bc43f275dc6cc77d7d906928e99264378472e96213df8f8b5d279a0af72d9d6a0a3417b266d7752c7f1fd
-AUX spidermonkey-52-baseconfig.patch 963 BLAKE2B 4652a28774677933a2974b50336ca772908892097b533a6c13f943a9179d8112e004e4aeba336e9e5565f165d6dee5d424a68d80896f66b8a69632f570f2199d SHA512 22870d6ee8a0a0b4359d78173aef0ade49063bfad495fd40815852684a1cdf17f9f50585e0d693eb712c2a2225ea43c4387cf454f3b9bd39e01899f3936775f1
AUX spidermonkey-52.0-fix-alpha-bitness.patch 836 BLAKE2B bf89aadfdceab9d1460c31b496618dc19d2461d27e0713887d8c59b7a565a70d38cbaa2ca099b50555417beba54c2b207f80cf13ba633da35be7fab6b3c41faf SHA512 67ccafd8e2b84d59d13ff93bd12930b4804f8cf64cc896a4edf99c962481f583866ea6c4f84b3fd9d1093ad8ca7d23712615470dfadb57d293258754dd612484
AUX spidermonkey-perl-defined-array-check.patch 341 BLAKE2B e11a74cc2afbea5e39ec5f3fb4c108278a8b71b57ce71644184bc4e19188059f6cb9c164ab87877605028241ed0b68a1447414f1aa0f5453fa26a603ecd4f6a6 SHA512 5d178b68cf0744da874624da79cd31555bd882aed205e697a3f0bfc3cb91a149d74da79b7af5883ea5a23e1d1692753ebfda0d83e7a25ac000105849db5c1548
DIST js-1.7.0.tar.gz 1165607 BLAKE2B 61749e10886bbb9e4958a41925fae8dcbd7d943b9bf838878368c30e26ba61f300bc2ec37982653b87fedf76707dda2ffd510282de4bce87d1da11ca42fa108c SHA512 9d9fbd9c1dae969ca19ddb0f977ac56f3e0479ec393b859de252fcdd8b7fc325e80399073540884ed365ce56a3219be34c0db9300d5e50f32969660c90527e51
@@ -8,20 +7,25 @@ DIST mozjs-24.2.0.tar.bz2 15624530 BLAKE2B 633f3e42011a8395aa4e60842c2de1cb47269
DIST mozjs-38.3.0sfink2.tar.bz2 27232902 BLAKE2B 42a039a41b7479a32e22f260cb58f098e1a1d4833f801f193bdd8b75403f94567b9ef2ebe85b2a811fe2f9b27cd934afe1054bd4e7d9aae0b8a80acdec8e42a4 SHA512 debad1fbd21e025c567b083677cfd0a2023ec2aff750241f495ac2977034a7299e068cb3b0b2351c97457119cc8aef563f00416092a70a3a269d20947b700206
DIST mozjs-45.0.2.tar.bz2 97508152 BLAKE2B 89600f7e2a3effe71ad140646110aaf3be91cc5313cf227f1d16e796e249e287cc8dbf2599aa4277f2652a83ec3570f58c1c51ef319632254b9ac5caec46bb9a SHA512 84a3cf12e2603e00bcfe518a1a5000f53b21758c1c6b32a0410e63ab7db8d4452028195b0ba3e56144054b06e90f8e5195b4db94dba711f7c75d11da99c6c61d
DIST mozjs-52.9.1pre1.tar.bz2 30178574 BLAKE2B 0920432b5140e78297a9bcbccb54268d75a223d5e75e4ff90b3b01aab4f7736b4a4e05c47b3a925ff0a74607a0abad3b6583c75d070ef5142009b20ebaf6e4bf SHA512 187b231b246a5ae09e55c0fef77866b316d75f38f4c2e066d5d4325d8da63433027020c929439cab46af3253ac63ab2f780223a8fd2c6ff535b3409bb6c4aa0f
+DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd106583eb7f640fe2243adc7cbb811dced5cefa94426cceca63468b0112be84078ffcef24cb2b8c1a7b6c8173c0d45 SHA512 5fb73330e7803bdd524fbe7cfdf4e6b72e85d4b22b0c827400317b5d052d1088d36e558ceac376393089e9d03e658b24e69262851fc04a66bbcda47135423dc0
DIST mozjs17.0.0.tar.gz 6778934 BLAKE2B a37debf5079fc4c27bb9edd3172c6e7914f6128fac6ffa97b49ac266c477d0916b180fb68ecd0916a52f935959a83d73254b0ba72b4898adc5e3b85927d17d2a SHA512 39b68aeb9f712f146778d8b68ee795709a1372c8ab893a222af4eb34882427d6f5cf877e743d6cb2f1b4348c194d8f3774f00cb775b03515b34b49560b748be4
DIST spidermonkey-52.0-patches-0.tar.xz 5172 BLAKE2B 8bcf9477de47ef3b882cd3281efa7f77c16ce11fc93f44446a620917adf629fde8290af1dd69f0930a889aacfee3603bf60eb9c1e718a1dfd3e218a1013b6192 SHA512 88ad640fb0efa4972f1b7782bd0abee1751b73914ee51faade93b25c4d8eec64e7693898842a406c49fc2ab43733404efeccb138afb64d2193b9a5eb612578e3
+DIST spidermonkey-60.0-patches-03.tar.xz 3024 BLAKE2B b023794c0f7d4d0c0c7549947793e1b33c8302de90dc1aa9a9661c721241943669840ddaf28e24b59bebd87fffae3af7749f54f93ae4b2c987cd6da63ffe16ba SHA512 1c985bba53709fffbfba5720143f302d1863ba6b14fc90067e6b31a3c9889b3f5e0c379baab43402a39106d1ee1a05798e085ce76f082e7d17b01acba6e020e5
DIST spidermonkey-slot0-patches-01.tar.xz 10488 BLAKE2B 4a5195ac11d1076046424fc10d1416d097fb230cd8b0b28ac8b65d379e0c0518586ced0f48f833dea52b13fb5d300e02664657ab2479bfcc343bc358d394d5d7 SHA512 6c878ed0b50c052989a8b965fed845e9c672b691f4c4b1f98ee82e81a33880e1e6bf1dac8222d71322553282de602a88272dedebbcf50d27967fc172f0a8054a
+DIST spidermonkey-slot0-patches-02.tar.xz 10952 BLAKE2B fb7bf5cdac6c821a48d407ff172fe0ec7297e047d3b3bab952f226f413b83ea70325175b41c1680725ff588111b424efc97a0c66e392989da510c43d38528ff1 SHA512 cd62890c4b58658d99fc1b52f05ccb35c07da835b168bb9d5e6b219de5021122c199cc2255c5b0be01ef582f53dd51c9975921e6bde9f14e9b43536e2bee85f2
DIST spidermonkey-slot17-patches-01.tar.xz 2748 BLAKE2B a55504d726f925096de7e066a1d323154bc796018644f347bc1d012ea6ee8441cc19f30689e06fd26bab5a5d2e8376e90bf2c1930a588be8b48865f7bbc524ea SHA512 21a90f85d156de3cca9811317507162a458f908bb447924fcfbf49b7bb70496b611ce7df90b90775316b8ceafda56692be3bf856b168b83ed40b8a5c668eed3f
DIST spidermonkey-slot24-patches-01.tar.xz 3444 BLAKE2B f207577db223d51e315d473f0eefa8a2805fab49acd952fa5796eb4e967c82c76965afcdea1b55ac98c5e94f4321f40c1ea9079d5ebee99fdef950bddee91ab2 SHA512 712250983f726eb2fe7ae243e9ca510b6e5b8fa0f221fe5120c2e2f75334f7e4b10b8ab172869d7333a120529dbc2a513c170533d5ad5af27a2643ce1384bbdb
DIST spidermonkey-slot38-patches-01.tar.xz 7472 BLAKE2B 7585aa6f5a84d6ae21e41137fca8da093580182f798f63bfcf2e402e3bf58df4cb3f43cef3eb635044508800f6757247fa3a65ca53230243a455925f436a9510 SHA512 953acee985d192c6d0f18f14c70fdda33a7c8f784c6833ca8b75495044b40a8b3f29b281c40dbfcda0c8570c111a3dd1717c2ef0ffd651c1b50d1f2bff1f6d09
DIST spidermonkey-slot45-patches-01.tar.xz 5092 BLAKE2B 0188a179fc741ab84a93aae1e77f8b765868ca716b8879661bfa678aef918998c9488db3b866a13c79ae28edb43ac0ebb10345b0471b717c4174c61cba9646bc SHA512 d52f038a7b4f7b410b5a1f94a55962adafc5906e7d85f605f3fe45ad49417c2b9d58d853a81b5d2395a2842c9780992d5a2c1a0e67aa77fb09f21aff9aeb0f7a
EBUILD spidermonkey-1.7.0-r3.ebuild 1544 BLAKE2B 6de699a424a3db9dc3a30ad690d8991fef0387b1a87479b46301bba6cef602a67829b4ef4d36a0d58bad6b7e7b4a71d8fb3ae7312b8a2abae09b2874d56f4378 SHA512 abd9fbd84c61025a5eb1f9777179a3e49daa0ff9ad404ddd442e9a8ec0fb18cf279a7b0361616a340ebcf7ccc73883db09d1b3ed31d0adbf34124584cd7fac26
EBUILD spidermonkey-1.8.5-r6.ebuild 4444 BLAKE2B 6fcfb3b526227abd6b2f7436d94d8c3d83d5f7fd2ee1d3023e3b17ee7d22c0cceffd6c12ba6d8e577c9344a98a29218735ce4d1b56c285730e56d19c52e26e03 SHA512 536894c766fb99fadda983d10dffd4df3ffff7141dcd3f85c2878e32d93042e4b3db626848cdecb232a299aae4a12b1aa832d8262bd518ab53776403a29f3aa0
+EBUILD spidermonkey-1.8.5-r7.ebuild 3813 BLAKE2B b4dd053f8253ef288f5be762f84eccf628ab6914fff3deab8cb66578c60ab8794a498c5b963d5c54907897358d2741d4d71ebd22e344361a77e49db33c0a5cfc SHA512 7a6414bfef726613e53d7dc339db9497f2437528a60a5cf16eca4e8cd1376b1ba53d9b9638228685cb5388019ae09a34f3938a35b9a3923a23813815b08d21a7
EBUILD spidermonkey-17.0.0-r4.ebuild 3547 BLAKE2B dee9143cf3aa2ed35cb7a3c5ba754ae3508dad1855ef6bdb8cb404406382b561d62452c37ad307204cc4cb6454f6a4856863316449437ea836946796551d8a45 SHA512 c83e91990e7018d48280a51452e258dfc29246b18387c730c3485b24473ece0da7b21432144f9736dbced370534ed41ee9cbbb49e0855e0cf219acbe91e62e08
EBUILD spidermonkey-17.0.0-r5.ebuild 3563 BLAKE2B 4b5294071559ee1e8487dfa5df388e17fb357ec8898f6e4390c1d3540a89647df04245e4c33706e52080236f9fcec7422a2cd0463f1f78feca1afc42f1d29e40 SHA512 6546f0c8bc2e7b1baecd6d616550977d83079c71ee973ab811a9cede0612d95b892a5f4d02a4a4733b5e90fff9795cdf50531e41f278fa210c988467931433bb
EBUILD spidermonkey-24.2.0-r3.ebuild 4016 BLAKE2B 4f52b07f5f156f701ba6e1dc7837a183a21d96d60467bf66ab0cfe2cf9d4269d6a5e56f4fa9813cceb877c084a8b53030d7f35d99fd934754b2f2f2612fcf35a SHA512 e71e25a69845f9555a6257a57e420166303c7be5dc511f9180c6bbcc814c7a52283cd55a19429ca94b73b21403d6faf0fe25485b8520cd7808881bfcfce14056
EBUILD spidermonkey-24.2.0-r4.ebuild 3989 BLAKE2B a859c05afcfe262398de5f0b4d0c148eaf2d94f57e9f029814982efcc740acbfc8349e756f75b3ce83a746571e27a31d88c78126b1b1e0cc9154e4b86f53dc8e SHA512 ca080e9993b2c10aed9abd0d54bd0722e8f4a53ed755f60389e9bf6b0d3347115ca7cc347b708592619ef69f6f1f38e5c9778c949f7224e579e7da09cd269067
EBUILD spidermonkey-38.3.0.ebuild 3869 BLAKE2B 261c49b9ab0c2f16fc782638b820e7ea34e9f09009a9ea9912baa1645a7a75fca5909d15482f53a55f17b72a10ad7fe27072976e4202b7381d57ede955ff0abf SHA512 c001b60b127eccbeb8e2f44f5995ad28496232a2eb663672876457476253341f2219e168784315f540c486558b97e9f0b5e49d914c39e1823a5b22ad14194ca8
EBUILD spidermonkey-45.0.2.ebuild 3980 BLAKE2B 8f5b8aaba2c9ffc9adf16ff14216375434ddb3511add9817022e2913b41b415fdb3a2899ab341dc3e389460dbdf6d00cfb86270e8fd7a8de78eda6bbfc73b6ee SHA512 f99a6f6385e9cd39b8f6acb63b4c5f6e05250eb475e7906c6b06251c2a3de593d2617cbed3ef9f5c13b6009bcac6cb9b989ec362e0bfc6e351adcbec033d2806
-EBUILD spidermonkey-52.9.1_pre1.ebuild 4225 BLAKE2B 4286d29b0f5886cc7a037a51b80a7f290c39e542572fbdc34d8160949f6d1bb0d274f09d799a7818368cc3a1e4bc6c6ee975d66df5f8608dba2fd4fe0185f998 SHA512 75371ae9b9c88d2bee83815d2c0d1c1a55aa2cc8b5d57e6ee2f24ff279c80e180aa8ff283b27d3b829a97c61ee75faf54338baf719d4c0485db3c20cc6fa7571
+EBUILD spidermonkey-52.9.1_pre1.ebuild 4244 BLAKE2B fefec5669a23546b2207b0b80064c1fc844e3fc7f5c482a5680a27387146b5ccb3215276d742dec39753120372274d19b0d2109bab8c1fb6c26c224d5e06c6f9 SHA512 985833199058bd51063ab2b8f1f73e39f36dd23fec50681bd08b49c1e2ad4fc7891893fd13b675f814010dd562bace588ef3b2c6f9f66656eda12296f9cfba9d
+EBUILD spidermonkey-60.5.2_p0-r1.ebuild 3686 BLAKE2B 12a606a1ca54af34430cafb5818d49fa73e06d4bb1b3749e1fccc9702a6de75b369c331ba04f4d7916794197aeca8e7d06ccd7d47f11b5fbb2a4c174d8eda1e1 SHA512 346b6b58768458f3807733516813945df1c78e7777483719f452baf1da027f69cb635d8db861e68203f30060248e34c6d9984b9496749b1a4de19d214092a313
MISC metadata.xml 906 BLAKE2B 8557bb4bfdce358f543be3ff571177d61beb5713ba6fa4c24c8e91522ca30f8c5b1bf42abd0324164cc6febd04d07c1ae3a311d6d68d62992be6368c20650ca9 SHA512 a411a781913fe81801799d4d801645fd8029ee4fb727431589cb948f97464edd828b8d86969b2207880432db8e8e627fad829fd95394fa121bb0ae97ae8249b0
diff --git a/dev-lang/spidermonkey/files/spidermonkey-52-baseconfig.patch b/dev-lang/spidermonkey/files/spidermonkey-52-baseconfig.patch
deleted file mode 100644
index ee52728fa952..000000000000
--- a/dev-lang/spidermonkey/files/spidermonkey-52-baseconfig.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Fix various paths to include MOZ_APP_VERSION
-
-This has been committed upstream but was not included in
-the 52.4.0 sources that spidermonkey was rolled from.
-
---- a/config/baseconfig.mk 2017-10-03 14:00:45.000000000 -0400
-+++ b/config/baseconfig.mk 2017-10-03 16:36:10.857663794 -0400
-@@ -2,10 +2,10 @@
- # directly in python/mozbuild/mozbuild/base.py for gmake validation.
- # We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending
- # whether a normal build is happening or whether the check is running.
--includedir := $(includedir)/$(MOZ_APP_NAME)
--idldir = $(includedir)/idl/$(MOZ_APP_NAME)
--installdir = $(libdir)/$(MOZ_APP_NAME)
--sdkdir = $(libdir)/$(MOZ_APP_NAME)
-+includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-+idldir = $(includedir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-+installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-+sdkdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
- ifeq (.,$(DEPTH))
- DIST = dist
- else
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild
new file mode 100644
index 000000000000..74694de92061
--- /dev/null
+++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+WANT_AUTOCONF="2.1"
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+inherit autotools toolchain-funcs multilib python-any-r1 versionator pax-utils
+
+MY_PN="js"
+TARBALL_PV="$(replace_all_version_separators '' $(get_version_component_range 1-3))"
+MY_P="${MY_PN}-${PV}"
+TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0"
+DESCRIPTION="Stand-alone JavaScript C library"
+HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
+SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot0-patches-02.tar.xz
+ "
+
+LICENSE="NPL-1.1"
+SLOT="0/mozjs185"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos"
+IUSE="debug minimal static-libs test"
+
+S="${WORKDIR}/${MY_P}"
+BUILDDIR="${S}/js/src"
+
+RDEPEND=">=dev-libs/nspr-4.7.0
+ sys-libs/readline:0=
+ x64-macos? ( dev-libs/jemalloc )"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ app-arch/zip
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${WORKDIR}"/sm0/${P}-fix-install-symlinks.patch
+ "${WORKDIR}"/sm0/${P}-fix-ppc64.patch
+ "${WORKDIR}"/sm0/${P}-arm_respect_cflags-3.patch
+ "${WORKDIR}"/sm0/${PN}-1.8.7-freebsd-pthreads.patch
+ "${WORKDIR}"/sm0/${P}-perf_event-check.patch
+ "${WORKDIR}"/sm0/${P}-symbol-versions.patch
+ "${WORKDIR}"/sm0/${P}-ia64-fix.patch
+ "${WORKDIR}"/sm0/${P}-ia64-static-strings.patch
+ "${WORKDIR}"/sm0/${P}-isfinite.patch
+ "${FILESDIR}"/${PN}-perl-defined-array-check.patch
+ "${WORKDIR}"/sm0/${PN}-1.8.7-x32.patch
+ "${WORKDIR}"/sm0/${P}-gcc6.patch
+ "${WORKDIR}"/sm0/${P}-drop-asm-volatile-toplevel.patch
+)
+
+DOCS=( ${S}/README )
+HTML_DOCS=( ${BUILDDIR}/README.html )
+
+pkg_setup(){
+ if [[ ${MERGE_TYPE} != "binary" ]]; then
+ export LC_ALL="C"
+ fi
+}
+
+src_prepare() {
+ pwd
+
+ default
+
+ cd "${BUILDDIR}" || die
+ eautoconf
+}
+
+src_configure() {
+ cd "${BUILDDIR}" || die
+
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \
+ LD="$(tc-getLD)" \
+ ac_cv_lib_dnet_dnet_ntoa=no \
+ ac_cv_lib_dnet_stub_dnet_ntoa=no \
+ econf \
+ ${myopts} \
+ --enable-jemalloc \
+ --enable-readline \
+ --enable-threadsafe \
+ --with-system-nspr \
+ --disable-optimize \
+ --disable-profile-guided-optimization \
+ $(use_enable debug) \
+ $(use_enable static-libs static) \
+ $(use_enable test tests)
+}
+
+cross_make() {
+ emake \
+ CFLAGS="${BUILD_CFLAGS}" \
+ CXXFLAGS="${BUILD_CXXFLAGS}" \
+ AR="${BUILD_AR}" \
+ CC="${BUILD_CC}" \
+ CXX="${BUILD_CXX}" \
+ RANLIB="${BUILD_RANLIB}" \
+ "$@"
+}
+src_compile() {
+ cd "${BUILDDIR}" || die
+ if tc-is-cross-compiler; then
+ tc-export_build_env BUILD_{AR,CC,CXX,RANLIB}
+ cross_make jscpucfg host_jsoplengen host_jskwgen
+ cross_make -C config nsinstall
+ mv {,native-}jscpucfg || die
+ mv {,native-}host_jskwgen || die
+ mv {,native-}host_jsoplengen || die
+ mv config/{,native-}nsinstall || die
+ sed -i \
+ -e 's@./jscpucfg@./native-jscpucfg@' \
+ -e 's@./host_jskwgen@./native-host_jskwgen@' \
+ -e 's@./host_jsoplengen@./native-host_jsoplengen@' \
+ Makefile || die
+ sed -i -e 's@/nsinstall@/native-nsinstall@' config/config.mk || die
+ rm -f config/host_nsinstall.o \
+ config/host_pathsub.o \
+ host_jskwgen.o \
+ host_jsoplengen.o || die
+ fi
+ emake
+}
+
+src_test() {
+ cd "${BUILDDIR}/jsapi-tests" || die
+ # for bug 415791
+ pax-mark mr jsapi-tests
+ emake check
+}
+
+src_install() {
+ cd "${BUILDDIR}" || die
+ emake DESTDIR="${D}" install
+ # bug 437520 , exclude js shell for small systems
+ if ! use minimal ; then
+ dobin shell/js
+ pax-mark m "${ED}/usr/bin/js"
+ fi
+ einstalldocs
+
+ if ! use static-libs; then
+ # We can't actually disable building of static libraries
+ # They're used by the tests and in a few other places
+ find "${D}" -iname '*.a' -delete || die
+ fi
+}
diff --git a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild
index d80c73d9c22c..9324e9d313f8 100644
--- a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild
@@ -77,6 +77,7 @@ src_configure() {
--with-system-nspr \
--disable-optimize \
--with-intl-api \
+ --disable-gold \
$(use_with system-icu) \
$(use_enable debug) \
$(use_enable test tests) \
diff --git a/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r1.ebuild b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r1.ebuild
new file mode 100644
index 000000000000..0ec72a142b2e
--- /dev/null
+++ b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+WANT_AUTOCONF="2.1"
+inherit autotools toolchain-funcs pax-utils mozcoreconf-v5
+
+MY_PN="mozjs"
+MY_P="${MY_PN}-${PV/_rc/.rc}"
+MY_P="${MY_P/_pre/pre}"
+MY_P="${MY_P%_p[0-9]*}"
+DESCRIPTION="Stand-alone JavaScript C++ library"
+HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
+#SRC_URI="https://archive.mozilla.org/pub/spidermonkey/prereleases/60/pre3/${MY_P}.tar.bz2
+SRC_URI="https://dev.gentoo.org/~axs/distfiles/${MY_P}.tar.bz2
+ https://dev.gentoo.org/~axs/distfiles/${PN}-60.0-patches-03.tar.xz"
+
+LICENSE="NPL-1.1"
+SLOT="60"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="debug +jit minimal +system-icu test"
+
+RESTRICT="ia64? ( test )"
+
+S="${WORKDIR}/${MY_P%.rc*}"
+
+BUILDDIR="${S}/jsobj"
+
+RDEPEND=">=dev-libs/nspr-4.13.1
+ virtual/libffi
+ sys-libs/readline:0=
+ >=sys-libs/zlib-1.2.3:=
+ system-icu? ( >=dev-libs/icu-59.1:= )"
+DEPEND="${RDEPEND}"
+
+pkg_setup(){
+ [[ ${MERGE_TYPE} == "binary" ]] || \
+ moz_pkgsetup
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/${PN}"
+
+ eapply_user
+
+ if [[ ${CHOST} == *-freebsd* ]]; then
+ # Don't try to be smart, this does not work in cross-compile anyway
+ ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die
+ fi
+
+ cd "${S}/js/src" || die
+ eautoconf old-configure.in
+ eautoconf
+
+ # there is a default config.cache that messes everything up
+ rm -f "${S}/js/src"/config.cache || die
+
+ mkdir -p "${BUILDDIR}" || die
+}
+
+src_configure() {
+ cd "${BUILDDIR}" || die
+
+ ECONF_SOURCE="${S}/js/src" \
+ econf \
+ --disable-jemalloc \
+ --enable-readline \
+ --with-system-nspr \
+ --with-system-zlib \
+ --disable-optimize \
+ --with-intl-api \
+ $(use_with system-icu) \
+ $(use_enable debug) \
+ $(use_enable jit ion) \
+ $(use_enable test tests) \
+ XARGS="/usr/bin/xargs" \
+ SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+ CC="${CC}" CXX="${CXX}" LD="${LD}" AR="${AR}" RANLIB="${RANLIB}"
+}
+
+cross_make() {
+ emake \
+ CFLAGS="${BUILD_CFLAGS}" \
+ CXXFLAGS="${BUILD_CXXFLAGS}" \
+ AR="${BUILD_AR}" \
+ CC="${BUILD_CC}" \
+ CXX="${BUILD_CXX}" \
+ RANLIB="${BUILD_RANLIB}" \
+ "$@"
+}
+src_compile() {
+ cd "${BUILDDIR}" || die
+ if tc-is-cross-compiler; then
+ tc-export_build_env BUILD_{AR,CC,CXX,RANLIB}
+ cross_make \
+ MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
+ HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
+ MOZ_PGO_OPTIMIZE_FLAGS="" \
+ host_jsoplengen host_jskwgen
+ cross_make \
+ MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" HOST_OPTIMIZE_FLAGS="" \
+ -C config nsinstall
+ mv {,native-}host_jskwgen || die
+ mv {,native-}host_jsoplengen || die
+ mv config/{,native-}nsinstall || die
+ sed -i \
+ -e 's@./host_jskwgen@./native-host_jskwgen@' \
+ -e 's@./host_jsoplengen@./native-host_jsoplengen@' \
+ Makefile || die
+ sed -i -e 's@/nsinstall@/native-nsinstall@' config/config.mk || die
+ rm -f config/host_nsinstall.o \
+ config/host_pathsub.o \
+ host_jskwgen.o \
+ host_jsoplengen.o || die
+ fi
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+ emake \
+ MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
+ HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
+ MOZ_PGO_OPTIMIZE_FLAGS=""
+}
+
+src_test() {
+ cd "${BUILDDIR}/js/src/jsapi-tests" || die
+ ./jsapi-tests || die
+}
+
+src_install() {
+ cd "${BUILDDIR}" || die
+ emake DESTDIR="${D}" install
+
+ if ! use minimal; then
+ if use jit; then
+ pax-mark m "${ED}"usr/bin/js${SLOT}
+ fi
+ else
+ rm -f "${ED}"usr/bin/js${SLOT}
+ fi
+
+ # We can't actually disable building of static libraries
+ # They're used by the tests and in a few other places
+ find "${D}" -iname '*.a' -o -iname '*.ajs' -delete || die
+}