Gentoo Archives: gentoo-commits

From: Ian Stakenvicius <axs@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/spidermonkey/
Date: Tue, 12 Mar 2019 21:24:00
Message-Id: 1552425824.988d8fbaaa88c61ef88fc199c9fe08f02185aa52.axs@gentoo
1 commit: 988d8fbaaa88c61ef88fc199c9fe08f02185aa52
2 Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org>
3 AuthorDate: Tue Mar 12 21:22:56 2019 +0000
4 Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org>
5 CommitDate: Tue Mar 12 21:23:44 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=988d8fba
7
8 dev-lang/spidermonkey: bump to 60.5.2
9
10 The source tarball for this version is rolled manually from mozilla sources
11 (specifically Firefox) 60.5.2, since upstream has not released.
12
13 Signed-off-by: Ian Stakenvicius <axs <AT> gentoo.org>
14 Package-Manager: Portage-2.3.51, Repoman-2.3.11
15
16 dev-lang/spidermonkey/Manifest | 2 +
17 .../spidermonkey/spidermonkey-60.5.2_p0.ebuild | 143 +++++++++++++++++++++
18 2 files changed, 145 insertions(+)
19
20 diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest
21 index 072cc20aec7..68618c2c36c 100644
22 --- a/dev-lang/spidermonkey/Manifest
23 +++ b/dev-lang/spidermonkey/Manifest
24 @@ -4,8 +4,10 @@ DIST mozjs-24.2.0.tar.bz2 15624530 BLAKE2B 633f3e42011a8395aa4e60842c2de1cb47269
25 DIST mozjs-38.3.0sfink2.tar.bz2 27232902 BLAKE2B 42a039a41b7479a32e22f260cb58f098e1a1d4833f801f193bdd8b75403f94567b9ef2ebe85b2a811fe2f9b27cd934afe1054bd4e7d9aae0b8a80acdec8e42a4 SHA512 debad1fbd21e025c567b083677cfd0a2023ec2aff750241f495ac2977034a7299e068cb3b0b2351c97457119cc8aef563f00416092a70a3a269d20947b700206
26 DIST mozjs-45.0.2.tar.bz2 97508152 BLAKE2B 89600f7e2a3effe71ad140646110aaf3be91cc5313cf227f1d16e796e249e287cc8dbf2599aa4277f2652a83ec3570f58c1c51ef319632254b9ac5caec46bb9a SHA512 84a3cf12e2603e00bcfe518a1a5000f53b21758c1c6b32a0410e63ab7db8d4452028195b0ba3e56144054b06e90f8e5195b4db94dba711f7c75d11da99c6c61d
27 DIST mozjs-52.9.1pre1.tar.bz2 30178574 BLAKE2B 0920432b5140e78297a9bcbccb54268d75a223d5e75e4ff90b3b01aab4f7736b4a4e05c47b3a925ff0a74607a0abad3b6583c75d070ef5142009b20ebaf6e4bf SHA512 187b231b246a5ae09e55c0fef77866b316d75f38f4c2e066d5d4325d8da63433027020c929439cab46af3253ac63ab2f780223a8fd2c6ff535b3409bb6c4aa0f
28 +DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd106583eb7f640fe2243adc7cbb811dced5cefa94426cceca63468b0112be84078ffcef24cb2b8c1a7b6c8173c0d45 SHA512 5fb73330e7803bdd524fbe7cfdf4e6b72e85d4b22b0c827400317b5d052d1088d36e558ceac376393089e9d03e658b24e69262851fc04a66bbcda47135423dc0
29 DIST mozjs17.0.0.tar.gz 6778934 BLAKE2B a37debf5079fc4c27bb9edd3172c6e7914f6128fac6ffa97b49ac266c477d0916b180fb68ecd0916a52f935959a83d73254b0ba72b4898adc5e3b85927d17d2a SHA512 39b68aeb9f712f146778d8b68ee795709a1372c8ab893a222af4eb34882427d6f5cf877e743d6cb2f1b4348c194d8f3774f00cb775b03515b34b49560b748be4
30 DIST spidermonkey-52.0-patches-0.tar.xz 5172 BLAKE2B 8bcf9477de47ef3b882cd3281efa7f77c16ce11fc93f44446a620917adf629fde8290af1dd69f0930a889aacfee3603bf60eb9c1e718a1dfd3e218a1013b6192 SHA512 88ad640fb0efa4972f1b7782bd0abee1751b73914ee51faade93b25c4d8eec64e7693898842a406c49fc2ab43733404efeccb138afb64d2193b9a5eb612578e3
31 +DIST spidermonkey-60.0-patches-03.tar.xz 3024 BLAKE2B b023794c0f7d4d0c0c7549947793e1b33c8302de90dc1aa9a9661c721241943669840ddaf28e24b59bebd87fffae3af7749f54f93ae4b2c987cd6da63ffe16ba SHA512 1c985bba53709fffbfba5720143f302d1863ba6b14fc90067e6b31a3c9889b3f5e0c379baab43402a39106d1ee1a05798e085ce76f082e7d17b01acba6e020e5
32 DIST spidermonkey-slot0-patches-01.tar.xz 10488 BLAKE2B 4a5195ac11d1076046424fc10d1416d097fb230cd8b0b28ac8b65d379e0c0518586ced0f48f833dea52b13fb5d300e02664657ab2479bfcc343bc358d394d5d7 SHA512 6c878ed0b50c052989a8b965fed845e9c672b691f4c4b1f98ee82e81a33880e1e6bf1dac8222d71322553282de602a88272dedebbcf50d27967fc172f0a8054a
33 DIST spidermonkey-slot0-patches-02.tar.xz 10952 BLAKE2B fb7bf5cdac6c821a48d407ff172fe0ec7297e047d3b3bab952f226f413b83ea70325175b41c1680725ff588111b424efc97a0c66e392989da510c43d38528ff1 SHA512 cd62890c4b58658d99fc1b52f05ccb35c07da835b168bb9d5e6b219de5021122c199cc2255c5b0be01ef582f53dd51c9975921e6bde9f14e9b43536e2bee85f2
34 DIST spidermonkey-slot17-patches-01.tar.xz 2748 BLAKE2B a55504d726f925096de7e066a1d323154bc796018644f347bc1d012ea6ee8441cc19f30689e06fd26bab5a5d2e8376e90bf2c1930a588be8b48865f7bbc524ea SHA512 21a90f85d156de3cca9811317507162a458f908bb447924fcfbf49b7bb70496b611ce7df90b90775316b8ceafda56692be3bf856b168b83ed40b8a5c668eed3f
35
36 diff --git a/dev-lang/spidermonkey/spidermonkey-60.5.2_p0.ebuild b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0.ebuild
37 new file mode 100644
38 index 00000000000..ed0ea52bd26
39 --- /dev/null
40 +++ b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0.ebuild
41 @@ -0,0 +1,143 @@
42 +# Copyright 1999-2019 Gentoo Authors
43 +# Distributed under the terms of the GNU General Public License v2
44 +
45 +EAPI=6
46 +WANT_AUTOCONF="2.1"
47 +inherit autotools toolchain-funcs pax-utils mozcoreconf-v5
48 +
49 +MY_PN="mozjs"
50 +MY_P="${MY_PN}-${PV/_rc/.rc}"
51 +MY_P="${MY_P/_pre/pre}"
52 +MY_P="${MY_P%_p[0-9]*}"
53 +DESCRIPTION="Stand-alone JavaScript C++ library"
54 +HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
55 +#SRC_URI="https://archive.mozilla.org/pub/spidermonkey/prereleases/60/pre3/${MY_P}.tar.bz2
56 +SRC_URI="https://dev.gentoo.org/~axs/distfiles/${MY_P}.tar.bz2
57 + https://dev.gentoo.org/~axs/distfiles/${PN}-60.0-patches-03.tar.xz"
58 +
59 +LICENSE="NPL-1.1"
60 +SLOT="60"
61 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
62 +IUSE="debug +jit minimal +system-icu test"
63 +
64 +RESTRICT="ia64? ( test )"
65 +
66 +S="${WORKDIR}/${MY_P%.rc*}"
67 +
68 +BUILDDIR="${S}/jsobj"
69 +
70 +RDEPEND=">=dev-libs/nspr-4.13.1
71 + virtual/libffi
72 + sys-libs/readline:0=
73 + >=sys-libs/zlib-1.2.3
74 + system-icu? ( >=dev-libs/icu-59.1:= )"
75 +DEPEND="${RDEPEND}"
76 +
77 +pkg_setup(){
78 + [[ ${MERGE_TYPE} == "binary" ]] || \
79 + moz_pkgsetup
80 +}
81 +
82 +src_prepare() {
83 + eapply "${WORKDIR}/${PN}"
84 +
85 + eapply_user
86 +
87 + if [[ ${CHOST} == *-freebsd* ]]; then
88 + # Don't try to be smart, this does not work in cross-compile anyway
89 + ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die
90 + fi
91 +
92 + cd "${S}/js/src" || die
93 + eautoconf old-configure.in
94 + eautoconf
95 +
96 + # there is a default config.cache that messes everything up
97 + rm -f "${S}/js/src"/config.cache || die
98 +
99 + mkdir -p "${BUILDDIR}" || die
100 +}
101 +
102 +src_configure() {
103 + cd "${BUILDDIR}" || die
104 +
105 + ECONF_SOURCE="${S}/js/src" \
106 + econf \
107 + --enable-jemalloc \
108 + --enable-readline \
109 + --with-system-nspr \
110 + --disable-optimize \
111 + --with-intl-api \
112 + $(use_with system-icu) \
113 + $(use_enable debug) \
114 + $(use_enable jit ion) \
115 + $(use_enable test tests) \
116 + XARGS="/usr/bin/xargs" \
117 + SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
118 + CC="${CC}" CXX="${CXX}" LD="${LD}" AR="${AR}" RANLIB="${RANLIB}"
119 +}
120 +
121 +cross_make() {
122 + emake \
123 + CFLAGS="${BUILD_CFLAGS}" \
124 + CXXFLAGS="${BUILD_CXXFLAGS}" \
125 + AR="${BUILD_AR}" \
126 + CC="${BUILD_CC}" \
127 + CXX="${BUILD_CXX}" \
128 + RANLIB="${BUILD_RANLIB}" \
129 + "$@"
130 +}
131 +src_compile() {
132 + cd "${BUILDDIR}" || die
133 + if tc-is-cross-compiler; then
134 + tc-export_build_env BUILD_{AR,CC,CXX,RANLIB}
135 + cross_make \
136 + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
137 + HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
138 + MOZ_PGO_OPTIMIZE_FLAGS="" \
139 + host_jsoplengen host_jskwgen
140 + cross_make \
141 + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" HOST_OPTIMIZE_FLAGS="" \
142 + -C config nsinstall
143 + mv {,native-}host_jskwgen || die
144 + mv {,native-}host_jsoplengen || die
145 + mv config/{,native-}nsinstall || die
146 + sed -i \
147 + -e 's@./host_jskwgen@./native-host_jskwgen@' \
148 + -e 's@./host_jsoplengen@./native-host_jsoplengen@' \
149 + Makefile || die
150 + sed -i -e 's@/nsinstall@/native-nsinstall@' config/config.mk || die
151 + rm -f config/host_nsinstall.o \
152 + config/host_pathsub.o \
153 + host_jskwgen.o \
154 + host_jsoplengen.o || die
155 + fi
156 +
157 + MOZ_MAKE_FLAGS="${MAKEOPTS}" \
158 + emake \
159 + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
160 + HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
161 + MOZ_PGO_OPTIMIZE_FLAGS=""
162 +}
163 +
164 +src_test() {
165 + cd "${BUILDDIR}/js/src/jsapi-tests" || die
166 + ./jsapi-tests || die
167 +}
168 +
169 +src_install() {
170 + cd "${BUILDDIR}" || die
171 + emake DESTDIR="${D}" install
172 +
173 + if ! use minimal; then
174 + if use jit; then
175 + pax-mark m "${ED}"usr/bin/js${SLOT}
176 + fi
177 + else
178 + rm -f "${ED}"usr/bin/js${SLOT}
179 + fi
180 +
181 + # We can't actually disable building of static libraries
182 + # They're used by the tests and in a few other places
183 + find "${D}" -iname '*.a' -o -iname '*.ajs' -delete || die
184 +}