1 |
commit: a4e326514db8e1f2c4423fc326f2983de2fad8b4 |
2 |
Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Oct 3 14:38:14 2017 +0000 |
4 |
Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Oct 3 15:49:57 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a4e32651 |
7 |
|
8 |
dev-lang/spidermonkey: file and package cleanups |
9 |
|
10 |
- Dropped spidermonkey-1.8.5-r5 |
11 |
- Migrated same-slot patches to tarballs to clean up ${FILESDIR} |
12 |
- fixed SRC_URI to point to mozilla http repo instead of the log-removed ftp |
13 |
|
14 |
Package-Manager: Portage-2.3.8, Repoman-2.3.1 |
15 |
|
16 |
dev-lang/spidermonkey/Manifest | 5 + |
17 |
.../files/ff45/7000_drop-Wl-build-id_v4.patch | 17 - |
18 |
.../files/ff45/7003_freebsd_jscpucfg.patch | 22 - |
19 |
.../files/ff45/8001_hppa_js_configure.patch | 21 - |
20 |
.../ff45/8007_nonejit_ppc64_fix_bug1253216.patch | 46 -- |
21 |
.../8008_nonejit_x86_fix_based_on_bug1253216.patch | 11 - |
22 |
.../spidermonkey/files/ff45/8014_ia64_js.patch | 248 --------- |
23 |
.../files/mozilla_configure_regexp_esr.patch | 32 -- |
24 |
.../files/mozilla_configure_regexp_esr38.patch | 32 -- |
25 |
dev-lang/spidermonkey/files/mozjs38-1269317.patch | 124 ----- |
26 |
.../spidermonkey/files/mozjs38-copy-headers.patch | 20 - |
27 |
.../files/mozjs38-fix-tracelogger.patch | 605 --------------------- |
28 |
.../files/mozjs38-pkg-config-version.patch | 22 - |
29 |
dev-lang/spidermonkey/files/mozjs45-1266366.patch | 29 - |
30 |
.../files/spidermonkey-1.5-build.patch | 138 ----- |
31 |
.../files/spidermonkey-1.6-header.patch | 13 - |
32 |
.../files/spidermonkey-1.7.0-ldflags.patch | 42 -- |
33 |
.../files/spidermonkey-1.7.0-threadsafe.diff | 18 - |
34 |
.../spidermonkey-1.8.5-arm_respect_cflags-3.patch | 99 ---- |
35 |
.../spidermonkey-1.8.5-fix-install-symlinks.patch | 15 - |
36 |
.../files/spidermonkey-1.8.5-fix-ppc64.patch | 61 --- |
37 |
.../files/spidermonkey-1.8.5-gcc6.patch | 144 ----- |
38 |
.../files/spidermonkey-1.8.5-ia64-fix.patch | 53 -- |
39 |
.../spidermonkey-1.8.5-ia64-static-strings.patch | 381 ------------- |
40 |
.../files/spidermonkey-1.8.5-isfinite.patch | 11 - |
41 |
.../spidermonkey-1.8.5-perf_event-check.patch | 21 - |
42 |
.../files/spidermonkey-1.8.5-symbol-versions.patch | 32 -- |
43 |
.../spidermonkey-1.8.7-freebsd-pthreads.patch | 11 - |
44 |
.../files/spidermonkey-1.8.7-x32.patch | 25 - |
45 |
.../spidermonkey/files/spidermonkey-17-clang.patch | 18 - |
46 |
.../spidermonkey-17-fix_pointer_dereference.patch | 30 - |
47 |
.../files/spidermonkey-17-ia64-mmap.patch | 67 --- |
48 |
.../files/spidermonkey-17-js-config-shebang.patch | 22 - |
49 |
.../spidermonkey-17.0.0-fix-file-permissions.patch | 37 -- |
50 |
.../files/spidermonkey-24-system-icu.patch | 199 ------- |
51 |
.../spidermonkey-24-upward-growing-stack.patch | 41 -- |
52 |
.../spidermonkey-24.2.0-fix-file-permissions.patch | 29 - |
53 |
.../files/spidermonkey-38-jsapi-tests.patch | 16 - |
54 |
...spidermonkey-45-dont-symlink-non-objfiles.patch | 21 - |
55 |
dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild | 14 +- |
56 |
dev-lang/spidermonkey/spidermonkey-1.8.5-r4.ebuild | 23 +- |
57 |
dev-lang/spidermonkey/spidermonkey-1.8.5-r5.ebuild | 146 ----- |
58 |
dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild | 26 +- |
59 |
.../spidermonkey/spidermonkey-17.0.0-r4.ebuild | 11 +- |
60 |
.../spidermonkey/spidermonkey-17.0.0-r5.ebuild | 13 +- |
61 |
.../spidermonkey/spidermonkey-24.2.0-r3.ebuild | 11 +- |
62 |
.../spidermonkey/spidermonkey-24.2.0-r4.ebuild | 11 +- |
63 |
.../spidermonkey/spidermonkey-38.2.1_rc0.ebuild | 15 +- |
64 |
dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild | 15 +- |
65 |
49 files changed, 80 insertions(+), 2983 deletions(-) |
66 |
|
67 |
diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest |
68 |
index 312f1709f4d..a8bbf9425ed 100644 |
69 |
--- a/dev-lang/spidermonkey/Manifest |
70 |
+++ b/dev-lang/spidermonkey/Manifest |
71 |
@@ -6,3 +6,8 @@ DIST mozjs-45.0.2.tar.bz2 97508152 SHA256 570530b1e551bf4a459d7cae875f33f99d5ef0 |
72 |
DIST mozjs-52.2.0_pre20170719.tar.bz2 30630133 SHA256 2bab92b432ecbe665616440594463abfb21ce3aff573f360f19ef0cce8ce4c77 SHA512 9657006e071bdf0b6006ab806949eb8371f4d749989d95a3a46da0baedfe669727ccd6430c2022a4ec5ce2bb9cd9a231aba85605de1319a5c678633f0001a78c WHIRLPOOL 14db035ad690b416b793df34a065ddf5096e43346f5a0462cf79605f1745fa18f7f578ae46b0eadeeef3fb7369e76f812c4cdfe227b1442d277fd80625998c52 |
73 |
DIST mozjs17.0.0.tar.gz 6778934 SHA256 321e964fe9386785d3bf80870640f2fa1c683e32fe988eeb201b04471c172fba SHA512 39b68aeb9f712f146778d8b68ee795709a1372c8ab893a222af4eb34882427d6f5cf877e743d6cb2f1b4348c194d8f3774f00cb775b03515b34b49560b748be4 WHIRLPOOL 4df7b51577787194065162b09d2c3dda849c13fa901305f9925d4ca5d38bb7f8e2daa943099e003fb9d11f9264ae2d77ccf04e5eea11e3ddcb624b504b99d52f |
74 |
DIST spidermonkey-52.0-patches-0.tar.xz 5172 SHA256 20165c0fbf5d441cea6217a7a6dca8b8623b5dbba2496eb769aaef3ca93647bf SHA512 88ad640fb0efa4972f1b7782bd0abee1751b73914ee51faade93b25c4d8eec64e7693898842a406c49fc2ab43733404efeccb138afb64d2193b9a5eb612578e3 WHIRLPOOL bd9f264d54bfd14ad9f339229a29a66f873d2ae66fbbc55edd4ae80135f08c6cd4a5e9c5ab65254749ecbafb7c8fdaa5c5936275e263e53ce47ab606d143114c |
75 |
+DIST spidermonkey-slot0-patches-01.tar.xz 10488 SHA256 7f0bf9921b9320046b9f06afaa1e0764aead72770ef0a3c29f4967aa20f9f7f9 SHA512 6c878ed0b50c052989a8b965fed845e9c672b691f4c4b1f98ee82e81a33880e1e6bf1dac8222d71322553282de602a88272dedebbcf50d27967fc172f0a8054a WHIRLPOOL 6a35cd027af0b7e730f8e563b9a2048bc8c7b8447889ae4b0cb719a12d48917c34b6e694c84e0e0c23a45b5f5d016580ceb97ac58527f705ffe2a59d56f15869 |
76 |
+DIST spidermonkey-slot17-patches-01.tar.xz 2748 SHA256 366ff6db042face813c7e2145184e750d7f8ec44c0e8725c0b53d6be0cc33e2b SHA512 21a90f85d156de3cca9811317507162a458f908bb447924fcfbf49b7bb70496b611ce7df90b90775316b8ceafda56692be3bf856b168b83ed40b8a5c668eed3f WHIRLPOOL bee9e8b46200a2f8b41d5fa208a18471758c7bc1c08c9621a46e54846f49fecb37325a8ada9c438119e4772554078870a5e3d4d76d9d6e13e2d13c287ed0834a |
77 |
+DIST spidermonkey-slot24-patches-01.tar.xz 3444 SHA256 6a16001d665443c5e40c3237f6adc16589b26993e9d3c87577e6feabae42f7e0 SHA512 712250983f726eb2fe7ae243e9ca510b6e5b8fa0f221fe5120c2e2f75334f7e4b10b8ab172869d7333a120529dbc2a513c170533d5ad5af27a2643ce1384bbdb WHIRLPOOL ec895aabb0486b9eea41bbc005af552cadb587450af72de79a7d4a20f9258b589c63cf1f8b3afbba8244fe8b748937ebcbf572f1655a57e68c0d2b482cddd153 |
78 |
+DIST spidermonkey-slot38-patches-01.tar.xz 7472 SHA256 ff4b66116b18b376630efa0ced0c0ce8c3a636c43b75e34e904c87f8d4cd4f6a SHA512 953acee985d192c6d0f18f14c70fdda33a7c8f784c6833ca8b75495044b40a8b3f29b281c40dbfcda0c8570c111a3dd1717c2ef0ffd651c1b50d1f2bff1f6d09 WHIRLPOOL b41f21c2b7434332c8bff351af7e030a94db7044995f88df74d7efcf2d196f5ddba6293230b42f528ca22ea2d7fdd58d0da935bb90b155f7c83fc5b3f9645ef5 |
79 |
+DIST spidermonkey-slot45-patches-01.tar.xz 5092 SHA256 713e03f4c95908d93003fa1ca776823cccaf8fdc27db09ea59176edc318504dc SHA512 d52f038a7b4f7b410b5a1f94a55962adafc5906e7d85f605f3fe45ad49417c2b9d58d853a81b5d2395a2842c9780992d5a2c1a0e67aa77fb09f21aff9aeb0f7a WHIRLPOOL 9e4119af5a09f155a8f8781448364a9262ab2fb8d085a7235498f555ffa64eb054706ada3548ac40f76e686ed80e2777d39c565a631bf58b0c2e45f6195ce47b |
80 |
|
81 |
diff --git a/dev-lang/spidermonkey/files/ff45/7000_drop-Wl-build-id_v4.patch b/dev-lang/spidermonkey/files/ff45/7000_drop-Wl-build-id_v4.patch |
82 |
deleted file mode 100644 |
83 |
index 8a1e1dd9988..00000000000 |
84 |
--- a/dev-lang/spidermonkey/files/ff45/7000_drop-Wl-build-id_v4.patch |
85 |
+++ /dev/null |
86 |
@@ -1,17 +0,0 @@ |
87 |
---- a/js/src/configure.in 2014-06-05 21:15:27.000000000 -0400 |
88 |
-+++ b/js/src/configure.in 2014-06-13 11:01:51.130703283 -0400 |
89 |
-@@ -1156,14 +1156,6 @@ |
90 |
- AC_MSG_RESULT([no]) |
91 |
- LDFLAGS=$_SAVE_LDFLAGS) |
92 |
- |
93 |
-- AC_MSG_CHECKING([for --build-id option to ld]) |
94 |
-- _SAVE_LDFLAGS=$LDFLAGS |
95 |
-- LDFLAGS="$LDFLAGS -Wl,--build-id" |
96 |
-- AC_TRY_LINK(,,AC_MSG_RESULT([yes]) |
97 |
-- [NSPR_LDFLAGS="$NSPR_LDFLAGS -Wl,--build-id"], |
98 |
-- AC_MSG_RESULT([no]) |
99 |
-- LDFLAGS=$_SAVE_LDFLAGS) |
100 |
-- |
101 |
- # Turn on gcc/clang warnings: |
102 |
- # https://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/Warning-Options.html |
103 |
- # |
104 |
|
105 |
diff --git a/dev-lang/spidermonkey/files/ff45/7003_freebsd_jscpucfg.patch b/dev-lang/spidermonkey/files/ff45/7003_freebsd_jscpucfg.patch |
106 |
deleted file mode 100644 |
107 |
index 467bf444144..00000000000 |
108 |
--- a/dev-lang/spidermonkey/files/ff45/7003_freebsd_jscpucfg.patch |
109 |
+++ /dev/null |
110 |
@@ -1,22 +0,0 @@ |
111 |
---- a/js/src/jscpucfg.h 2012-01-18 17:38:54.409461514 +0100 |
112 |
-+++ b/js/src/jscpucfg.h 2012-01-18 17:38:59.522462164 +0100 |
113 |
-@@ -77,6 +77,19 @@ |
114 |
- #define IS_BIG_ENDIAN 1 |
115 |
- #endif |
116 |
- |
117 |
-+#elif defined(__FreeBSD__) |
118 |
-+#include <sys/endian.h> |
119 |
-+ |
120 |
-+#if defined(BYTE_ORDER) |
121 |
-+#if BYTE_ORDER == LITTLE_ENDIAN |
122 |
-+#define IS_LITTLE_ENDIAN 1 |
123 |
-+#undef IS_BIG_ENDIAN |
124 |
-+#elif BYTE_ORDER == BIG_ENDIAN |
125 |
-+#undef IS_LITTLE_ENDIAN |
126 |
-+#define IS_BIG_ENDIAN 1 |
127 |
-+#endif |
128 |
-+#endif |
129 |
-+ |
130 |
- #elif defined(JS_HAVE_ENDIAN_H) |
131 |
- #include <endian.h> |
132 |
- |
133 |
|
134 |
diff --git a/dev-lang/spidermonkey/files/ff45/8001_hppa_js_configure.patch b/dev-lang/spidermonkey/files/ff45/8001_hppa_js_configure.patch |
135 |
deleted file mode 100644 |
136 |
index a33ab3cd614..00000000000 |
137 |
--- a/dev-lang/spidermonkey/files/ff45/8001_hppa_js_configure.patch |
138 |
+++ /dev/null |
139 |
@@ -1,21 +0,0 @@ |
140 |
---- a/js/src/configure.in |
141 |
-+++ b/js/src/configure.in |
142 |
-@@ -958,7 +958,7 @@ |
143 |
- CPU_ARCH=s390x |
144 |
- ;; |
145 |
- |
146 |
--hppa* | parisc) |
147 |
-+hppa* | parisc*) |
148 |
- CPU_ARCH=hppa |
149 |
- ;; |
150 |
- |
151 |
-@@ -2009,6 +2009,9 @@ |
152 |
- AC_DEFINE(JS_CPU_MIPS) |
153 |
- AC_DEFINE(JS_NUNBOX32) |
154 |
- ;; |
155 |
-+hppa*) |
156 |
-+ AC_DEFINE(JS_NUNBOX32) |
157 |
-+ ;; |
158 |
- esac |
159 |
- |
160 |
- MOZ_ARG_DISABLE_BOOL(ion, |
161 |
|
162 |
diff --git a/dev-lang/spidermonkey/files/ff45/8007_nonejit_ppc64_fix_bug1253216.patch b/dev-lang/spidermonkey/files/ff45/8007_nonejit_ppc64_fix_bug1253216.patch |
163 |
deleted file mode 100644 |
164 |
index 26e9373dddf..00000000000 |
165 |
--- a/dev-lang/spidermonkey/files/ff45/8007_nonejit_ppc64_fix_bug1253216.patch |
166 |
+++ /dev/null |
167 |
@@ -1,46 +0,0 @@ |
168 |
- |
169 |
-# HG changeset patch |
170 |
-# User Lars T Hansen <lhansen@×××××××.com> |
171 |
-# Date 1457091735 -3600 |
172 |
-# Node ID 69f237c2cf9131e97372debee01931dbacd064e5 |
173 |
-# Parent 3aa4483740828617001060fe7386051020521e90 |
174 |
-Bug 1253216 - clean up the atomic ops ifdef nest. r=jorendorff |
175 |
- |
176 |
-diff --git a/js/src/jit/AtomicOperations.h b/js/src/jit/AtomicOperations.h |
177 |
---- a/js/src/jit/AtomicOperations.h |
178 |
-+++ b/js/src/jit/AtomicOperations.h |
179 |
-@@ -318,21 +318,29 @@ AtomicOperations::isLockfree(int32_t siz |
180 |
- } // namespace js |
181 |
- |
182 |
- #if defined(JS_CODEGEN_ARM) |
183 |
- # include "jit/arm/AtomicOperations-arm.h" |
184 |
- #elif defined(JS_CODEGEN_ARM64) |
185 |
- # include "jit/arm64/AtomicOperations-arm64.h" |
186 |
- #elif defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_MIPS64) |
187 |
- # include "jit/mips-shared/AtomicOperations-mips-shared.h" |
188 |
--#elif defined(__ppc64__) || defined(__PPC64_) \ |
189 |
-- || defined(__ppc64le__) || defined(__PPC64LE__) \ |
190 |
-- || defined(__ppc__) || defined(__PPC__) |
191 |
-+#elif defined(__ppc__) || defined(__PPC__) |
192 |
- # include "jit/none/AtomicOperations-ppc.h" |
193 |
- #elif defined(JS_CODEGEN_NONE) |
194 |
--# include "jit/none/AtomicOperations-none.h" |
195 |
-+ // You can disable the JIT with --disable-ion but you must still |
196 |
-+ // provide the atomic operations that will be used by the JS engine. |
197 |
-+ // When the JIT is disabled the operations are simply safe-for-races |
198 |
-+ // C++ realizations of atomics. These operations cannot be written |
199 |
-+ // in portable C++, hence the default here is to crash. See the |
200 |
-+ // top of the file for more guidance. |
201 |
-+# if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || defined(__PPC64LE__) |
202 |
-+# include "jit/none/AtomicOperations-ppc.h" |
203 |
-+# else |
204 |
-+# include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always |
205 |
-+# endif |
206 |
- #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) |
207 |
- # include "jit/x86-shared/AtomicOperations-x86-shared.h" |
208 |
- #else |
209 |
- # error "Atomic operations must be defined for this platform" |
210 |
- #endif |
211 |
- |
212 |
- #endif // jit_AtomicOperations_h |
213 |
- |
214 |
|
215 |
diff --git a/dev-lang/spidermonkey/files/ff45/8008_nonejit_x86_fix_based_on_bug1253216.patch b/dev-lang/spidermonkey/files/ff45/8008_nonejit_x86_fix_based_on_bug1253216.patch |
216 |
deleted file mode 100644 |
217 |
index 86b27130205..00000000000 |
218 |
--- a/dev-lang/spidermonkey/files/ff45/8008_nonejit_x86_fix_based_on_bug1253216.patch |
219 |
+++ /dev/null |
220 |
@@ -1,11 +0,0 @@ |
221 |
---- a/js/src/jit/AtomicOperations.h 2016-03-12 13:42:27.914524205 -0500 |
222 |
-+++ b/js/src/jit/AtomicOperations.h 2016-03-12 13:42:15.644573630 -0500 |
223 |
-@@ -311,6 +311,8 @@ |
224 |
- // top of the file for more guidance. |
225 |
- # if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || defined(__PPC64LE__) |
226 |
- # include "jit/none/AtomicOperations-ppc.h" |
227 |
-+# elif defined(__i386__) || defined(__x86_64__) |
228 |
-+# include "jit/x86-shared/AtomicOperations-x86-shared.h" |
229 |
- # else |
230 |
- # include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always |
231 |
- # endif |
232 |
|
233 |
diff --git a/dev-lang/spidermonkey/files/ff45/8014_ia64_js.patch b/dev-lang/spidermonkey/files/ff45/8014_ia64_js.patch |
234 |
deleted file mode 100644 |
235 |
index 73075919a86..00000000000 |
236 |
--- a/dev-lang/spidermonkey/files/ff45/8014_ia64_js.patch |
237 |
+++ /dev/null |
238 |
@@ -1,248 +0,0 @@ |
239 |
---- a/js/src/jit/AtomicOperations.h 2016-11-08 21:27:30.000000000 +0100 |
240 |
-+++ b/js/src/jit/AtomicOperations.h 2016-11-08 22:17:59.280251831 +0100 |
241 |
-@@ -311,6 +311,8 @@ |
242 |
- // top of the file for more guidance. |
243 |
- # if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || defined(__PPC64LE__) |
244 |
- # include "jit/none/AtomicOperations-ppc.h" |
245 |
-+# elif defined(__ia64__) |
246 |
-+# include "jit/none/AtomicOperations-ia64.h" |
247 |
- # elif defined(__i386__) || defined(__x86_64__) |
248 |
- # include "jit/x86-shared/AtomicOperations-x86-shared.h" |
249 |
- # else |
250 |
---- /dev/null |
251 |
-+++ b/js/src/jit/none/AtomicOperations-ia64.h 2016-11-08 22:09:41.378809457 +0100 |
252 |
-@@ -0,0 +1,234 @@ |
253 |
-+/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- |
254 |
-+ * vim: set ts=8 sts=4 et sw=4 tw=99: |
255 |
-+ * This Source Code Form is subject to the terms of the Mozilla Public |
256 |
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this |
257 |
-+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
258 |
-+ |
259 |
-+/* For documentation, see jit/AtomicOperations.h */ |
260 |
-+ |
261 |
-+#ifndef jit_ia64_AtomicOperations_ia64_h |
262 |
-+#define jit_ia64_AtomicOperations_ia64_h |
263 |
-+ |
264 |
-+#include "mozilla/Assertions.h" |
265 |
-+#include "mozilla/Types.h" |
266 |
-+ |
267 |
-+#if defined(__GNUC__) |
268 |
-+ |
269 |
-+// The default implementation tactic for gcc is to use the newer |
270 |
-+// __atomic intrinsics added for use in C++11 <atomic>. Where that |
271 |
-+// isn't available, we use GCC's older __sync functions instead. |
272 |
-+// |
273 |
-+// ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS is kept as a backward |
274 |
-+// compatible option for older compilers: enable this to use GCC's old |
275 |
-+// __sync functions instead of the newer __atomic functions. This |
276 |
-+// will be required for GCC 4.6.x and earlier, should we need to use |
277 |
-+// those versions. |
278 |
-+ |
279 |
-+//#define ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
280 |
-+ |
281 |
-+inline bool |
282 |
-+js::jit::AtomicOperations::isLockfree8() |
283 |
-+{ |
284 |
-+# ifndef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
285 |
-+ MOZ_ASSERT(__atomic_always_lock_free(sizeof(int8_t), 0)); |
286 |
-+ MOZ_ASSERT(__atomic_always_lock_free(sizeof(int16_t), 0)); |
287 |
-+ MOZ_ASSERT(__atomic_always_lock_free(sizeof(int32_t), 0)); |
288 |
-+ MOZ_ASSERT(__atomic_always_lock_free(sizeof(int64_t), 0)); |
289 |
-+ return true; |
290 |
-+# else |
291 |
-+ return false; |
292 |
-+# endif |
293 |
-+} |
294 |
-+ |
295 |
-+inline void |
296 |
-+js::jit::AtomicOperations::fenceSeqCst() |
297 |
-+{ |
298 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
299 |
-+ __sync_synchronize(); |
300 |
-+# else |
301 |
-+ __atomic_thread_fence(__ATOMIC_SEQ_CST); |
302 |
-+# endif |
303 |
-+} |
304 |
-+ |
305 |
-+template<typename T> |
306 |
-+inline T |
307 |
-+js::jit::AtomicOperations::loadSeqCst(T* addr) |
308 |
-+{ |
309 |
-+ MOZ_ASSERT(sizeof(T) < 8 || isLockfree8()); |
310 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
311 |
-+ __sync_synchronize(); |
312 |
-+ T v = *addr; |
313 |
-+ __sync_synchronize(); |
314 |
-+# else |
315 |
-+ T v; |
316 |
-+ __atomic_load(addr, &v, __ATOMIC_SEQ_CST); |
317 |
-+# endif |
318 |
-+ return v; |
319 |
-+} |
320 |
-+ |
321 |
-+template<typename T> |
322 |
-+inline void |
323 |
-+js::jit::AtomicOperations::storeSeqCst(T* addr, T val) |
324 |
-+{ |
325 |
-+ MOZ_ASSERT(sizeof(T) < 8 || isLockfree8()); |
326 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
327 |
-+ __sync_synchronize(); |
328 |
-+ *addr = val; |
329 |
-+ __sync_synchronize(); |
330 |
-+# else |
331 |
-+ __atomic_store(addr, &val, __ATOMIC_SEQ_CST); |
332 |
-+# endif |
333 |
-+} |
334 |
-+ |
335 |
-+template<typename T> |
336 |
-+inline T |
337 |
-+js::jit::AtomicOperations::compareExchangeSeqCst(T* addr, T oldval, T newval) |
338 |
-+{ |
339 |
-+ MOZ_ASSERT(sizeof(T) < 8 || isLockfree8()); |
340 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
341 |
-+ return __sync_val_compare_and_swap(addr, oldval, newval); |
342 |
-+# else |
343 |
-+ __atomic_compare_exchange(addr, &oldval, &newval, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); |
344 |
-+ return oldval; |
345 |
-+# endif |
346 |
-+} |
347 |
-+ |
348 |
-+template<typename T> |
349 |
-+inline T |
350 |
-+js::jit::AtomicOperations::fetchAddSeqCst(T* addr, T val) |
351 |
-+{ |
352 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
353 |
-+ return __sync_fetch_and_add(addr, val); |
354 |
-+# else |
355 |
-+ return __atomic_fetch_add(addr, val, __ATOMIC_SEQ_CST); |
356 |
-+# endif |
357 |
-+} |
358 |
-+ |
359 |
-+template<typename T> |
360 |
-+inline T |
361 |
-+js::jit::AtomicOperations::fetchSubSeqCst(T* addr, T val) |
362 |
-+{ |
363 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
364 |
-+ return __sync_fetch_and_sub(addr, val); |
365 |
-+# else |
366 |
-+ return __atomic_fetch_sub(addr, val, __ATOMIC_SEQ_CST); |
367 |
-+# endif |
368 |
-+} |
369 |
-+ |
370 |
-+template<typename T> |
371 |
-+inline T |
372 |
-+js::jit::AtomicOperations::fetchAndSeqCst(T* addr, T val) |
373 |
-+{ |
374 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
375 |
-+ return __sync_fetch_and_and(addr, val); |
376 |
-+# else |
377 |
-+ return __atomic_fetch_and(addr, val, __ATOMIC_SEQ_CST); |
378 |
-+# endif |
379 |
-+} |
380 |
-+ |
381 |
-+template<typename T> |
382 |
-+inline T |
383 |
-+js::jit::AtomicOperations::fetchOrSeqCst(T* addr, T val) |
384 |
-+{ |
385 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
386 |
-+ return __sync_fetch_and_or(addr, val); |
387 |
-+# else |
388 |
-+ return __atomic_fetch_or(addr, val, __ATOMIC_SEQ_CST); |
389 |
-+# endif |
390 |
-+} |
391 |
-+ |
392 |
-+template<typename T> |
393 |
-+inline T |
394 |
-+js::jit::AtomicOperations::fetchXorSeqCst(T* addr, T val) |
395 |
-+{ |
396 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
397 |
-+ return __sync_fetch_and_xor(addr, val); |
398 |
-+# else |
399 |
-+ return __atomic_fetch_xor(addr, val, __ATOMIC_SEQ_CST); |
400 |
-+# endif |
401 |
-+} |
402 |
-+ |
403 |
-+template<typename T> |
404 |
-+inline T |
405 |
-+js::jit::AtomicOperations::exchangeSeqCst(T* addr, T val) |
406 |
-+{ |
407 |
-+ MOZ_ASSERT(sizeof(T) < 8 || isLockfree8()); |
408 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
409 |
-+ T v; |
410 |
-+ __sync_synchronize(); |
411 |
-+ do { |
412 |
-+ v = *addr; |
413 |
-+ } while (__sync_val_compare_and_swap(addr, v, val) != v); |
414 |
-+ return v; |
415 |
-+# else |
416 |
-+ T v; |
417 |
-+ __atomic_exchange(addr, &val, &v, __ATOMIC_SEQ_CST); |
418 |
-+ return v; |
419 |
-+# endif |
420 |
-+} |
421 |
-+ |
422 |
-+template<typename T> |
423 |
-+inline T |
424 |
-+js::jit::AtomicOperations::loadSafeWhenRacy(T* addr) |
425 |
-+{ |
426 |
-+ return *addr; // FIXME (1208663): not yet safe |
427 |
-+} |
428 |
-+ |
429 |
-+template<typename T> |
430 |
-+inline void |
431 |
-+js::jit::AtomicOperations::storeSafeWhenRacy(T* addr, T val) |
432 |
-+{ |
433 |
-+ *addr = val; // FIXME (1208663): not yet safe |
434 |
-+} |
435 |
-+ |
436 |
-+inline void |
437 |
-+js::jit::AtomicOperations::memcpySafeWhenRacy(void* dest, const void* src, size_t nbytes) |
438 |
-+{ |
439 |
-+ ::memcpy(dest, src, nbytes); // FIXME (1208663): not yet safe |
440 |
-+} |
441 |
-+ |
442 |
-+inline void |
443 |
-+js::jit::AtomicOperations::memmoveSafeWhenRacy(void* dest, const void* src, size_t nbytes) |
444 |
-+{ |
445 |
-+ ::memmove(dest, src, nbytes); // FIXME (1208663): not yet safe |
446 |
-+} |
447 |
-+ |
448 |
-+template<size_t nbytes> |
449 |
-+inline void |
450 |
-+js::jit::RegionLock::acquire(void* addr) |
451 |
-+{ |
452 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
453 |
-+ while (!__sync_bool_compare_and_swap(&spinlock, 0, 1)) |
454 |
-+ ; |
455 |
-+# else |
456 |
-+ uint32_t zero = 0; |
457 |
-+ uint32_t one = 1; |
458 |
-+ while (!__atomic_compare_exchange(&spinlock, &zero, &one, false, __ATOMIC_ACQUIRE, __ATOMIC_ACQUIRE)) { |
459 |
-+ zero = 0; |
460 |
-+ continue; |
461 |
-+ } |
462 |
-+# endif |
463 |
-+} |
464 |
-+ |
465 |
-+template<size_t nbytes> |
466 |
-+inline void |
467 |
-+js::jit::RegionLock::release(void* addr) |
468 |
-+{ |
469 |
-+ MOZ_ASSERT(AtomicOperations::loadSeqCst(&spinlock) == 1, "releasing unlocked region lock"); |
470 |
-+# ifdef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
471 |
-+ __sync_sub_and_fetch(&spinlock, 1); |
472 |
-+# else |
473 |
-+ uint32_t zero = 0; |
474 |
-+ __atomic_store(&spinlock, &zero, __ATOMIC_SEQ_CST); |
475 |
-+# endif |
476 |
-+} |
477 |
-+ |
478 |
-+# undef ATOMICS_IMPLEMENTED_WITH_SYNC_INTRINSICS |
479 |
-+ |
480 |
-+#elif defined(ENABLE_SHARED_ARRAY_BUFFER) |
481 |
-+ |
482 |
-+# error "Either disable JS shared memory, use GCC, or add code here" |
483 |
-+ |
484 |
-+#endif |
485 |
-+ |
486 |
-+#endif // jit_ia64_AtomicOperations_ia64_h |
487 |
|
488 |
diff --git a/dev-lang/spidermonkey/files/mozilla_configure_regexp_esr.patch b/dev-lang/spidermonkey/files/mozilla_configure_regexp_esr.patch |
489 |
deleted file mode 100644 |
490 |
index 9e165ff9e88..00000000000 |
491 |
--- a/dev-lang/spidermonkey/files/mozilla_configure_regexp_esr.patch |
492 |
+++ /dev/null |
493 |
@@ -1,32 +0,0 @@ |
494 |
-From: Jory A. Pratt <anarchy@g.o> |
495 |
- |
496 |
-Note: the first occurrence of :space: is [:space:] (with a single pair |
497 |
-of []), where it should be [[:space:]] (with two pairs of []). |
498 |
- |
499 |
-This causes the sed command to fail (with the error message quoted in |
500 |
-my original report), driving to failure the whole configure step. |
501 |
- |
502 |
-https://bugzilla.mozilla.org/show_bug.cgi?id=1329252 |
503 |
- |
504 |
-diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4 |
505 |
---- a/build/autoconf/icu.m4 |
506 |
-+++ b/build/autoconf/icu.m4 |
507 |
-@@ -68,17 +68,17 @@ if test -n "$USE_ICU"; then |
508 |
- icudir="$_topsrcdir/intl/icu/source" |
509 |
- if test ! -d "$icudir"; then |
510 |
- icudir="$_topsrcdir/../../intl/icu/source" |
511 |
- if test ! -d "$icudir"; then |
512 |
- AC_MSG_ERROR([Cannot find the ICU directory]) |
513 |
- fi |
514 |
- fi |
515 |
- |
516 |
-- version=`sed -n 's/^[[:space:]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"` |
517 |
-+ version=`sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"` |
518 |
- if test x"$version" = x; then |
519 |
- AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno]) |
520 |
- fi |
521 |
- MOZ_ICU_VERSION="$version" |
522 |
- |
523 |
- if test "$OS_TARGET" = WINNT; then |
524 |
- MOZ_SHARED_ICU=1 |
525 |
- fi |
526 |
|
527 |
diff --git a/dev-lang/spidermonkey/files/mozilla_configure_regexp_esr38.patch b/dev-lang/spidermonkey/files/mozilla_configure_regexp_esr38.patch |
528 |
deleted file mode 100644 |
529 |
index 488b02f1281..00000000000 |
530 |
--- a/dev-lang/spidermonkey/files/mozilla_configure_regexp_esr38.patch |
531 |
+++ /dev/null |
532 |
@@ -1,32 +0,0 @@ |
533 |
-From: Jory A. Pratt <anarchy@g.o> |
534 |
- |
535 |
-Note: the first occurrence of :space: is [:space:] (with a single pair |
536 |
-of []), where it should be [[:space:]] (with two pairs of []). |
537 |
- |
538 |
-This causes the sed command to fail (with the error message quoted in |
539 |
-my original report), driving to failure the whole configure step. |
540 |
- |
541 |
-https://bugzilla.mozilla.org/show_bug.cgi?id=1329252 |
542 |
- |
543 |
-diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4 |
544 |
---- a/build/autoconf/icu.m4 |
545 |
-+++ b/build/autoconf/icu.m4 |
546 |
-@@ -68,17 +68,17 @@ |
547 |
- icudir="$_topsrcdir/intl/icu/source" |
548 |
- if test ! -d "$icudir"; then |
549 |
- icudir="$_topsrcdir/../../intl/icu/source" |
550 |
- if test ! -d "$icudir"; then |
551 |
- AC_MSG_ERROR([Cannot find the ICU directory]) |
552 |
- fi |
553 |
- fi |
554 |
- |
555 |
-- version=`sed -n 's/^[[:space:]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"` |
556 |
-+ version=`sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"` |
557 |
- if test x"$version" = x; then |
558 |
- AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno]) |
559 |
- fi |
560 |
- MOZ_ICU_VERSION="$version" |
561 |
- |
562 |
- if test -z "${JS_STANDALONE}" -a -n "${JS_SHARED_LIBRARY}${MOZ_NATIVE_ICU}"; then |
563 |
- MOZ_SHARED_ICU=1 |
564 |
- fi |
565 |
|
566 |
diff --git a/dev-lang/spidermonkey/files/mozjs38-1269317.patch b/dev-lang/spidermonkey/files/mozjs38-1269317.patch |
567 |
deleted file mode 100644 |
568 |
index 39cc6809af5..00000000000 |
569 |
--- a/dev-lang/spidermonkey/files/mozjs38-1269317.patch |
570 |
+++ /dev/null |
571 |
@@ -1,124 +0,0 @@ |
572 |
-from https://github.com/GNOME/jhbuild/blob/master/patches/mozjs38-1269317.patch |
573 |
- |
574 |
---- a/js/src/jit/RegisterSets.h 2017-02-10 17:33:06.210702431 -0800 |
575 |
-+++ b/js/src/jit/RegisterSets.h 2017-02-10 17:43:52.877514146 -0800 |
576 |
-@@ -7,7 +7,6 @@ |
577 |
- #ifndef jit_RegisterSets_h |
578 |
- #define jit_RegisterSets_h |
579 |
- |
580 |
--#include "mozilla/Alignment.h" |
581 |
- #include "mozilla/MathAlgorithms.h" |
582 |
- |
583 |
- #include "jit/JitAllocPolicy.h" |
584 |
-@@ -26,8 +25,8 @@ |
585 |
- Code code_; |
586 |
- |
587 |
- public: |
588 |
-- AnyRegister() |
589 |
-- { } |
590 |
-+ AnyRegister() = default; |
591 |
-+ |
592 |
- explicit AnyRegister(Register gpr) { |
593 |
- code_ = gpr.code(); |
594 |
- } |
595 |
-@@ -156,7 +155,7 @@ |
596 |
- } |
597 |
- #endif |
598 |
- |
599 |
-- ValueOperand() {} |
600 |
-+ ValueOperand() = default; |
601 |
- }; |
602 |
- |
603 |
- // Registers to hold either either a typed or untyped value. |
604 |
-@@ -165,46 +164,25 @@ |
605 |
- // Type of value being stored. |
606 |
- MIRType type_; |
607 |
- |
608 |
-- // Space to hold either an AnyRegister or a ValueOperand. |
609 |
- union U { |
610 |
-- mozilla::AlignedStorage2<AnyRegister> typed; |
611 |
-- mozilla::AlignedStorage2<ValueOperand> value; |
612 |
-+ AnyRegister typed; |
613 |
-+ ValueOperand value; |
614 |
- } data; |
615 |
- |
616 |
-- AnyRegister& dataTyped() { |
617 |
-- MOZ_ASSERT(hasTyped()); |
618 |
-- return *data.typed.addr(); |
619 |
-- } |
620 |
-- ValueOperand& dataValue() { |
621 |
-- MOZ_ASSERT(hasValue()); |
622 |
-- return *data.value.addr(); |
623 |
-- } |
624 |
-- |
625 |
-- AnyRegister dataTyped() const { |
626 |
-- MOZ_ASSERT(hasTyped()); |
627 |
-- return *data.typed.addr(); |
628 |
-- } |
629 |
-- const ValueOperand& dataValue() const { |
630 |
-- MOZ_ASSERT(hasValue()); |
631 |
-- return *data.value.addr(); |
632 |
-- } |
633 |
-- |
634 |
- public: |
635 |
- |
636 |
-- TypedOrValueRegister() |
637 |
-- : type_(MIRType_None) |
638 |
-- {} |
639 |
-+ TypedOrValueRegister() = default; |
640 |
- |
641 |
- TypedOrValueRegister(MIRType type, AnyRegister reg) |
642 |
- : type_(type) |
643 |
- { |
644 |
-- dataTyped() = reg; |
645 |
-+ data.typed = reg; |
646 |
- } |
647 |
- |
648 |
- MOZ_IMPLICIT TypedOrValueRegister(ValueOperand value) |
649 |
- : type_(MIRType_Value) |
650 |
- { |
651 |
-- dataValue() = value; |
652 |
-+ data.value = value; |
653 |
- } |
654 |
- |
655 |
- MIRType type() const { |
656 |
-@@ -220,11 +198,13 @@ |
657 |
- } |
658 |
- |
659 |
- AnyRegister typedReg() const { |
660 |
-- return dataTyped(); |
661 |
-+ MOZ_ASSERT(hasTyped()); |
662 |
-+ return data.typed; |
663 |
- } |
664 |
- |
665 |
- ValueOperand valueReg() const { |
666 |
-- return dataValue(); |
667 |
-+ MOZ_ASSERT(hasValue()); |
668 |
-+ return data.value; |
669 |
- } |
670 |
- |
671 |
- AnyRegister scratchReg() { |
672 |
-@@ -240,19 +220,18 @@ |
673 |
- // Whether a constant value is being stored. |
674 |
- bool constant_; |
675 |
- |
676 |
-- // Space to hold either a Value or a TypedOrValueRegister. |
677 |
- union U { |
678 |
-- mozilla::AlignedStorage2<Value> constant; |
679 |
-- mozilla::AlignedStorage2<TypedOrValueRegister> reg; |
680 |
-+ Value constant; |
681 |
-+ TypedOrValueRegister reg; |
682 |
- } data; |
683 |
- |
684 |
- Value& dataValue() { |
685 |
- MOZ_ASSERT(constant()); |
686 |
-- return *data.constant.addr(); |
687 |
-+ return data.constant; |
688 |
- } |
689 |
- TypedOrValueRegister& dataReg() { |
690 |
- MOZ_ASSERT(!constant()); |
691 |
-- return *data.reg.addr(); |
692 |
-+ return data.reg; |
693 |
- } |
694 |
- |
695 |
- public: |
696 |
|
697 |
diff --git a/dev-lang/spidermonkey/files/mozjs38-copy-headers.patch b/dev-lang/spidermonkey/files/mozjs38-copy-headers.patch |
698 |
deleted file mode 100644 |
699 |
index 7f352a795c8..00000000000 |
700 |
--- a/dev-lang/spidermonkey/files/mozjs38-copy-headers.patch |
701 |
+++ /dev/null |
702 |
@@ -1,20 +0,0 @@ |
703 |
-Description: Copy headers on install instead of symlinking |
704 |
-Author: Rico Tzschichholz <ricotz@××××××.com> |
705 |
-Forwarded: no |
706 |
-Last-Update: 2014-10-29 |
707 |
- |
708 |
---- |
709 |
- |
710 |
-Index: b/python/mozbuild/mozbuild/backend/recursivemake.py |
711 |
-=================================================================== |
712 |
---- a/python/mozbuild/mozbuild/backend/recursivemake.py |
713 |
-+++ b/python/mozbuild/mozbuild/backend/recursivemake.py |
714 |
-@@ -796,7 +796,7 @@ |
715 |
- return |
716 |
- |
717 |
- for source, dest, _ in self._walk_hierarchy(obj, exports): |
718 |
-- self._install_manifests['dist_include'].add_symlink(source, dest) |
719 |
-+ self._install_manifests['dist_include'].add_copy(source, dest) |
720 |
- |
721 |
- if not os.path.exists(source): |
722 |
- raise Exception('File listed in EXPORTS does not exist: %s' % source) |
723 |
|
724 |
diff --git a/dev-lang/spidermonkey/files/mozjs38-fix-tracelogger.patch b/dev-lang/spidermonkey/files/mozjs38-fix-tracelogger.patch |
725 |
deleted file mode 100644 |
726 |
index 2197f617a04..00000000000 |
727 |
--- a/dev-lang/spidermonkey/files/mozjs38-fix-tracelogger.patch |
728 |
+++ /dev/null |
729 |
@@ -1,605 +0,0 @@ |
730 |
-from https://github.com/GNOME/jhbuild/blob/master/patches/mozjs38-fix-tracelogger.patch |
731 |
- |
732 |
-# === Fix the SM38 tracelogger === |
733 |
-# This patch is a squashed version of several patches that were adapted |
734 |
-# to fix failing hunks. |
735 |
-# |
736 |
-# Applied in the following order, they are: |
737 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1223767 |
738 |
-# Assertion failure: i < size_, at js/src/vm/TraceLoggingTypes.h:210 |
739 |
-# Also fix stop-information to make reduce.py work correctly. |
740 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1227914 |
741 |
-# Limit the memory tracelogger can take. |
742 |
-# This causes tracelogger to flush data to the disk regularly and prevents out of |
743 |
-# memory issues if a lot of data gets logged. |
744 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1155618 |
745 |
-# Fix tracelogger destructor that touches possibly uninitialised hash table. |
746 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1223636 |
747 |
-# Don't treat extraTextId as containing only extra ids. |
748 |
-# This fixes an assertion failure: id == nextTextId at js/src/vm/TraceLoggingGraph.cpp |
749 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1227028 |
750 |
-# Fix when to keep the payload of a TraceLogger event. |
751 |
-# This fixes an assertion failure: textId < uint32_t(1 << 31) at js/src/vm/TraceLoggingGraph.h |
752 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1266649 |
753 |
-# Handle failing to add to pointermap gracefully. |
754 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1280648 |
755 |
-# Don't cache based on pointers to movable GC things. |
756 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1224123 |
757 |
-# Fix the use of LastEntryId in tracelogger.h. |
758 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1231170 |
759 |
-# Use size in debugger instead of the current id to track last logged item. |
760 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1221844 |
761 |
-# Move TraceLogger_Invalidation to LOG_ITEM. |
762 |
-# Add some debug checks to logTimestamp. |
763 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1255766 |
764 |
-# Also mark resizing of memory. |
765 |
-# * https://bugzilla.mozilla.org/show_bug.cgi?id=1259403 |
766 |
-# Only increase capacity by multiples of 2. |
767 |
-# Always make sure there are 3 free slots for events. |
768 |
-# === |
769 |
- |
770 |
-diff --git a/js/src/jit-test/tests/tracelogger/bug1231170.js b/js/src/jit-test/tests/tracelogger/bug1231170.js |
771 |
-new file mode 100644 |
772 |
-index 0000000..023e93e |
773 |
---- /dev/null |
774 |
-+++ b/js/src/jit-test/tests/tracelogger/bug1231170.js |
775 |
-@@ -0,0 +1,3 @@ |
776 |
-+var du = new Debugger(); |
777 |
-+if (typeof du.drainTraceLogger === "function") |
778 |
-+ du.drainTraceLogger(); |
779 |
-diff --git a/js/src/jit-test/tests/tracelogger/bug1266649.js b/js/src/jit-test/tests/tracelogger/bug1266649.js |
780 |
-new file mode 100644 |
781 |
-index 0000000..81ae7ad |
782 |
---- /dev/null |
783 |
-+++ b/js/src/jit-test/tests/tracelogger/bug1266649.js |
784 |
-@@ -0,0 +1,10 @@ |
785 |
-+ |
786 |
-+var du = new Debugger(); |
787 |
-+if (typeof du.setupTraceLogger === "function" && |
788 |
-+ typeof oomTest === 'function') |
789 |
-+{ |
790 |
-+ du.setupTraceLogger({ |
791 |
-+ Scripts: true |
792 |
-+ }) |
793 |
-+ oomTest(() => function(){}); |
794 |
-+} |
795 |
-diff --git a/js/src/jit/Ion.cpp b/js/src/jit/Ion.cpp |
796 |
-index 93e2fda..09049d6 100644 |
797 |
---- a/js/src/jit/Ion.cpp |
798 |
-+++ b/js/src/jit/Ion.cpp |
799 |
-@@ -1055,6 +1055,8 @@ IonScript::Destroy(FreeOp* fop, IonScript* script) |
800 |
- |
801 |
- script->destroyCaches(); |
802 |
- script->unlinkFromRuntime(fop); |
803 |
-+ // Frees the potential event we have set. |
804 |
-+ script->traceLoggerScriptEvent_ = TraceLoggerEvent(); |
805 |
- fop->free_(script); |
806 |
- } |
807 |
- |
808 |
-diff --git a/js/src/vm/Debugger.cpp b/js/src/vm/Debugger.cpp |
809 |
-index 26262fd..af7f313 100644 |
810 |
---- a/js/src/vm/Debugger.cpp |
811 |
-+++ b/js/src/vm/Debugger.cpp |
812 |
-@@ -369,10 +369,10 @@ Debugger::Debugger(JSContext* cx, NativeObject* dbg) |
813 |
- objects(cx), |
814 |
- environments(cx), |
815 |
- #ifdef NIGHTLY_BUILD |
816 |
-- traceLoggerLastDrainedId(0), |
817 |
-+ traceLoggerLastDrainedSize(0), |
818 |
- traceLoggerLastDrainedIteration(0), |
819 |
- #endif |
820 |
-- traceLoggerScriptedCallsLastDrainedId(0), |
821 |
-+ traceLoggerScriptedCallsLastDrainedSize(0), |
822 |
- traceLoggerScriptedCallsLastDrainedIteration(0) |
823 |
- { |
824 |
- assertSameCompartment(cx, dbg); |
825 |
-@@ -3907,9 +3907,9 @@ Debugger::drainTraceLogger(JSContext* cx, unsigned argc, Value* vp) |
826 |
- size_t num; |
827 |
- TraceLoggerThread* logger = TraceLoggerForMainThread(cx->runtime()); |
828 |
- bool lostEvents = logger->lostEvents(dbg->traceLoggerLastDrainedIteration, |
829 |
-- dbg->traceLoggerLastDrainedId); |
830 |
-+ dbg->traceLoggerLastDrainedSize); |
831 |
- EventEntry* events = logger->getEventsStartingAt(&dbg->traceLoggerLastDrainedIteration, |
832 |
-- &dbg->traceLoggerLastDrainedId, |
833 |
-+ &dbg->traceLoggerLastDrainedSize, |
834 |
- &num); |
835 |
- |
836 |
- RootedObject array(cx, NewDenseEmptyArray(cx)); |
837 |
-@@ -4002,10 +4002,10 @@ Debugger::drainTraceLoggerScriptCalls(JSContext* cx, unsigned argc, Value* vp) |
838 |
- size_t num; |
839 |
- TraceLoggerThread* logger = TraceLoggerForMainThread(cx->runtime()); |
840 |
- bool lostEvents = logger->lostEvents(dbg->traceLoggerScriptedCallsLastDrainedIteration, |
841 |
-- dbg->traceLoggerScriptedCallsLastDrainedId); |
842 |
-+ dbg->traceLoggerScriptedCallsLastDrainedSize); |
843 |
- EventEntry* events = logger->getEventsStartingAt( |
844 |
- &dbg->traceLoggerScriptedCallsLastDrainedIteration, |
845 |
-- &dbg->traceLoggerScriptedCallsLastDrainedId, |
846 |
-+ &dbg->traceLoggerScriptedCallsLastDrainedSize, |
847 |
- &num); |
848 |
- |
849 |
- RootedObject array(cx, NewDenseEmptyArray(cx)); |
850 |
-diff --git a/js/src/vm/Debugger.h b/js/src/vm/Debugger.h |
851 |
-index 8cac36a..c92d685 100644 |
852 |
---- a/js/src/vm/Debugger.h |
853 |
-+++ b/js/src/vm/Debugger.h |
854 |
-@@ -314,10 +314,10 @@ class Debugger : private mozilla::LinkedListElement<Debugger> |
855 |
- * lost events. |
856 |
- */ |
857 |
- #ifdef NIGHTLY_BUILD |
858 |
-- uint32_t traceLoggerLastDrainedId; |
859 |
-+ uint32_t traceLoggerLastDrainedSize; |
860 |
- uint32_t traceLoggerLastDrainedIteration; |
861 |
- #endif |
862 |
-- uint32_t traceLoggerScriptedCallsLastDrainedId; |
863 |
-+ uint32_t traceLoggerScriptedCallsLastDrainedSize; |
864 |
- uint32_t traceLoggerScriptedCallsLastDrainedIteration; |
865 |
- |
866 |
- class FrameRange; |
867 |
-diff --git a/js/src/vm/TraceLogging.cpp b/js/src/vm/TraceLogging.cpp |
868 |
-index 6715b36..9766a6f 100644 |
869 |
---- a/js/src/vm/TraceLogging.cpp |
870 |
-+++ b/js/src/vm/TraceLogging.cpp |
871 |
-@@ -131,7 +131,7 @@ TraceLoggerThread::init() |
872 |
- { |
873 |
- if (!pointerMap.init()) |
874 |
- return false; |
875 |
-- if (!extraTextId.init()) |
876 |
-+ if (!textIdPayloads.init()) |
877 |
- return false; |
878 |
- if (!events.init()) |
879 |
- return false; |
880 |
-@@ -185,10 +185,10 @@ TraceLoggerThread::~TraceLoggerThread() |
881 |
- graph = nullptr; |
882 |
- } |
883 |
- |
884 |
-- for (TextIdHashMap::Range r = extraTextId.all(); !r.empty(); r.popFront()) |
885 |
-- js_delete(r.front().value()); |
886 |
-- extraTextId.finish(); |
887 |
-- pointerMap.finish(); |
888 |
-+ if (textIdPayloads.initialized()) { |
889 |
-+ for (TextIdHashMap::Range r = textIdPayloads.all(); !r.empty(); r.popFront()) |
890 |
-+ js_delete(r.front().value()); |
891 |
-+ } |
892 |
- } |
893 |
- |
894 |
- bool |
895 |
-@@ -287,7 +287,7 @@ TraceLoggerThread::eventText(uint32_t id) |
896 |
- if (id < TraceLogger_Last) |
897 |
- return TLTextIdString(static_cast<TraceLoggerTextId>(id)); |
898 |
- |
899 |
-- TextIdHashMap::Ptr p = extraTextId.lookup(id); |
900 |
-+ TextIdHashMap::Ptr p = textIdPayloads.lookup(id); |
901 |
- MOZ_ASSERT(p); |
902 |
- |
903 |
- return p->value()->string(); |
904 |
-@@ -341,13 +341,15 @@ TraceLoggerThread::extractScriptDetails(uint32_t textId, const char** filename, |
905 |
- TraceLoggerEventPayload* |
906 |
- TraceLoggerThread::getOrCreateEventPayload(TraceLoggerTextId textId) |
907 |
- { |
908 |
-- TextIdHashMap::AddPtr p = extraTextId.lookupForAdd(textId); |
909 |
-- if (p) |
910 |
-+ TextIdHashMap::AddPtr p = textIdPayloads.lookupForAdd(textId); |
911 |
-+ if (p) { |
912 |
-+ MOZ_ASSERT(p->value()->textId() == textId); // Sanity check. |
913 |
- return p->value(); |
914 |
-+ } |
915 |
- |
916 |
- TraceLoggerEventPayload* payload = js_new<TraceLoggerEventPayload>(textId, (char*)nullptr); |
917 |
- |
918 |
-- if (!extraTextId.add(p, textId, payload)) |
919 |
-+ if (!textIdPayloads.add(p, textId, payload)) |
920 |
- return nullptr; |
921 |
- |
922 |
- return payload; |
923 |
-@@ -357,8 +359,10 @@ TraceLoggerEventPayload* |
924 |
- TraceLoggerThread::getOrCreateEventPayload(const char* text) |
925 |
- { |
926 |
- PointerHashMap::AddPtr p = pointerMap.lookupForAdd((const void*)text); |
927 |
-- if (p) |
928 |
-+ if (p) { |
929 |
-+ MOZ_ASSERT(p->value()->textId() < nextTextId); // Sanity check. |
930 |
- return p->value(); |
931 |
-+ } |
932 |
- |
933 |
- size_t len = strlen(text); |
934 |
- char* str = js_pod_malloc<char>(len + 1); |
935 |
-@@ -369,7 +373,7 @@ TraceLoggerThread::getOrCreateEventPayload(const char* text) |
936 |
- MOZ_ASSERT(ret == len); |
937 |
- MOZ_ASSERT(strlen(str) == len); |
938 |
- |
939 |
-- uint32_t textId = extraTextId.count() + TraceLogger_Last; |
940 |
-+ uint32_t textId = nextTextId; |
941 |
- |
942 |
- TraceLoggerEventPayload* payload = js_new<TraceLoggerEventPayload>(textId, str); |
943 |
- if (!payload) { |
944 |
-@@ -377,17 +381,19 @@ TraceLoggerThread::getOrCreateEventPayload(const char* text) |
945 |
- return nullptr; |
946 |
- } |
947 |
- |
948 |
-- if (!extraTextId.putNew(textId, payload)) { |
949 |
-+ if (!textIdPayloads.putNew(textId, payload)) { |
950 |
- js_delete(payload); |
951 |
- return nullptr; |
952 |
- } |
953 |
- |
954 |
-- if (!pointerMap.add(p, text, payload)) |
955 |
-- return nullptr; |
956 |
-- |
957 |
- if (graph.get()) |
958 |
- graph->addTextId(textId, str); |
959 |
- |
960 |
-+ nextTextId++; |
961 |
-+ |
962 |
-+ if (!pointerMap.add(p, text, payload)) |
963 |
-+ return nullptr; |
964 |
-+ |
965 |
- return payload; |
966 |
- } |
967 |
- |
968 |
-@@ -407,9 +413,14 @@ TraceLoggerThread::getOrCreateEventPayload(TraceLoggerTextId type, const char* f |
969 |
- if (!traceLoggerState->isTextIdEnabled(type)) |
970 |
- return getOrCreateEventPayload(type); |
971 |
- |
972 |
-- PointerHashMap::AddPtr p = pointerMap.lookupForAdd(ptr); |
973 |
-- if (p) |
974 |
-- return p->value(); |
975 |
-+ PointerHashMap::AddPtr p; |
976 |
-+ if (ptr) { |
977 |
-+ p = pointerMap.lookupForAdd(ptr); |
978 |
-+ if (p) { |
979 |
-+ MOZ_ASSERT(p->value()->textId() < nextTextId); // Sanity check. |
980 |
-+ return p->value(); |
981 |
-+ } |
982 |
-+ } |
983 |
- |
984 |
- // Compute the length of the string to create. |
985 |
- size_t lenFilename = strlen(filename); |
986 |
-@@ -428,24 +439,28 @@ TraceLoggerThread::getOrCreateEventPayload(TraceLoggerTextId type, const char* f |
987 |
- MOZ_ASSERT(ret == len); |
988 |
- MOZ_ASSERT(strlen(str) == len); |
989 |
- |
990 |
-- uint32_t textId = extraTextId.count() + TraceLogger_Last; |
991 |
-+ uint32_t textId = nextTextId; |
992 |
- TraceLoggerEventPayload* payload = js_new<TraceLoggerEventPayload>(textId, str); |
993 |
- if (!payload) { |
994 |
- js_free(str); |
995 |
- return nullptr; |
996 |
- } |
997 |
- |
998 |
-- if (!extraTextId.putNew(textId, payload)) { |
999 |
-+ if (!textIdPayloads.putNew(textId, payload)) { |
1000 |
- js_delete(payload); |
1001 |
- return nullptr; |
1002 |
- } |
1003 |
- |
1004 |
-- if (!pointerMap.add(p, ptr, payload)) |
1005 |
-- return nullptr; |
1006 |
-- |
1007 |
- if (graph.get()) |
1008 |
- graph->addTextId(textId, str); |
1009 |
- |
1010 |
-+ nextTextId++; |
1011 |
-+ |
1012 |
-+ if (ptr) { |
1013 |
-+ if (!pointerMap.add(p, ptr, payload)) |
1014 |
-+ return nullptr; |
1015 |
-+ } |
1016 |
-+ |
1017 |
- return payload; |
1018 |
- } |
1019 |
- |
1020 |
-@@ -453,14 +468,14 @@ TraceLoggerEventPayload* |
1021 |
- TraceLoggerThread::getOrCreateEventPayload(TraceLoggerTextId type, JSScript* script) |
1022 |
- { |
1023 |
- return getOrCreateEventPayload(type, script->filename(), script->lineno(), script->column(), |
1024 |
-- script); |
1025 |
-+ nullptr); |
1026 |
- } |
1027 |
- |
1028 |
- TraceLoggerEventPayload* |
1029 |
- TraceLoggerThread::getOrCreateEventPayload(TraceLoggerTextId type, |
1030 |
- const JS::ReadOnlyCompileOptions& script) |
1031 |
- { |
1032 |
-- return getOrCreateEventPayload(type, script.filename(), script.lineno, script.column, &script); |
1033 |
-+ return getOrCreateEventPayload(type, script.filename(), script.lineno, script.column, nullptr); |
1034 |
- } |
1035 |
- |
1036 |
- void |
1037 |
-@@ -485,7 +500,7 @@ TraceLoggerThread::startEvent(uint32_t id) |
1038 |
- if (!traceLoggerState->isTextIdEnabled(id)) |
1039 |
- return; |
1040 |
- |
1041 |
-- logTimestamp(id); |
1042 |
-+ log(id); |
1043 |
- } |
1044 |
- |
1045 |
- void |
1046 |
-@@ -510,7 +525,7 @@ TraceLoggerThread::stopEvent(uint32_t id) |
1047 |
- if (!traceLoggerState->isTextIdEnabled(id)) |
1048 |
- return; |
1049 |
- |
1050 |
-- logTimestamp(TraceLogger_Stop); |
1051 |
-+ log(TraceLogger_Stop); |
1052 |
- } |
1053 |
- |
1054 |
- void |
1055 |
-@@ -522,23 +537,57 @@ TraceLoggerThread::logTimestamp(TraceLoggerTextId id) |
1056 |
- void |
1057 |
- TraceLoggerThread::logTimestamp(uint32_t id) |
1058 |
- { |
1059 |
-+ MOZ_ASSERT(id > TraceLogger_LastTreeItem && id < TraceLogger_Last); |
1060 |
-+ log(id); |
1061 |
-+} |
1062 |
-+ |
1063 |
-+void |
1064 |
-+TraceLoggerThread::log(uint32_t id) |
1065 |
-+{ |
1066 |
- if (enabled == 0) |
1067 |
- return; |
1068 |
- |
1069 |
- MOZ_ASSERT(traceLoggerState); |
1070 |
-- if (!events.ensureSpaceBeforeAdd()) { |
1071 |
-+ |
1072 |
-+ // We request for 3 items to add, since if we don't have enough room |
1073 |
-+ // we record the time it took to make more place. To log this information |
1074 |
-+ // we need 2 extra free entries. |
1075 |
-+ if (!events.hasSpaceForAdd(3)) { |
1076 |
- uint64_t start = rdtsc() - traceLoggerState->startupTime; |
1077 |
- |
1078 |
-- if (graph.get()) |
1079 |
-- graph->log(events); |
1080 |
-+ if (!events.ensureSpaceBeforeAdd(3)) { |
1081 |
-+ if (graph.get()) |
1082 |
-+ graph->log(events); |
1083 |
-+ |
1084 |
-+ iteration_++; |
1085 |
-+ events.clear(); |
1086 |
-+ |
1087 |
-+ // Remove the item in the pointerMap for which the payloads |
1088 |
-+ // have no uses anymore |
1089 |
-+ for (PointerHashMap::Enum e(pointerMap); !e.empty(); e.popFront()) { |
1090 |
-+ if (e.front().value()->uses() != 0) |
1091 |
-+ continue; |
1092 |
-+ |
1093 |
-+ TextIdHashMap::Ptr p = textIdPayloads.lookup(e.front().value()->textId()); |
1094 |
-+ MOZ_ASSERT(p); |
1095 |
-+ textIdPayloads.remove(p); |
1096 |
-+ |
1097 |
-+ e.removeFront(); |
1098 |
-+ } |
1099 |
- |
1100 |
-- iteration_++; |
1101 |
-- events.clear(); |
1102 |
-+ // Free all payloads that have no uses anymore. |
1103 |
-+ for (TextIdHashMap::Enum e(textIdPayloads); !e.empty(); e.popFront()) { |
1104 |
-+ if (e.front().value()->uses() == 0) { |
1105 |
-+ js_delete(e.front().value()); |
1106 |
-+ e.removeFront(); |
1107 |
-+ } |
1108 |
-+ } |
1109 |
-+ } |
1110 |
- |
1111 |
- // Log the time it took to flush the events as being from the |
1112 |
- // Tracelogger. |
1113 |
- if (graph.get()) { |
1114 |
-- MOZ_ASSERT(events.capacity() > 2); |
1115 |
-+ MOZ_ASSERT(events.hasSpaceForAdd(2)); |
1116 |
- EventEntry& entryStart = events.pushUninitialized(); |
1117 |
- entryStart.time = start; |
1118 |
- entryStart.textId = TraceLogger_Internal; |
1119 |
-@@ -548,13 +597,6 @@ TraceLoggerThread::logTimestamp(uint32_t id) |
1120 |
- entryStop.textId = TraceLogger_Stop; |
1121 |
- } |
1122 |
- |
1123 |
-- // Free all TextEvents that have no uses anymore. |
1124 |
-- for (TextIdHashMap::Enum e(extraTextId); !e.empty(); e.popFront()) { |
1125 |
-- if (e.front().value()->uses() == 0) { |
1126 |
-- js_delete(e.front().value()); |
1127 |
-- e.removeFront(); |
1128 |
-- } |
1129 |
-- } |
1130 |
- } |
1131 |
- |
1132 |
- uint64_t time = rdtsc() - traceLoggerState->startupTime; |
1133 |
-@@ -956,3 +998,16 @@ TraceLoggerEvent::~TraceLoggerEvent() |
1134 |
- if (payload_) |
1135 |
- payload_->release(); |
1136 |
- } |
1137 |
-+ |
1138 |
-+TraceLoggerEvent& |
1139 |
-+TraceLoggerEvent::operator=(const TraceLoggerEvent& other) |
1140 |
-+{ |
1141 |
-+ if (hasPayload()) |
1142 |
-+ payload()->release(); |
1143 |
-+ if (other.hasPayload()) |
1144 |
-+ other.payload()->use(); |
1145 |
-+ |
1146 |
-+ payload_ = other.payload_; |
1147 |
-+ |
1148 |
-+ return *this; |
1149 |
-+} |
1150 |
-diff --git a/js/src/vm/TraceLogging.h b/js/src/vm/TraceLogging.h |
1151 |
-index a124dcb..91a1eb0 100644 |
1152 |
---- a/js/src/vm/TraceLogging.h |
1153 |
-+++ b/js/src/vm/TraceLogging.h |
1154 |
-@@ -110,6 +110,9 @@ class TraceLoggerEvent { |
1155 |
- bool hasPayload() const { |
1156 |
- return !!payload_; |
1157 |
- } |
1158 |
-+ |
1159 |
-+ TraceLoggerEvent& operator=(const TraceLoggerEvent& other); |
1160 |
-+ TraceLoggerEvent(const TraceLoggerEvent& event) = delete; |
1161 |
- }; |
1162 |
- |
1163 |
- /** |
1164 |
-@@ -130,6 +133,10 @@ class TraceLoggerEventPayload { |
1165 |
- uses_(0) |
1166 |
- { } |
1167 |
- |
1168 |
-+ ~TraceLoggerEventPayload() { |
1169 |
-+ MOZ_ASSERT(uses_ == 0); |
1170 |
-+ } |
1171 |
-+ |
1172 |
- uint32_t textId() { |
1173 |
- return textId_; |
1174 |
- } |
1175 |
-@@ -166,7 +173,8 @@ class TraceLoggerThread |
1176 |
- mozilla::UniquePtr<TraceLoggerGraph> graph; |
1177 |
- |
1178 |
- PointerHashMap pointerMap; |
1179 |
-- TextIdHashMap extraTextId; |
1180 |
-+ TextIdHashMap textIdPayloads; |
1181 |
-+ uint32_t nextTextId; |
1182 |
- |
1183 |
- ContinuousSpace<EventEntry> events; |
1184 |
- |
1185 |
-@@ -181,6 +189,7 @@ class TraceLoggerThread |
1186 |
- : enabled(0), |
1187 |
- failed(false), |
1188 |
- graph(), |
1189 |
-+ nextTextId(TraceLogger_Last), |
1190 |
- iteration_(0), |
1191 |
- top(nullptr) |
1192 |
- { } |
1193 |
-@@ -195,22 +204,22 @@ class TraceLoggerThread |
1194 |
- bool enable(JSContext* cx); |
1195 |
- bool disable(); |
1196 |
- |
1197 |
-- // Given the previous iteration and lastEntryId, return an array of events |
1198 |
-+ // Given the previous iteration and size, return an array of events |
1199 |
- // (there could be lost events). At the same time update the iteration and |
1200 |
-- // lastEntry and gives back how many events there are. |
1201 |
-- EventEntry* getEventsStartingAt(uint32_t* lastIteration, uint32_t* lastEntryId, size_t* num) { |
1202 |
-+ // size and gives back how many events there are. |
1203 |
-+ EventEntry* getEventsStartingAt(uint32_t* lastIteration, uint32_t* lastSize, size_t* num) { |
1204 |
- EventEntry* start; |
1205 |
- if (iteration_ == *lastIteration) { |
1206 |
-- MOZ_ASSERT(events.lastEntryId() >= *lastEntryId); |
1207 |
-- *num = events.lastEntryId() - *lastEntryId; |
1208 |
-- start = events.data() + *lastEntryId + 1; |
1209 |
-+ MOZ_ASSERT(*lastSize <= events.size()); |
1210 |
-+ *num = events.size() - *lastSize; |
1211 |
-+ start = events.data() + *lastSize; |
1212 |
- } else { |
1213 |
-- *num = events.lastEntryId() + 1; |
1214 |
-+ *num = events.size(); |
1215 |
- start = events.data(); |
1216 |
- } |
1217 |
- |
1218 |
- *lastIteration = iteration_; |
1219 |
-- *lastEntryId = events.lastEntryId(); |
1220 |
-+ *lastSize = events.size(); |
1221 |
- return start; |
1222 |
- } |
1223 |
- |
1224 |
-@@ -220,16 +229,16 @@ class TraceLoggerThread |
1225 |
- const char** lineno, size_t* lineno_len, const char** colno, |
1226 |
- size_t* colno_len); |
1227 |
- |
1228 |
-- bool lostEvents(uint32_t lastIteration, uint32_t lastEntryId) { |
1229 |
-+ bool lostEvents(uint32_t lastIteration, uint32_t lastSize) { |
1230 |
- // If still logging in the same iteration, there are no lost events. |
1231 |
- if (lastIteration == iteration_) { |
1232 |
-- MOZ_ASSERT(lastEntryId <= events.lastEntryId()); |
1233 |
-+ MOZ_ASSERT(lastSize <= events.size()); |
1234 |
- return false; |
1235 |
- } |
1236 |
- |
1237 |
-- // When proceeded to the next iteration and lastEntryId points to |
1238 |
-- // the maximum capacity there are no logs that are lost. |
1239 |
-- if (lastIteration + 1 == iteration_ && lastEntryId == events.capacity()) |
1240 |
-+ // If we are in a consecutive iteration we are only sure we didn't lose any events, |
1241 |
-+ // when the lastSize equals the maximum size 'events' can get. |
1242 |
-+ if (lastIteration == iteration_ - 1 && lastSize == events.maxSize()) |
1243 |
- return false; |
1244 |
- |
1245 |
- return true; |
1246 |
-@@ -268,6 +277,7 @@ class TraceLoggerThread |
1247 |
- void stopEvent(uint32_t id); |
1248 |
- private: |
1249 |
- void stopEvent(); |
1250 |
-+ void log(uint32_t id); |
1251 |
- |
1252 |
- public: |
1253 |
- static unsigned offsetOfEnabled() { |
1254 |
-diff --git a/js/src/vm/TraceLoggingGraph.cpp b/js/src/vm/TraceLoggingGraph.cpp |
1255 |
-index d1b7f2e..a4eb273 100644 |
1256 |
---- a/js/src/vm/TraceLoggingGraph.cpp |
1257 |
-+++ b/js/src/vm/TraceLoggingGraph.cpp |
1258 |
-@@ -276,7 +276,7 @@ TraceLoggerGraph::flush() |
1259 |
- if (bytesWritten < tree.size()) |
1260 |
- return false; |
1261 |
- |
1262 |
-- treeOffset += tree.lastEntryId(); |
1263 |
-+ treeOffset += tree.size(); |
1264 |
- tree.clear(); |
1265 |
- } |
1266 |
- |
1267 |
-@@ -359,7 +359,7 @@ TraceLoggerGraph::startEventInternal(uint32_t id, uint64_t timestamp) |
1268 |
- |
1269 |
- if (parent.lastChildId() == 0) { |
1270 |
- MOZ_ASSERT(!entry.hasChildren()); |
1271 |
-- MOZ_ASSERT(parent.treeId() == tree.lastEntryId() + treeOffset); |
1272 |
-+ MOZ_ASSERT(parent.treeId() == treeOffset + tree.size() - 1); |
1273 |
- |
1274 |
- if (!updateHasChildren(parent.treeId())) |
1275 |
- return false; |
1276 |
-diff --git a/js/src/vm/TraceLoggingTypes.h b/js/src/vm/TraceLoggingTypes.h |
1277 |
-index f1c9d0c..10b76d6 100644 |
1278 |
---- a/js/src/vm/TraceLoggingTypes.h |
1279 |
-+++ b/js/src/vm/TraceLoggingTypes.h |
1280 |
-@@ -21,7 +21,6 @@ |
1281 |
- _(Internal) \ |
1282 |
- _(Interpreter) \ |
1283 |
- _(InlinedScripts) \ |
1284 |
-- _(Invalidation) \ |
1285 |
- _(IonCompilation) \ |
1286 |
- _(IonCompilationPaused) \ |
1287 |
- _(IonLinking) \ |
1288 |
-@@ -60,6 +59,7 @@ |
1289 |
- |
1290 |
- #define TRACELOGGER_LOG_ITEMS(_) \ |
1291 |
- _(Bailout) \ |
1292 |
-+ _(Invalidation) \ |
1293 |
- _(Disable) \ |
1294 |
- _(Enable) \ |
1295 |
- _(Stop) |
1296 |
-@@ -130,6 +130,9 @@ class ContinuousSpace { |
1297 |
- uint32_t size_; |
1298 |
- uint32_t capacity_; |
1299 |
- |
1300 |
-+ // The maximum amount of ram memory a continuous space structure can take (in bytes). |
1301 |
-+ static const uint32_t LIMIT = 200 * 1024 * 1024; |
1302 |
-+ |
1303 |
- public: |
1304 |
- ContinuousSpace () |
1305 |
- : data_(nullptr) |
1306 |
-@@ -151,6 +154,10 @@ class ContinuousSpace { |
1307 |
- data_ = nullptr; |
1308 |
- } |
1309 |
- |
1310 |
-+ static uint32_t maxSize() { |
1311 |
-+ return LIMIT / sizeof(T); |
1312 |
-+ } |
1313 |
-+ |
1314 |
- T* data() { |
1315 |
- return data_; |
1316 |
- } |
1317 |
-@@ -187,11 +194,14 @@ class ContinuousSpace { |
1318 |
- if (hasSpaceForAdd(count)) |
1319 |
- return true; |
1320 |
- |
1321 |
-+ // Limit the size of a continuous buffer. |
1322 |
-+ if (size_ + count > maxSize()) |
1323 |
-+ return false; |
1324 |
-+ |
1325 |
- uint32_t nCapacity = capacity_ * 2; |
1326 |
-- if (size_ + count > nCapacity) |
1327 |
-- nCapacity = size_ + count; |
1328 |
-- T* entries = (T*) js_realloc(data_, nCapacity * sizeof(T)); |
1329 |
-+ nCapacity = (nCapacity < maxSize()) ? nCapacity : maxSize(); |
1330 |
- |
1331 |
-+ T* entries = (T*) js_realloc(data_, nCapacity * sizeof(T)); |
1332 |
- if (!entries) |
1333 |
- return false; |
1334 |
- |
1335 |
|
1336 |
diff --git a/dev-lang/spidermonkey/files/mozjs38-pkg-config-version.patch b/dev-lang/spidermonkey/files/mozjs38-pkg-config-version.patch |
1337 |
deleted file mode 100644 |
1338 |
index 34a43d1f6df..00000000000 |
1339 |
--- a/dev-lang/spidermonkey/files/mozjs38-pkg-config-version.patch |
1340 |
+++ /dev/null |
1341 |
@@ -1,22 +0,0 @@ |
1342 |
-Add major version to pkg-config filename. |
1343 |
-Author: Rico Tzschichholz <ricotz@××××××.com> |
1344 |
-Forwarded: no |
1345 |
-Last-Update: 2015-05-04 |
1346 |
- |
1347 |
-Index: b/js/src/Makefile.in |
1348 |
-=================================================================== |
1349 |
---- a/js/src/Makefile.in |
1350 |
-+++ b/js/src/Makefile.in |
1351 |
-@@ -214,10 +214,10 @@ |
1352 |
- $(JS_CONFIG_NAME): js-config |
1353 |
- cp $^ $@ |
1354 |
- |
1355 |
--$(LIBRARY_NAME).pc: js.pc |
1356 |
-+$(JS_LIBRARY_NAME).pc: js.pc |
1357 |
- cp $^ $@ |
1358 |
- |
1359 |
--install:: $(LIBRARY_NAME).pc |
1360 |
-+install:: $(JS_LIBRARY_NAME).pc |
1361 |
- $(SYSINSTALL) $^ $(DESTDIR)$(libdir)/pkgconfig |
1362 |
- |
1363 |
- install:: js-config.h |
1364 |
|
1365 |
diff --git a/dev-lang/spidermonkey/files/mozjs45-1266366.patch b/dev-lang/spidermonkey/files/mozjs45-1266366.patch |
1366 |
deleted file mode 100644 |
1367 |
index 590f745d14d..00000000000 |
1368 |
--- a/dev-lang/spidermonkey/files/mozjs45-1266366.patch |
1369 |
+++ /dev/null |
1370 |
@@ -1,29 +0,0 @@ |
1371 |
-# HG changeset patch |
1372 |
-# User Nicolas B. Pierron <nicolas.b.pierron@×××××××.com> |
1373 |
- |
1374 |
-Bug 1266366 - Add branch64 functions to the none-backend MacroAssembler. r= |
1375 |
- |
1376 |
-diff --git a/js/src/jit/none/MacroAssembler-none.h b/js/src/jit/none/MacroAssembler-none.h |
1377 |
-index 512ae81..4441d8d 100644 |
1378 |
---- a/js/src/jit/none/MacroAssembler-none.h |
1379 |
-+++ b/js/src/jit/none/MacroAssembler-none.h |
1380 |
-@@ -254,16 +254,18 @@ class MacroAssemblerNone : public Assembler |
1381 |
- template <typename T, typename S> void branchSub32(Condition, T, S, Label*) { MOZ_CRASH(); } |
1382 |
- template <typename T, typename S> void branchPtr(Condition, T, S, Label*) { MOZ_CRASH(); } |
1383 |
- template <typename T, typename S> void branchTestPtr(Condition, T, S, Label*) { MOZ_CRASH(); } |
1384 |
- template <typename T, typename S> void branchDouble(DoubleCondition, T, S, Label*) { MOZ_CRASH(); } |
1385 |
- template <typename T, typename S> void branchFloat(DoubleCondition, T, S, Label*) { MOZ_CRASH(); } |
1386 |
- template <typename T, typename S> void branchPrivatePtr(Condition, T, S, Label*) { MOZ_CRASH(); } |
1387 |
- template <typename T, typename S> void decBranchPtr(Condition, T, S, Label*) { MOZ_CRASH(); } |
1388 |
- template <typename T, typename S> void branchTest64(Condition, T, T, S, Label*) { MOZ_CRASH(); } |
1389 |
-+ template <typename T, typename S> void branch64(Condition, T, S, Label*) { MOZ_CRASH(); } |
1390 |
-+ template <typename T, typename S> void branch64(Condition, T, T, S, Label*) { MOZ_CRASH(); } |
1391 |
- template <typename T, typename S> void mov(T, S) { MOZ_CRASH(); } |
1392 |
- template <typename T, typename S> void movq(T, S) { MOZ_CRASH(); } |
1393 |
- template <typename T, typename S> void movePtr(T, S) { MOZ_CRASH(); } |
1394 |
- template <typename T, typename S> void move32(T, S) { MOZ_CRASH(); } |
1395 |
- template <typename T, typename S> void moveFloat32(T, S) { MOZ_CRASH(); } |
1396 |
- template <typename T, typename S> void moveDouble(T, S) { MOZ_CRASH(); } |
1397 |
- template <typename T, typename S> void move64(T, S) { MOZ_CRASH(); } |
1398 |
- template <typename T> CodeOffset movWithPatch(T, Register) { MOZ_CRASH(); } |
1399 |
- |
1400 |
|
1401 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch b/dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch |
1402 |
deleted file mode 100644 |
1403 |
index a5c4b47db52..00000000000 |
1404 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch |
1405 |
+++ /dev/null |
1406 |
@@ -1,138 +0,0 @@ |
1407 |
---- js/src/Makefile.ref |
1408 |
-+++ js/src/Makefile.ref |
1409 |
-@@ -127,7 +127,7 @@ endif |
1410 |
- ifdef JS_READLINE |
1411 |
- # For those platforms with the readline library installed. |
1412 |
- DEFINES += -DEDITLINE |
1413 |
--PROG_LIBS += -lreadline -ltermcap |
1414 |
-+PROG_LIBS += -lreadline |
1415 |
- else |
1416 |
- ifdef JS_EDITLINE |
1417 |
- # Use the editline library, built locally. |
1418 |
-@@ -370,3 +370,16 @@ TARFILES = files `cat files` |
1419 |
- SUFFIXES: .i |
1420 |
- %.i: %.c |
1421 |
- $(CC) -C -E $(CFLAGS) $< > $*.i |
1422 |
-+ |
1423 |
-+DESTDIR := |
1424 |
-+PREFIX := /usr |
1425 |
-+BINDIR := $(PREFIX)/bin |
1426 |
-+MY_LIBDIR := $(PREFIX)/$(LIBDIR) |
1427 |
-+INCLUDEDIR := $(PREFIX)/include/js |
1428 |
-+INSTALL := install -g 0 -o root |
1429 |
-+install: |
1430 |
-+ $(INSTALL) -m 755 -d $(DESTDIR)$(INCLUDEDIR) $(DESTDIR)$(MY_LIBDIR) $(DESTDIR)$(BINDIR) |
1431 |
-+ $(INSTALL) -m 755 $(SHARED_LIBRARY) $(DESTDIR)$(MY_LIBDIR) |
1432 |
-+ $(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(MY_LIBDIR) |
1433 |
-+ $(INSTALL) -m 755 $(OBJDIR)/js $(OBJDIR)/jscpucfg $(DESTDIR)$(BINDIR) |
1434 |
-+ $(INSTALL) -m 644 $(HFILES) $(DESTDIR)$(INCLUDEDIR) |
1435 |
---- js/src/config/Linux_All.mk |
1436 |
-+++ js/src/config/Linux_All.mk |
1437 |
-@@ -41,37 +41,15 @@ |
1438 |
- # Config for all versions of Linux |
1439 |
- # |
1440 |
- |
1441 |
--CC = gcc |
1442 |
--CCC = g++ |
1443 |
- CFLAGS += -Wall -Wno-format |
1444 |
- OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R |
1445 |
- |
1446 |
- RANLIB = echo |
1447 |
--MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) |
1448 |
-+MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) -soname $(notdir $@) |
1449 |
- |
1450 |
- #.c.o: |
1451 |
- # $(CC) -c -MD $*.d $(CFLAGS) $< |
1452 |
- |
1453 |
--CPU_ARCH = $(shell uname -m) |
1454 |
--# don't filter in x86-64 architecture |
1455 |
--ifneq (x86_64,$(CPU_ARCH)) |
1456 |
--ifeq (86,$(findstring 86,$(CPU_ARCH))) |
1457 |
--CPU_ARCH = x86 |
1458 |
--OS_CFLAGS+= -DX86_LINUX |
1459 |
-- |
1460 |
--ifeq (gcc, $(CC)) |
1461 |
--# if using gcc on x86, check version for opt bug |
1462 |
--# (http://bugzilla.mozilla.org/show_bug.cgi?id=24892) |
1463 |
--GCC_VERSION := $(shell gcc -v 2>&1 | grep version | awk '{ print $$3 }') |
1464 |
--GCC_LIST:=$(sort 2.91.66 $(GCC_VERSION) ) |
1465 |
-- |
1466 |
--ifeq (2.91.66, $(firstword $(GCC_LIST))) |
1467 |
--CFLAGS+= -DGCC_OPT_BUG |
1468 |
--endif |
1469 |
--endif |
1470 |
--endif |
1471 |
--endif |
1472 |
-- |
1473 |
- GFX_ARCH = x |
1474 |
- |
1475 |
- OS_LIBS = -lm -lc |
1476 |
-@@ -88,16 +66,6 @@ |
1477 |
- endif |
1478 |
- |
1479 |
- # Use the editline library to provide line-editing support. |
1480 |
--JS_EDITLINE = 1 |
1481 |
-+JS_READLINE = 1 |
1482 |
- |
1483 |
--ifeq ($(CPU_ARCH),x86_64) |
1484 |
--# Use VA_COPY() standard macro on x86-64 |
1485 |
--# FIXME: better use it everywhere |
1486 |
- OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy |
1487 |
--endif |
1488 |
-- |
1489 |
--ifeq ($(CPU_ARCH),x86_64) |
1490 |
--# We need PIC code for shared libraries |
1491 |
--# FIXME: better patch rules.mk & fdlibm/Makefile* |
1492 |
--OS_CFLAGS += -DPIC -fPIC |
1493 |
--endif |
1494 |
---- js/src/rules.mk |
1495 |
-+++ js/src/rules.mk |
1496 |
-@@ -82,6 +82,10 @@ $(OBJDIR)/%.o: %.c |
1497 |
- @$(MAKE_OBJDIR) |
1498 |
- $(CC) -o $@ -c $(CFLAGS) $*.c |
1499 |
- |
1500 |
-+$(OBJDIR)/%.lo: %.c |
1501 |
-+ @$(MAKE_OBJDIR) |
1502 |
-+ $(CC) -o $@ -c $(CFLAGS) $*.c -fPIC |
1503 |
-+ |
1504 |
- $(OBJDIR)/%.o: %.s |
1505 |
- @$(MAKE_OBJDIR) |
1506 |
- $(AS) -o $@ $(ASFLAGS) $*.s |
1507 |
-@@ -111,11 +115,12 @@ $(SHARED_LIBRARY): $(LIB_OBJS) |
1508 |
- /implib:"$(OBJDIR)/$(@F:.dll=.lib)" $^ |
1509 |
- else |
1510 |
- $(LIBRARY): $(LIB_OBJS) |
1511 |
-- $(AR) rv $@ $? |
1512 |
-+ $(AR) cr $@ $? |
1513 |
- $(RANLIB) $@ |
1514 |
- |
1515 |
--$(SHARED_LIBRARY): $(LIB_OBJS) |
1516 |
-- $(MKSHLIB) -o $@ $(LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS) |
1517 |
-+SHARED_LIB_OBJS := $(LIB_OBJS:.o=.lo) |
1518 |
-+$(SHARED_LIBRARY): $(SHARED_LIB_OBJS) |
1519 |
-+ $(MKSHLIB) -o $@ $(SHARED_LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS) |
1520 |
- endif |
1521 |
- endif |
1522 |
- |
1523 |
---- js/src/fdlibm/Makefile.ref |
1524 |
-+++ js/src/fdlibm/Makefile.ref |
1525 |
-@@ -151,7 +151,7 @@ |
1526 |
- |
1527 |
- $(OBJDIR)/%.o: %.c |
1528 |
- @$(MAKE_OBJDIR) |
1529 |
-- $(CC) -o $@ -c $(CFLAGS) $*.c |
1530 |
-+ $(CC) -o $@ -c $(CFLAGS) $*.c -fPIC |
1531 |
- |
1532 |
- $(OBJDIR)/%.o: %.s |
1533 |
- @$(MAKE_OBJDIR) |
1534 |
---- js/src/config.mk |
1535 |
-+++ js/src/config.mk |
1536 |
-@@ -112,6 +112,8 @@ |
1537 |
- CP = cp |
1538 |
- endif |
1539 |
- |
1540 |
-+BUILD_OPT := 1 |
1541 |
-+ |
1542 |
- ifdef BUILD_OPT |
1543 |
- OPTIMIZER = -O |
1544 |
- DEFINES += -UDEBUG -DNDEBUG -UDEBUG_$(shell whoami) |
1545 |
|
1546 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch b/dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch |
1547 |
deleted file mode 100644 |
1548 |
index df4cf7d5074..00000000000 |
1549 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch |
1550 |
+++ /dev/null |
1551 |
@@ -1,13 +0,0 @@ |
1552 |
-Index: src/Makefile.ref |
1553 |
-=================================================================== |
1554 |
---- src.orig/Makefile.ref |
1555 |
-+++ src/Makefile.ref |
1556 |
-@@ -185,6 +185,8 @@ JS_HFILES = \ |
1557 |
- jsstr.h \ |
1558 |
- jsxdrapi.h \ |
1559 |
- jsxml.h \ |
1560 |
-+ jsutil.h \ |
1561 |
-+ jsprf.h \ |
1562 |
- $(NULL) |
1563 |
- |
1564 |
- API_HFILES = \ |
1565 |
|
1566 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch b/dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch |
1567 |
deleted file mode 100644 |
1568 |
index 4ddc3461ea1..00000000000 |
1569 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch |
1570 |
+++ /dev/null |
1571 |
@@ -1,42 +0,0 @@ |
1572 |
-Respect LDFLAGS |
1573 |
- |
1574 |
-http://bugs.gentoo.org/show_bug.cgi?id=331129 |
1575 |
- |
1576 |
---- js/src/Makefile.ref |
1577 |
-+++ js/src/Makefile.ref |
1578 |
-@@ -87,7 +87,7 @@ |
1579 |
- LDFLAGS = $(XLDFLAGS) |
1580 |
- |
1581 |
- ifndef NO_LIBM |
1582 |
--LDFLAGS += -lm |
1583 |
-+OTHER_LIBS += -lm |
1584 |
- endif |
1585 |
- |
1586 |
- # Prevent floating point errors caused by VC++ optimizations |
1587 |
-@@ -325,7 +325,7 @@ |
1588 |
- $(CC) -o $@ -c $(CFLAGS) $< |
1589 |
- |
1590 |
- $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX) |
1591 |
-- $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^ |
1592 |
-+ $(CC) $(HOST_LDFLAGS) -o $@ $(CFLAGS) $(OTHER_LIBS) $^ |
1593 |
- |
1594 |
- endif |
1595 |
- |
1596 |
-@@ -338,7 +338,7 @@ |
1597 |
- link.exe -out:"$@" $(EXE_LINK_FLAGS) $^ |
1598 |
- else |
1599 |
- $(PROGRAM): $(PROG_OBJS) $(LIBRARY) |
1600 |
-- $(CC) -o $@ $(CFLAGS) $(PROG_OBJS) $(LIBRARY) $(LDFLAGS) $(OTHER_LIBS) \ |
1601 |
-+ $(CC) $(HOST_LDFLAGS) -o $@ $(CFLAGS) $(PROG_OBJS) $(LIBRARY) $(OTHER_LIBS) \ |
1602 |
- $(PROG_LIBS) |
1603 |
- endif |
1604 |
- |
1605 |
-@@ -355,7 +355,7 @@ |
1606 |
- $(OBJDIR)/jscpucfg > $@ |
1607 |
- |
1608 |
- $(OBJDIR)/jscpucfg: $(OBJDIR)/jscpucfg.o |
1609 |
-- $(CC) -o $@ $(OBJDIR)/jscpucfg.o |
1610 |
-+ $(CC) $(HOST_LDFLAGS) -o $@ $(OBJDIR)/jscpucfg.o |
1611 |
- |
1612 |
- # Add to TARGETS for clobber rule |
1613 |
- TARGETS += $(OBJDIR)/jsautocfg.h $(OBJDIR)/jscpucfg \ |
1614 |
|
1615 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff b/dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff |
1616 |
deleted file mode 100644 |
1617 |
index 8728811fbfc..00000000000 |
1618 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff |
1619 |
+++ /dev/null |
1620 |
@@ -1,18 +0,0 @@ |
1621 |
-Index: src/Makefile.ref |
1622 |
-=================================================================== |
1623 |
---- src.orig/Makefile.ref |
1624 |
-+++ src/Makefile.ref |
1625 |
-@@ -63,11 +63,11 @@ INCLUDES += -I$(OBJDIR) |
1626 |
- |
1627 |
- ifdef JS_THREADSAFE |
1628 |
- DEFINES += -DJS_THREADSAFE |
1629 |
--INCLUDES += -I$(DIST)/include/nspr |
1630 |
-+INCLUDES += -I/usr/include/nspr |
1631 |
- ifdef USE_MSVC |
1632 |
- OTHER_LIBS += $(DIST)/lib/libnspr$(NSPR_LIBSUFFIX).lib |
1633 |
- else |
1634 |
--OTHER_LIBS += -L$(DIST)/lib -lnspr$(NSPR_LIBSUFFIX) |
1635 |
-+OTHER_LIBS += -L/usr/$(LIBDIR)/nspr -lnspr$(NSPR_LIBSUFFIX) |
1636 |
- endif |
1637 |
- endif |
1638 |
- |
1639 |
|
1640 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-arm_respect_cflags-3.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-arm_respect_cflags-3.patch |
1641 |
deleted file mode 100644 |
1642 |
index ed497ceebb0..00000000000 |
1643 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-arm_respect_cflags-3.patch |
1644 |
+++ /dev/null |
1645 |
@@ -1,99 +0,0 @@ |
1646 |
---- a/js-1.8.5/js/src/configure.in 2011-03-31 15:08:36.000000000 -0400 |
1647 |
-+++ b/js-1.8.5/js/src/configure.in 2012-11-02 15:32:38.000000000 -0400 |
1648 |
-@@ -3550,7 +3550,7 @@ |
1649 |
- _SAVE_CFLAGS="$CFLAGS" |
1650 |
- if test "$GNU_CC"; then |
1651 |
- # gcc needs -mfpu=neon to recognize NEON instructions |
1652 |
-- CFLAGS="$CFLAGS -mfpu=neon -mfloat-abi=softfp" |
1653 |
-+ CFLAGS="$CFLAGS -mfpu=neon" |
1654 |
- fi |
1655 |
- AC_TRY_COMPILE([], |
1656 |
- [asm("vadd.i8 d0, d0, d0");], |
1657 |
-@@ -4654,12 +4654,6 @@ |
1658 |
- dnl ======================================================== |
1659 |
- MOZ_ARG_HEADER(Individual module options) |
1660 |
- |
1661 |
--dnl Setup default CPU arch for arm target |
1662 |
--case "$target_cpu" in |
1663 |
-- arm*) |
1664 |
-- MOZ_ARM_ARCH=armv7 |
1665 |
-- ;; |
1666 |
--esac |
1667 |
- dnl ======================================================== |
1668 |
- dnl = Enable building the Thumb2 instruction set |
1669 |
- dnl ======================================================== |
1670 |
-@@ -4668,66 +4662,32 @@ |
1671 |
- MOZ_THUMB2=1, |
1672 |
- MOZ_THUMB2=) |
1673 |
- if test -n "$MOZ_THUMB2"; then |
1674 |
-- MOZ_ARM_ARCH=armv7 |
1675 |
-+ AC_MSG_WARN([thumb2 enabled instead of autodetected -- hope you know what you are doing]) |
1676 |
-+else |
1677 |
-+ AC_MSG_CHECKING([whether to build for thumb2]) |
1678 |
-+ AC_TRY_COMPILE([],[return sizeof(__thumb2__);], |
1679 |
-+ [MOZ_THUMB2=1 |
1680 |
-+ AC_MSG_RESULT([yes])], |
1681 |
-+ [MOZ_THUMB2= |
1682 |
-+ AC_MSG_RESULT([no])]) |
1683 |
- fi |
1684 |
- |
1685 |
- dnl ======================================================== |
1686 |
- dnl = Enable building for ARM specific CPU features |
1687 |
- dnl ======================================================== |
1688 |
--MOZ_ARG_WITH_STRING(cpu-arch, |
1689 |
--[ --with-cpu-arch=arch Use specific arm architecture CPU features, default armv7], |
1690 |
-- MOZ_ARM_ARCH=$withval) |
1691 |
-- |
1692 |
- if test -n "$MOZ_THUMB2"; then |
1693 |
- case "$target_cpu" in |
1694 |
- arm*) |
1695 |
-- if test "$MOZ_ARM_ARCH" != "armv7"; then |
1696 |
-- AC_MSG_ERROR([--enable-thumb2 is not compatible with cpu-arch=$MOZ_ARM_ARCH]) |
1697 |
-- fi |
1698 |
- if test "$GNU_CC"; then |
1699 |
- AC_DEFINE(MOZ_THUMB2) |
1700 |
-- AC_DEFINE(MOZ_ARM_ARCH) |
1701 |
-- CFLAGS="$CFLAGS -march=armv7-a -mthumb -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" |
1702 |
-- CXXFLAGS="$CXXFLAGS -march=armv7-a -mthumb -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" |
1703 |
-- ASFLAGS="$ASFLAGS -march=armv7-a -mthumb -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" |
1704 |
- else |
1705 |
- AC_MSG_ERROR([--enable-thumb2 is not supported for non-GNU toolchains]) |
1706 |
- fi |
1707 |
- ;; |
1708 |
-- *) |
1709 |
-- AC_MSG_ERROR([--enable-thumb2 is not supported for non-ARM CPU architectures]) |
1710 |
-- ;; |
1711 |
-- esac |
1712 |
--elif test "$MOZ_ARM_ARCH" = "armv7"; then |
1713 |
-- case "$target_cpu" in |
1714 |
-- arm*) |
1715 |
-- if test "$GNU_CC"; then |
1716 |
-- AC_DEFINE(MOZ_ARM_ARCH) |
1717 |
-- CFLAGS="$CFLAGS -march=armv7-a -marm -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" |
1718 |
-- CXXFLAGS="$CXXFLAGS -march=armv7-a -marm -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" |
1719 |
-- ASFLAGS="$ASFLAGS -march=armv7-a -marm -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" |
1720 |
-- else |
1721 |
-- AC_MSG_ERROR([--with-cpu-arch=armv7 is not supported for non-GNU toolchains]) |
1722 |
-- fi |
1723 |
-- ;; |
1724 |
-- *) |
1725 |
-- AC_MSG_ERROR([--with-cpu-arch=armv7 is not supported for non-ARM CPU architectures]) |
1726 |
-- ;; |
1727 |
-- esac |
1728 |
--else |
1729 |
-- case "$target_cpu" in |
1730 |
-- arm*) |
1731 |
-- if test "$GNU_CC"; then |
1732 |
-- CFLAGS="$CFLAGS -march=armv5te -mthumb-interwork -msoft-float" |
1733 |
-- CXXFLAGS="$CXXFLAGS -march=armv5te -mthumb-interwork -msoft-float" |
1734 |
-- ASFLAGS="$ASFLAGS -march=armv5te -mthumb-interwork -msoft-float" |
1735 |
-- fi |
1736 |
-- ;; |
1737 |
- esac |
1738 |
- fi |
1739 |
- |
1740 |
- AC_SUBST(MOZ_THUMB2) |
1741 |
--AC_SUBST(MOZ_ARM_ARCH) |
1742 |
- |
1743 |
- dnl ======================================================== |
1744 |
- dnl = |
1745 |
|
1746 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-install-symlinks.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-install-symlinks.patch |
1747 |
deleted file mode 100644 |
1748 |
index c867e45ee4f..00000000000 |
1749 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-install-symlinks.patch |
1750 |
+++ /dev/null |
1751 |
@@ -1,15 +0,0 @@ |
1752 |
-https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 |
1753 |
- |
1754 |
---- js/src/Makefile.in |
1755 |
-+++ js/src/Makefile.in |
1756 |
-@@ -888,8 +888,8 @@ |
1757 |
- ifeq (,$(HOST_BIN_SUFFIX)) |
1758 |
- mv -f $(SHLIB_ANY_VER) $(SHLIB_EXACT_VER) |
1759 |
- @[ ! -h $(SHLIB_ABI_VER) ] || rm -f $(SHLIB_ABI_VER) |
1760 |
-- ln -s $(SHLIB_EXACT_VER) $(SHLIB_ABI_VER) |
1761 |
-- ln -s $(SHLIB_ABI_VER) $(SHLIB_ANY_VER) |
1762 |
-+ ln -s $(notdir $(SHLIB_EXACT_VER)) $(SHLIB_ABI_VER) |
1763 |
-+ ln -s $(notdir $(SHLIB_ABI_VER)) $(SHLIB_ANY_VER) |
1764 |
- endif |
1765 |
- endif |
1766 |
- ifneq (,$(IMPORT_LIBRARY)) |
1767 |
|
1768 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-ppc64.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-ppc64.patch |
1769 |
deleted file mode 100644 |
1770 |
index 3927c871793..00000000000 |
1771 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-ppc64.patch |
1772 |
+++ /dev/null |
1773 |
@@ -1,61 +0,0 @@ |
1774 |
-# HG changeset patch |
1775 |
-# User Mike Hommey <mh+mozilla@××××××××.org> |
1776 |
-# Date 1303461188 -7200 |
1777 |
-# Node ID 59771590e9203d48ef8cbcd7eaf2f8ae45dbb1c1 |
1778 |
-# Parent c4b82ec27d6d6e1c02ef0abb3b6e805bfdd092ec |
1779 |
-Bug 638056 - Avoid "The cacheFlush support is missing on this platform" error on exotic platforms. r=cdleary |
1780 |
- |
1781 |
-diff --git a/js/src/Makefile.in b/js/src/Makefile.in |
1782 |
---- a/js/src/Makefile.in |
1783 |
-+++ b/js/src/Makefile.in |
1784 |
-@@ -383,17 +383,17 @@ CPPSRCS += checks.cc \ |
1785 |
- platform.cc \ |
1786 |
- utils.cc \ |
1787 |
- $(NONE) |
1788 |
- |
1789 |
- # |
1790 |
- # END enclude sources for V8 dtoa |
1791 |
- ############################################# |
1792 |
- |
1793 |
--ifeq (,$(filter-out powerpc sparc,$(TARGET_CPU))) |
1794 |
-+ifeq (,$(filter arm% %86 x86_64,$(TARGET_CPU))) |
1795 |
- |
1796 |
- VPATH += $(srcdir)/assembler \ |
1797 |
- $(srcdir)/assembler/wtf \ |
1798 |
- $(srcdir)/yarr/pcre \ |
1799 |
- $(NULL) |
1800 |
- |
1801 |
- CPPSRCS += pcre_compile.cpp \ |
1802 |
- pcre_exec.cpp \ |
1803 |
- |
1804 |
-# HG changeset patch |
1805 |
-# User Luke Wagner <lw@×××××××.com> |
1806 |
-# Date 1299520258 28800 |
1807 |
-# Node ID 68203913d04cf5be53fd16278816183d5670ba5c |
1808 |
-# Parent 27e5814815491ebb68e474e453aff6c2ea908c43 |
1809 |
-Bug 618485 - Add missing 64-bit big-endian jsval_layout field (r=luke) |
1810 |
- |
1811 |
-diff --git a/js/src/jsval.h b/js/src/jsval.h |
1812 |
---- a/js/src/jsval.h |
1813 |
-+++ b/js/src/jsval.h |
1814 |
-@@ -342,16 +342,17 @@ typedef union jsval_layout |
1815 |
- JSValueTag tag : 17; |
1816 |
- uint64 payload47 : 47; |
1817 |
- } debugView; |
1818 |
- struct { |
1819 |
- union { |
1820 |
- int32 i32; |
1821 |
- uint32 u32; |
1822 |
- JSWhyMagic why; |
1823 |
-+ jsuword word; |
1824 |
- } payload; |
1825 |
- } s; |
1826 |
- double asDouble; |
1827 |
- void *asPtr; |
1828 |
- } jsval_layout; |
1829 |
- # endif /* JS_BITS_PER_WORD */ |
1830 |
- #endif /* defined(IS_LITTLE_ENDIAN) */ |
1831 |
- |
1832 |
- |
1833 |
- |
1834 |
- |
1835 |
|
1836 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-gcc6.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-gcc6.patch |
1837 |
deleted file mode 100644 |
1838 |
index ab2181faf63..00000000000 |
1839 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-gcc6.patch |
1840 |
+++ /dev/null |
1841 |
@@ -1,144 +0,0 @@ |
1842 |
-diff -upr a/js/src/jsapi.cpp b/js/src/jsapi.cpp |
1843 |
---- a/js/src/jsapi.cpp 2011-03-31 14:08:36.000000000 -0500 |
1844 |
-+++ b/js/src/jsapi.cpp 2016-02-29 18:10:49.302307353 -0600 |
1845 |
-@@ -3985,7 +3985,7 @@ JS_Enumerate(JSContext *cx, JSObject *ob |
1846 |
- AutoIdVector props(cx); |
1847 |
- JSIdArray *ida; |
1848 |
- if (!GetPropertyNames(cx, obj, JSITER_OWNONLY, &props) || !VectorToIdArray(cx, props, &ida)) |
1849 |
-- return false; |
1850 |
-+ return NULL; |
1851 |
- for (size_t n = 0; n < size_t(ida->length); ++n) |
1852 |
- JS_ASSERT(js_CheckForStringIndex(ida->vector[n]) == ida->vector[n]); |
1853 |
- return ida; |
1854 |
-diff -upr a/js/src/jsfun.cpp b/js/src/jsfun.cpp |
1855 |
---- a/js/src/jsfun.cpp 2011-03-31 14:08:36.000000000 -0500 |
1856 |
-+++ b/js/src/jsfun.cpp 2016-02-29 18:21:45.249674890 -0600 |
1857 |
-@@ -2051,7 +2051,7 @@ fun_toStringHelper(JSContext *cx, JSObje |
1858 |
- |
1859 |
- JSString *str = JS_DecompileFunction(cx, fun, indent); |
1860 |
- if (!str) |
1861 |
-- return false; |
1862 |
-+ return NULL; |
1863 |
- |
1864 |
- if (!indent) |
1865 |
- cx->compartment->toSourceCache.put(fun, str); |
1866 |
-@@ -2657,7 +2657,7 @@ LookupInterpretedFunctionPrototype(JSCon |
1867 |
- const Shape *shape = funobj->nativeLookup(id); |
1868 |
- if (!shape) { |
1869 |
- if (!ResolveInterpretedFunctionPrototype(cx, funobj)) |
1870 |
-- return false; |
1871 |
-+ return NULL; |
1872 |
- shape = funobj->nativeLookup(id); |
1873 |
- } |
1874 |
- JS_ASSERT(!shape->configurable()); |
1875 |
-diff -upr a/js/src/jsiter.cpp b/js/src/jsiter.cpp |
1876 |
---- a/js/src/jsiter.cpp 2011-03-31 14:08:36.000000000 -0500 |
1877 |
-+++ b/js/src/jsiter.cpp 2016-02-29 18:24:22.494659919 -0600 |
1878 |
-@@ -425,7 +425,7 @@ NewIteratorObject(JSContext *cx, uintN f |
1879 |
- */ |
1880 |
- JSObject *obj = js_NewGCObject(cx, FINALIZE_OBJECT0); |
1881 |
- if (!obj) |
1882 |
-- return false; |
1883 |
-+ return NULL; |
1884 |
- obj->init(cx, &js_IteratorClass, NULL, NULL, NULL, false); |
1885 |
- obj->setMap(cx->compartment->emptyEnumeratorShape); |
1886 |
- return obj; |
1887 |
-diff -upr a/js/src/jsparse.cpp b/js/src/jsparse.cpp |
1888 |
---- a/js/src/jsparse.cpp 2011-03-31 14:08:36.000000000 -0500 |
1889 |
-+++ b/js/src/jsparse.cpp 2016-02-29 18:29:03.997437475 -0600 |
1890 |
-@@ -3352,7 +3352,7 @@ Parser::functionDef(JSAtom *funAtom, Fun |
1891 |
- if (!outertc->inFunction() && bodyLevel && funAtom && !lambda && outertc->compiling()) { |
1892 |
- JS_ASSERT(pn->pn_cookie.isFree()); |
1893 |
- if (!DefineGlobal(pn, outertc->asCodeGenerator(), funAtom)) |
1894 |
-- return false; |
1895 |
-+ return NULL; |
1896 |
- } |
1897 |
- |
1898 |
- pn->pn_blockid = outertc->blockid(); |
1899 |
-diff -upr a/js/src/jsstr.cpp b/js/src/jsstr.cpp |
1900 |
---- a/js/src/jsstr.cpp 2011-03-31 14:08:36.000000000 -0500 |
1901 |
-+++ b/js/src/jsstr.cpp 2016-02-29 19:01:45.857779836 -0600 |
1902 |
-@@ -1734,7 +1734,7 @@ class RegExpGuard |
1903 |
- if (flat) { |
1904 |
- patstr = flattenPattern(cx, fm.patstr); |
1905 |
- if (!patstr) |
1906 |
-- return false; |
1907 |
-+ return NULL; |
1908 |
- } else { |
1909 |
- patstr = fm.patstr; |
1910 |
- } |
1911 |
-@@ -3400,7 +3400,7 @@ js_InitStringClass(JSContext *cx, JSObje |
1912 |
- UndefinedValue(), NULL, NULL, |
1913 |
- JSPROP_READONLY | JSPROP_PERMANENT | JSPROP_SHARED, 0, 0, |
1914 |
- NULL)) { |
1915 |
-- return JS_FALSE; |
1916 |
-+ return NULL; |
1917 |
- } |
1918 |
- |
1919 |
- return proto; |
1920 |
-diff -upr a/js/src/jstypedarray.cpp b/js/src/jstypedarray.cpp |
1921 |
---- a/js/src/jstypedarray.cpp 2011-03-31 14:08:36.000000000 -0500 |
1922 |
-+++ b/js/src/jstypedarray.cpp 2016-02-29 19:08:53.541136191 -0600 |
1923 |
-@@ -1334,7 +1334,7 @@ class TypedArrayTemplate |
1924 |
- if (size != 0 && count >= INT32_MAX / size) { |
1925 |
- JS_ReportErrorNumber(cx, js_GetErrorMessage, NULL, |
1926 |
- JSMSG_NEED_DIET, "size and count"); |
1927 |
-- return false; |
1928 |
-+ return NULL; |
1929 |
- } |
1930 |
- |
1931 |
- int32 bytelen = size * count; |
1932 |
-@@ -1668,7 +1668,7 @@ TypedArrayConstruct(JSContext *cx, jsint |
1933 |
- |
1934 |
- default: |
1935 |
- JS_NOT_REACHED("shouldn't have gotten here"); |
1936 |
-- return false; |
1937 |
-+ return NULL; |
1938 |
- } |
1939 |
- } |
1940 |
- |
1941 |
-diff -upr a/js/src/jsxml.cpp b/js/src/jsxml.cpp |
1942 |
---- a/js/src/jsxml.cpp 2011-03-31 14:08:36.000000000 -0500 |
1943 |
-+++ b/js/src/jsxml.cpp 2016-02-29 19:17:10.363279731 -0600 |
1944 |
-@@ -282,7 +282,7 @@ NewXMLNamespace(JSContext *cx, JSLinearS |
1945 |
- |
1946 |
- obj = NewBuiltinClassInstanceXML(cx, &js_NamespaceClass); |
1947 |
- if (!obj) |
1948 |
-- return JS_FALSE; |
1949 |
-+ return NULL; |
1950 |
- JS_ASSERT(JSVAL_IS_VOID(obj->getNamePrefixVal())); |
1951 |
- JS_ASSERT(JSVAL_IS_VOID(obj->getNameURIVal())); |
1952 |
- JS_ASSERT(JSVAL_IS_VOID(obj->getNamespaceDeclared())); |
1953 |
-@@ -431,7 +431,7 @@ ConvertQNameToString(JSContext *cx, JSOb |
1954 |
- size_t length = str->length(); |
1955 |
- jschar *chars = (jschar *) cx->malloc((length + 2) * sizeof(jschar)); |
1956 |
- if (!chars) |
1957 |
-- return JS_FALSE; |
1958 |
-+ return NULL; |
1959 |
- *chars = '@'; |
1960 |
- const jschar *strChars = str->getChars(cx); |
1961 |
- if (!strChars) { |
1962 |
-diff -upr a/js/src/methodjit/InvokeHelpers.cpp b/js/src/methodjit/InvokeHelpers.cpp |
1963 |
---- a/js/src/methodjit/InvokeHelpers.cpp 2011-03-31 14:08:36.000000000 -0500 |
1964 |
-+++ b/js/src/methodjit/InvokeHelpers.cpp 2016-02-29 20:34:14.496983346 -0600 |
1965 |
-@@ -728,7 +728,7 @@ AtSafePoint(JSContext *cx) |
1966 |
- { |
1967 |
- JSStackFrame *fp = cx->fp(); |
1968 |
- if (fp->hasImacropc()) |
1969 |
-- return false; |
1970 |
-+ return NULL; |
1971 |
- |
1972 |
- JSScript *script = fp->script(); |
1973 |
- return script->maybeNativeCodeForPC(fp->isConstructing(), cx->regs->pc); |
1974 |
-diff -upr a/js/src/nanojit/NativeX64.cpp b/js/src/nanojit/NativeX64.cpp |
1975 |
---- a/js/src/nanojit/NativeX64.cpp 2011-03-31 14:08:36.000000000 -0500 |
1976 |
-+++ b/js/src/nanojit/NativeX64.cpp 2016-02-29 20:19:56.487934808 -0600 |
1977 |
-@@ -1899,7 +1899,7 @@ namespace nanojit |
1978 |
- } |
1979 |
- } |
1980 |
- |
1981 |
-- static const AVMPLUS_ALIGN16(int64_t) negateMask[] = {0x8000000000000000LL,0}; |
1982 |
-+ static const AVMPLUS_ALIGN16(int64_t) negateMask[] = {int64_t(0x8000000000000000LL),0}; |
1983 |
- |
1984 |
- void Assembler::asm_fneg(LIns *ins) { |
1985 |
- Register rr, ra; |
1986 |
|
1987 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-ia64-fix.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-ia64-fix.patch |
1988 |
deleted file mode 100644 |
1989 |
index bebe5587180..00000000000 |
1990 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-ia64-fix.patch |
1991 |
+++ /dev/null |
1992 |
@@ -1,53 +0,0 @@ |
1993 |
-https://bugzilla.mozilla.org/show_bug.cgi?id=589735 |
1994 |
- |
1995 |
---- a/js/src/jsgcchunk.cpp 2011-03-31 21:08:36.000000000 +0200 |
1996 |
-+++ b/js/src/jsgcchunk.cpp 2012-11-02 10:36:08.324453878 +0100 |
1997 |
-@@ -318,15 +318,48 @@ |
1998 |
- static void * |
1999 |
- MapPages(void *addr, size_t size) |
2000 |
- { |
2001 |
-+#if defined(__ia64__) |
2002 |
-+ /* |
2003 |
-+ * The JS engine assumes that all allocated pointers have their high 17 bits clear, |
2004 |
-+ * which ia64's mmap doesn't support directly. However, we can emulate it by passing |
2005 |
-+ * mmap an "addr" parameter with those bits clear. The mmap will return that address, |
2006 |
-+ * or the nearest available memory above that address, providing a near-guarantee |
2007 |
-+ * that those bits are clear. If they are not, we return NULL below to indicate |
2008 |
-+ * out-of-memory. |
2009 |
-+ * |
2010 |
-+ * The addr is chosen as 0x0000070000000000, which still allows about 120TB of virtual |
2011 |
-+ * address space. |
2012 |
-+ * |
2013 |
-+ * See Bug 589735 for more information. |
2014 |
-+ */ |
2015 |
-+#endif |
2016 |
-+ |
2017 |
- /* |
2018 |
- * We don't use MAP_FIXED here, because it can cause the *replacement* |
2019 |
- * of existing mappings, and we only want to create new mappings. |
2020 |
- */ |
2021 |
-+#if defined(__ia64__) |
2022 |
-+ void *p = mmap(addr ? addr : (void*)0x0000070000000000, |
2023 |
-+ size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, |
2024 |
-+ -1, 0); |
2025 |
-+#else |
2026 |
- void *p = mmap(addr, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, |
2027 |
- -1, 0); |
2028 |
-+#endif |
2029 |
- if (p == MAP_FAILED) |
2030 |
- return NULL; |
2031 |
-+#if defined(__ia64__) |
2032 |
-+ /* |
2033 |
-+ * If the caller requested a specific memory location, verify that's what mmap returned. |
2034 |
-+ * Otherwise: If the allocated memory doesn't have its upper 17 bits clear, consider it |
2035 |
-+ * as out of memory. |
2036 |
-+ */ |
2037 |
-+ if (addr && p != addr |
2038 |
-+ || !addr && ((long long)p & 0xffff800000000000)) { |
2039 |
-+#else |
2040 |
-+ /* If the caller requested a specific memory location, verify that's what mmap returned. */ |
2041 |
- if (addr && p != addr) { |
2042 |
-+#endif |
2043 |
- /* We succeeded in mapping memory, but not in the right place. */ |
2044 |
- JS_ALWAYS_TRUE(munmap(p, size) == 0); |
2045 |
- return NULL; |
2046 |
|
2047 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-ia64-static-strings.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-ia64-static-strings.patch |
2048 |
deleted file mode 100644 |
2049 |
index 5cfed32ae68..00000000000 |
2050 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-ia64-static-strings.patch |
2051 |
+++ /dev/null |
2052 |
@@ -1,381 +0,0 @@ |
2053 |
-https://bugzilla.mozilla.org/show_bug.cgi?id=589735 |
2054 |
- |
2055 |
---- a/js/src/jsatom.cpp 2011-03-31 21:08:36.000000000 +0200 |
2056 |
-+++ b/js/src/jsatom.cpp 2012-11-02 10:43:16.970562590 +0100 |
2057 |
-@@ -603,11 +603,13 @@ |
2058 |
- JSString str, *str2; |
2059 |
- JSAtomState *state; |
2060 |
- |
2061 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2062 |
- if (length == 1) { |
2063 |
- jschar c = *chars; |
2064 |
- if (c < UNIT_STRING_LIMIT) |
2065 |
- return STRING_TO_ATOM(JSString::unitString(c)); |
2066 |
- } |
2067 |
-+#endif |
2068 |
- |
2069 |
- str.initFlatNotTerminated((jschar *)chars, length); |
2070 |
- state = &cx->runtime->atomState; |
2071 |
---- a/js/src/jsiter.cpp 2011-03-31 21:08:36.000000000 +0200 |
2072 |
-+++ b/js/src/jsiter.cpp 2012-11-02 10:43:16.974562590 +0100 |
2073 |
-@@ -1002,9 +1002,12 @@ |
2074 |
- |
2075 |
- JSString *str; |
2076 |
- jsint i; |
2077 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2078 |
- if (rval->isInt32() && (jsuint(i = rval->toInt32()) < INT_STRING_LIMIT)) { |
2079 |
- str = JSString::intString(i); |
2080 |
-- } else { |
2081 |
-+ } else |
2082 |
-+#endif |
2083 |
-+ { |
2084 |
- str = js_ValueToString(cx, *rval); |
2085 |
- if (!str) |
2086 |
- return false; |
2087 |
---- a/js/src/jsnum.cpp 2011-03-31 21:08:36.000000000 +0200 |
2088 |
-+++ b/js/src/jsnum.cpp 2012-11-02 10:43:16.982562589 +0100 |
2089 |
-@@ -605,8 +605,10 @@ |
2090 |
- { |
2091 |
- uint32 ui; |
2092 |
- if (si >= 0) { |
2093 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2094 |
- if (si < INT_STRING_LIMIT) |
2095 |
- return JSString::intString(si); |
2096 |
-+#endif |
2097 |
- ui = si; |
2098 |
- } else { |
2099 |
- ui = uint32(-si); |
2100 |
-@@ -1169,6 +1171,7 @@ |
2101 |
- |
2102 |
- int32_t i; |
2103 |
- if (JSDOUBLE_IS_INT32(d, &i)) { |
2104 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2105 |
- if (base == 10 && jsuint(i) < INT_STRING_LIMIT) |
2106 |
- return JSString::intString(i); |
2107 |
- if (jsuint(i) < jsuint(base)) { |
2108 |
-@@ -1176,6 +1179,7 @@ |
2109 |
- return JSString::intString(i); |
2110 |
- return JSString::unitString(jschar('a' + i - 10)); |
2111 |
- } |
2112 |
-+#endif |
2113 |
- |
2114 |
- if (JSString *str = c->dtoaCache.lookup(base, d)) |
2115 |
- return str; |
2116 |
---- a/js/src/jsstr.cpp 2011-03-31 21:08:36.000000000 +0200 |
2117 |
-+++ b/js/src/jsstr.cpp 2012-11-02 10:43:16.990562588 +0100 |
2118 |
-@@ -3121,6 +3121,8 @@ |
2119 |
- JS_FS_END |
2120 |
- }; |
2121 |
- |
2122 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2123 |
-+ |
2124 |
- /* |
2125 |
- * Set up some tools to make it easier to generate large tables. After constant |
2126 |
- * folding, for each n, Rn(0) is the comma-separated list R(0), R(1), ..., R(2^n-1). |
2127 |
-@@ -3291,6 +3293,8 @@ |
2128 |
- #undef R3 |
2129 |
- #undef R7 |
2130 |
- |
2131 |
-+#endif /* defined(JS_HAS_STATIC_STRINGS) */ |
2132 |
-+ |
2133 |
- JSBool |
2134 |
- js_String(JSContext *cx, uintN argc, Value *vp) |
2135 |
- { |
2136 |
-@@ -3331,6 +3335,7 @@ |
2137 |
- uint16_t code; |
2138 |
- if (!ValueToUint16(cx, argv[0], &code)) |
2139 |
- return JS_FALSE; |
2140 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2141 |
- if (code < UNIT_STRING_LIMIT) { |
2142 |
- str = JSString::unitString(code); |
2143 |
- if (!str) |
2144 |
-@@ -3338,6 +3343,7 @@ |
2145 |
- vp->setString(str); |
2146 |
- return JS_TRUE; |
2147 |
- } |
2148 |
-+#endif |
2149 |
- argv[0].setInt32(code); |
2150 |
- } |
2151 |
- chars = (jschar *) cx->malloc((argc + 1) * sizeof(jschar)); |
2152 |
-@@ -3367,8 +3373,10 @@ |
2153 |
- { |
2154 |
- JS_ASSERT(JS_ON_TRACE(cx)); |
2155 |
- jschar c = (jschar)i; |
2156 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2157 |
- if (c < UNIT_STRING_LIMIT) |
2158 |
- return JSString::unitString(c); |
2159 |
-+#endif |
2160 |
- return js_NewStringCopyN(cx, &c, 1); |
2161 |
- } |
2162 |
- #endif |
2163 |
---- a/js/src/jsstr.h 2011-03-31 21:08:36.000000000 +0200 |
2164 |
-+++ b/js/src/jsstr.h 2012-11-02 10:43:16.998562587 +0100 |
2165 |
-@@ -57,6 +57,15 @@ |
2166 |
- #include "jsvalue.h" |
2167 |
- #include "jscell.h" |
2168 |
- |
2169 |
-+#if !defined(__ia64__) |
2170 |
-+/* |
2171 |
-+ * Don't use static strings on ia64 since the compiler may put the static |
2172 |
-+ * memory out of the acceptable 47-bit jsval pointer range. |
2173 |
-+ */ |
2174 |
-+# define JS_HAS_STATIC_STRINGS |
2175 |
-+#endif |
2176 |
-+ |
2177 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2178 |
- enum { |
2179 |
- UNIT_STRING_LIMIT = 256U, |
2180 |
- SMALL_CHAR_LIMIT = 128U, /* Bigger chars cannot be in a length-2 string. */ |
2181 |
-@@ -64,6 +73,7 @@ |
2182 |
- INT_STRING_LIMIT = 256U, |
2183 |
- NUM_HUNDRED_STRINGS = 156U |
2184 |
- }; |
2185 |
-+#endif |
2186 |
- |
2187 |
- extern jschar * |
2188 |
- js_GetDependentStringChars(JSString *str); |
2189 |
-@@ -380,10 +390,15 @@ |
2190 |
- typedef uint8 SmallChar; |
2191 |
- |
2192 |
- static inline bool fitsInSmallChar(jschar c) { |
2193 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2194 |
- return c < SMALL_CHAR_LIMIT && toSmallChar[c] != INVALID_SMALL_CHAR; |
2195 |
-+#else |
2196 |
-+ return false; |
2197 |
-+#endif |
2198 |
- } |
2199 |
- |
2200 |
- static inline bool isUnitString(void *ptr) { |
2201 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2202 |
- jsuword delta = reinterpret_cast<jsuword>(ptr) - |
2203 |
- reinterpret_cast<jsuword>(unitStringTable); |
2204 |
- if (delta >= UNIT_STRING_LIMIT * sizeof(JSString)) |
2205 |
-@@ -392,9 +407,13 @@ |
2206 |
- /* If ptr points inside the static array, it must be well-aligned. */ |
2207 |
- JS_ASSERT(delta % sizeof(JSString) == 0); |
2208 |
- return true; |
2209 |
-+#else |
2210 |
-+ return false; |
2211 |
-+#endif |
2212 |
- } |
2213 |
- |
2214 |
- static inline bool isLength2String(void *ptr) { |
2215 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2216 |
- jsuword delta = reinterpret_cast<jsuword>(ptr) - |
2217 |
- reinterpret_cast<jsuword>(length2StringTable); |
2218 |
- if (delta >= NUM_SMALL_CHARS * NUM_SMALL_CHARS * sizeof(JSString)) |
2219 |
-@@ -403,9 +422,13 @@ |
2220 |
- /* If ptr points inside the static array, it must be well-aligned. */ |
2221 |
- JS_ASSERT(delta % sizeof(JSString) == 0); |
2222 |
- return true; |
2223 |
-+#else |
2224 |
-+ return false; |
2225 |
-+#endif |
2226 |
- } |
2227 |
- |
2228 |
- static inline bool isHundredString(void *ptr) { |
2229 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2230 |
- jsuword delta = reinterpret_cast<jsuword>(ptr) - |
2231 |
- reinterpret_cast<jsuword>(hundredStringTable); |
2232 |
- if (delta >= NUM_HUNDRED_STRINGS * sizeof(JSString)) |
2233 |
-@@ -414,6 +437,9 @@ |
2234 |
- /* If ptr points inside the static array, it must be well-aligned. */ |
2235 |
- JS_ASSERT(delta % sizeof(JSString) == 0); |
2236 |
- return true; |
2237 |
-+#else |
2238 |
-+ return false; |
2239 |
-+#endif |
2240 |
- } |
2241 |
- |
2242 |
- static inline bool isStatic(void *ptr) { |
2243 |
-@@ -424,6 +450,7 @@ |
2244 |
- #pragma align 8 (__1cIJSStringPunitStringTable_, __1cIJSStringSlength2StringTable_, __1cIJSStringShundredStringTable_) |
2245 |
- #endif |
2246 |
- |
2247 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2248 |
- static const SmallChar INVALID_SMALL_CHAR = -1; |
2249 |
- |
2250 |
- static const jschar fromSmallChar[]; |
2251 |
-@@ -436,6 +463,7 @@ |
2252 |
- * strings, we keep a table to map from integer to the correct string. |
2253 |
- */ |
2254 |
- static const JSString *const intStringTable[]; |
2255 |
-+#endif |
2256 |
- |
2257 |
- static JSFlatString *unitString(jschar c); |
2258 |
- static JSLinearString *getUnitString(JSContext *cx, JSString *str, size_t index); |
2259 |
---- a/js/src/jsstrinlines.h 2011-03-31 21:08:36.000000000 +0200 |
2260 |
-+++ b/js/src/jsstrinlines.h 2012-11-02 10:43:17.010562586 +0100 |
2261 |
-@@ -215,52 +215,75 @@ |
2262 |
- inline JSFlatString * |
2263 |
- JSString::unitString(jschar c) |
2264 |
- { |
2265 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2266 |
- JS_ASSERT(c < UNIT_STRING_LIMIT); |
2267 |
- return const_cast<JSString *>(&unitStringTable[c])->assertIsFlat(); |
2268 |
-+#else |
2269 |
-+ JS_NOT_REACHED("no static strings"); |
2270 |
-+ return NULL; |
2271 |
-+#endif |
2272 |
- } |
2273 |
- |
2274 |
- inline JSLinearString * |
2275 |
- JSString::getUnitString(JSContext *cx, JSString *str, size_t index) |
2276 |
- { |
2277 |
- JS_ASSERT(index < str->length()); |
2278 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2279 |
- const jschar *chars = str->getChars(cx); |
2280 |
- if (!chars) |
2281 |
- return NULL; |
2282 |
- jschar c = chars[index]; |
2283 |
- if (c < UNIT_STRING_LIMIT) |
2284 |
- return unitString(c); |
2285 |
-+#endif |
2286 |
- return js_NewDependentString(cx, str, index, 1); |
2287 |
- } |
2288 |
- |
2289 |
- inline JSFlatString * |
2290 |
- JSString::length2String(jschar c1, jschar c2) |
2291 |
- { |
2292 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2293 |
- JS_ASSERT(fitsInSmallChar(c1)); |
2294 |
- JS_ASSERT(fitsInSmallChar(c2)); |
2295 |
- return const_cast<JSString *> ( |
2296 |
- &length2StringTable[(((size_t)toSmallChar[c1]) << 6) + toSmallChar[c2]] |
2297 |
- )->assertIsFlat(); |
2298 |
-+#else |
2299 |
-+ JS_NOT_REACHED("no static strings"); |
2300 |
-+ return NULL; |
2301 |
-+#endif |
2302 |
- } |
2303 |
- |
2304 |
- inline JSFlatString * |
2305 |
- JSString::length2String(uint32 i) |
2306 |
- { |
2307 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2308 |
- JS_ASSERT(i < 100); |
2309 |
- return length2String('0' + i / 10, '0' + i % 10); |
2310 |
-+#else |
2311 |
-+ JS_NOT_REACHED("no static strings"); |
2312 |
-+ return NULL; |
2313 |
-+#endif |
2314 |
- } |
2315 |
- |
2316 |
- inline JSFlatString * |
2317 |
- JSString::intString(jsint i) |
2318 |
- { |
2319 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2320 |
- jsuint u = jsuint(i); |
2321 |
- JS_ASSERT(u < INT_STRING_LIMIT); |
2322 |
- return const_cast<JSString *>(JSString::intStringTable[u])->assertIsFlat(); |
2323 |
-+#else |
2324 |
-+ JS_NOT_REACHED("no static strings"); |
2325 |
-+ return NULL; |
2326 |
-+#endif |
2327 |
- } |
2328 |
- |
2329 |
- /* Get a static atomized string for chars if possible. */ |
2330 |
- inline JSFlatString * |
2331 |
- JSString::lookupStaticString(const jschar *chars, size_t length) |
2332 |
- { |
2333 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2334 |
- if (length == 1) { |
2335 |
- if (chars[0] < UNIT_STRING_LIMIT) |
2336 |
- return unitString(chars[0]); |
2337 |
-@@ -290,6 +313,7 @@ |
2338 |
- return intString(i); |
2339 |
- } |
2340 |
- } |
2341 |
-+#endif |
2342 |
- |
2343 |
- return NULL; |
2344 |
- } |
2345 |
---- a/js/src/jstracer.cpp 2011-03-31 21:08:36.000000000 +0200 |
2346 |
-+++ b/js/src/jstracer.cpp 2012-11-02 10:43:17.022562584 +0100 |
2347 |
-@@ -11505,6 +11505,7 @@ |
2348 |
- } |
2349 |
- if (vp[1].isString()) { |
2350 |
- JSString *str = vp[1].toString(); |
2351 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2352 |
- if (native == js_str_charAt) { |
2353 |
- jsdouble i = vp[2].toNumber(); |
2354 |
- if (JSDOUBLE_IS_NaN(i)) |
2355 |
-@@ -11518,7 +11519,9 @@ |
2356 |
- set(&vp[0], char_ins); |
2357 |
- pendingSpecializedNative = IGNORE_NATIVE_CALL_COMPLETE_CALLBACK; |
2358 |
- return RECORD_CONTINUE; |
2359 |
-- } else if (native == js_str_charCodeAt) { |
2360 |
-+ } else |
2361 |
-+#endif |
2362 |
-+ if (native == js_str_charCodeAt) { |
2363 |
- jsdouble i = vp[2].toNumber(); |
2364 |
- if (JSDOUBLE_IS_NaN(i)) |
2365 |
- i = 0; |
2366 |
-@@ -12967,6 +12970,7 @@ |
2367 |
- JS_STATIC_ASSERT(sizeof(JSString) == 16 || sizeof(JSString) == 32); |
2368 |
- |
2369 |
- |
2370 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2371 |
- JS_REQUIRES_STACK LIns* |
2372 |
- TraceRecorder::getUnitString(LIns* str_ins, LIns* idx_ins) |
2373 |
- { |
2374 |
-@@ -13010,6 +13014,7 @@ |
2375 |
- } |
2376 |
- return RECORD_CONTINUE; |
2377 |
- } |
2378 |
-+#endif |
2379 |
- |
2380 |
- // Typed array tracing depends on EXPANDED_LOADSTORE and F2I |
2381 |
- #if NJ_EXPANDED_LOADSTORE_SUPPORTED && NJ_F2I_SUPPORTED |
2382 |
-@@ -13044,6 +13049,7 @@ |
2383 |
- LIns* obj_ins = get(&lval); |
2384 |
- LIns* idx_ins = get(&idx); |
2385 |
- |
2386 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2387 |
- // Special case for array-like access of strings. |
2388 |
- if (lval.isString() && hasInt32Repr(idx)) { |
2389 |
- if (call) |
2390 |
-@@ -13056,6 +13062,7 @@ |
2391 |
- set(&lval, char_ins); |
2392 |
- return ARECORD_CONTINUE; |
2393 |
- } |
2394 |
-+#endif |
2395 |
- |
2396 |
- if (lval.isPrimitive()) |
2397 |
- RETURN_STOP_A("JSOP_GETLEM on a primitive"); |
2398 |
---- a/js/src/jstracer.h 2011-03-31 21:08:36.000000000 +0200 |
2399 |
-+++ b/js/src/jstracer.h 2012-11-02 10:43:17.034562582 +0100 |
2400 |
-@@ -1394,10 +1394,12 @@ |
2401 |
- JS_REQUIRES_STACK RecordingStatus getCharCodeAt(JSString *str, |
2402 |
- nanojit::LIns* str_ins, nanojit::LIns* idx_ins, |
2403 |
- nanojit::LIns** out_ins); |
2404 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2405 |
- JS_REQUIRES_STACK nanojit::LIns* getUnitString(nanojit::LIns* str_ins, nanojit::LIns* idx_ins); |
2406 |
- JS_REQUIRES_STACK RecordingStatus getCharAt(JSString *str, |
2407 |
- nanojit::LIns* str_ins, nanojit::LIns* idx_ins, |
2408 |
- JSOp mode, nanojit::LIns** out_ins); |
2409 |
-+#endif |
2410 |
- |
2411 |
- JS_REQUIRES_STACK RecordingStatus initOrSetPropertyByName(nanojit::LIns* obj_ins, |
2412 |
- Value* idvalp, Value* rvalp, |
2413 |
---- a/js/src/tracejit/Writer.cpp 2011-03-31 21:08:36.000000000 +0200 |
2414 |
-+++ b/js/src/tracejit/Writer.cpp 2012-11-02 10:43:17.038562582 +0100 |
2415 |
-@@ -246,7 +246,9 @@ |
2416 |
- // ins = andq ins_oprnd1, ins_oprnd2 |
2417 |
- ret = true; |
2418 |
- #endif |
2419 |
-- } else if (ins->isop(LIR_addp) && |
2420 |
-+ } |
2421 |
-+#ifdef JS_HAS_STATIC_STRINGS |
2422 |
-+ else if (ins->isop(LIR_addp) && |
2423 |
- ((ins->oprnd1()->isImmP() && |
2424 |
- (void *)ins->oprnd1()->immP() == JSString::unitStringTable) || |
2425 |
- (ins->oprnd2()->isImmP() && |
2426 |
-@@ -258,6 +260,7 @@ |
2427 |
- // ins = addp JSString::unitStringTable, ... |
2428 |
- ret = true; |
2429 |
- } |
2430 |
-+#endif |
2431 |
- |
2432 |
- return ret; |
2433 |
- } |
2434 |
|
2435 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-isfinite.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-isfinite.patch |
2436 |
deleted file mode 100644 |
2437 |
index edf4d01e64b..00000000000 |
2438 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-isfinite.patch |
2439 |
+++ /dev/null |
2440 |
@@ -1,11 +0,0 @@ |
2441 |
---- js/src/jsnum.h 2011-03-03 05:43:06.000000000 -0500 |
2442 |
-+++ js/src/jsnum.h.new 2012-08-16 14:58:04.000000000 -0400 |
2443 |
-@@ -97,6 +97,8 @@ |
2444 |
- { |
2445 |
- #ifdef WIN32 |
2446 |
- return _finite(d); |
2447 |
-+#elif defined(__UCLIBC__) |
2448 |
-+ return isfinite(d); |
2449 |
- #else |
2450 |
- return finite(d); |
2451 |
- #endif |
2452 |
|
2453 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-perf_event-check.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-perf_event-check.patch |
2454 |
deleted file mode 100644 |
2455 |
index 66475b6c34c..00000000000 |
2456 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-perf_event-check.patch |
2457 |
+++ /dev/null |
2458 |
@@ -1,21 +0,0 @@ |
2459 |
---- a/js/src/configure.in 2012-11-01 19:42:20.130330321 +0100 |
2460 |
-+++ b/js/src/configure.in 2012-11-01 20:34:03.561351492 +0100 |
2461 |
-@@ -3477,7 +3477,16 @@ |
2462 |
- esac |
2463 |
- |
2464 |
- dnl Performance measurement headers. |
2465 |
--AC_CHECK_HEADER(linux/perf_event.h, HAVE_LINUX_PERF_EVENT_H=1) |
2466 |
-+AC_CHECK_HEADER(linux/perf_event.h, |
2467 |
-+ [AC_CACHE_CHECK(for perf_event_open system call,ac_cv_perf_event_open, |
2468 |
-+ [AC_TRY_COMPILE([#include <sys/syscall.h>],[return sizeof(__NR_perf_event_open);], |
2469 |
-+ ac_cv_perf_event_open=yes, |
2470 |
-+ ac_cv_perf_event_open=no)])]) |
2471 |
-+if test "$ac_cv_perf_event_open" = "yes"; then |
2472 |
-+ HAVE_LINUX_PERF_EVENT_H=1 |
2473 |
-+else |
2474 |
-+ HAVE_LINUX_PERF_EVENT_H= |
2475 |
-+fi |
2476 |
- AC_SUBST(HAVE_LINUX_PERF_EVENT_H) |
2477 |
- |
2478 |
- dnl Checks for libraries. |
2479 |
- |
2480 |
|
2481 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-symbol-versions.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-symbol-versions.patch |
2482 |
deleted file mode 100644 |
2483 |
index 460394d33f1..00000000000 |
2484 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-symbol-versions.patch |
2485 |
+++ /dev/null |
2486 |
@@ -1,32 +0,0 @@ |
2487 |
-diff -Naur js/src/configure.in js.new/src/configure.in |
2488 |
---- a/js/src/symverscript.in 2012-11-07 09:36:16.000000000 -0500 |
2489 |
-+++ b/js/src/symverscript.in 2012-11-07 09:37:05.000000000 -0500 |
2490 |
-@@ -0,0 +1,4 @@ |
2491 |
-+mozjs185 { |
2492 |
-+ global: *; |
2493 |
-+}; |
2494 |
-+ |
2495 |
-diff -Naur js/src/Makefile.in js.new/src/Makefile.in |
2496 |
---- a/js/src/Makefile.in 2012-11-07 09:36:16.000000000 -0500 |
2497 |
-+++ b/js/src/Makefile.in 2012-11-07 09:37:09.000000000 -0500 |
2498 |
-@@ -837,7 +837,10 @@ |
2499 |
- mozjs185.pc \ |
2500 |
- $(NULL) |
2501 |
- |
2502 |
--GARBAGE += $(pkg_config_files) |
2503 |
-+symverscript: symverscript.in |
2504 |
-+ cat $< > $@ |
2505 |
-+ |
2506 |
-+GARBAGE += $(pkg_config_files) symverscript |
2507 |
- |
2508 |
- %.pc: $(srcdir)/%.pc.in Makefile |
2509 |
- cat $< | sed \ |
2510 |
-@@ -872,6 +875,8 @@ |
2511 |
- SHLIB_ABI_VER := $(DESTDIR)$(libdir)/$(SHARED_LIBRARY).$(SRCREL_ABI_VERSION) |
2512 |
- SHLIB_EXACT_VER := $(DESTDIR)$(libdir)/$(SHARED_LIBRARY).$(SRCREL_VERSION) |
2513 |
- $(SHARED_LIBRARY): EXTRA_DSO_LDOPTS += -Wl,-soname,$(notdir $(SHLIB_ABI_VER)) |
2514 |
-+$(SHARED_LIBRARY): EXTRA_DSO_LDOPTS += -Wl,-version-script,symverscript |
2515 |
-+$(SHARED_LIBRARY): symverscript |
2516 |
- endif |
2517 |
- endif |
2518 |
- |
2519 |
|
2520 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.7-freebsd-pthreads.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.7-freebsd-pthreads.patch |
2521 |
deleted file mode 100644 |
2522 |
index 4324df0d609..00000000000 |
2523 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.7-freebsd-pthreads.patch |
2524 |
+++ /dev/null |
2525 |
@@ -1,11 +0,0 @@ |
2526 |
---- a/js/src/config/system-headers |
2527 |
-+++ b/js/src/config/system-headers |
2528 |
-@@ -595,6 +595,7 @@ proto/exec.h |
2529 |
- psap.h |
2530 |
- Pt.h |
2531 |
- pthread.h |
2532 |
-+pthread_np.h |
2533 |
- pwd.h |
2534 |
- Python.h |
2535 |
- QDOffscreen.h |
2536 |
- |
2537 |
|
2538 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.7-x32.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.7-x32.patch |
2539 |
deleted file mode 100644 |
2540 |
index f14a269ee3f..00000000000 |
2541 |
--- a/dev-lang/spidermonkey/files/spidermonkey-1.8.7-x32.patch |
2542 |
+++ /dev/null |
2543 |
@@ -1,25 +0,0 @@ |
2544 |
---- a/js/src/jslock.cpp 2012-04-06 16:24:51.000000000 -0500 |
2545 |
-+++ b/js/src/jslock.cpp 2012-06-21 20:57:00.877937542 -0500 |
2546 |
-@@ -150,17 +150,22 @@ |
2547 |
- |
2548 |
- static JS_ALWAYS_INLINE int |
2549 |
- NativeCompareAndSwap(volatile jsword *w, jsword ov, jsword nv) |
2550 |
- { |
2551 |
- unsigned int res; |
2552 |
- |
2553 |
- __asm__ __volatile__ ( |
2554 |
- "lock\n" |
2555 |
-+/* GCC's x32 abi support */ |
2556 |
-+#if defined(__LP64__) |
2557 |
- "cmpxchgq %2, (%1)\n" |
2558 |
-+#else |
2559 |
-+ "cmpxchg %2, (%1)\n" |
2560 |
-+#endif |
2561 |
- "sete %%al\n" |
2562 |
- "movzbl %%al, %%eax\n" |
2563 |
- : "=a" (res) |
2564 |
- : "r" (w), "r" (nv), "a" (ov) |
2565 |
- : "cc", "memory"); |
2566 |
- return (int)res; |
2567 |
- } |
2568 |
- |
2569 |
|
2570 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-17-clang.patch b/dev-lang/spidermonkey/files/spidermonkey-17-clang.patch |
2571 |
deleted file mode 100644 |
2572 |
index 062bd06b777..00000000000 |
2573 |
--- a/dev-lang/spidermonkey/files/spidermonkey-17-clang.patch |
2574 |
+++ /dev/null |
2575 |
@@ -1,18 +0,0 @@ |
2576 |
-Fix compilation of spidermonkey-17 with clang |
2577 |
- |
2578 |
-Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=458142 |
2579 |
-Upstream-Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=887645 |
2580 |
- |
2581 |
-b/js/src/js-config.in |
2582 |
---- a/js/src/jsinterp.cpp 2016-06-03 00:08:04.376312080 -0500 |
2583 |
-+++ b/js/src/jsinterp.cpp 2016-06-03 00:12:17.740329180 -0500 |
2584 |
-@@ -3664,7 +3664,9 @@ |
2585 |
- BEGIN_CASE(JSOP_LEAVEFORLETIN) |
2586 |
- BEGIN_CASE(JSOP_LEAVEBLOCKEXPR) |
2587 |
- { |
2588 |
-+ #ifdef DEBUG |
2589 |
- DebugOnly<uint32_t> blockDepth = regs.fp()->blockChain().stackDepth(); |
2590 |
-+ #endif |
2591 |
- |
2592 |
- regs.fp()->popBlock(cx); |
2593 |
- |
2594 |
|
2595 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-17-fix_pointer_dereference.patch b/dev-lang/spidermonkey/files/spidermonkey-17-fix_pointer_dereference.patch |
2596 |
deleted file mode 100644 |
2597 |
index da6a49f637c..00000000000 |
2598 |
--- a/dev-lang/spidermonkey/files/spidermonkey-17-fix_pointer_dereference.patch |
2599 |
+++ /dev/null |
2600 |
@@ -1,30 +0,0 @@ |
2601 |
-# HG changeset patch |
2602 |
-# User Mike Hommey <mh+mozilla@××××××××.org> |
2603 |
-# Date 1373958382 -32400 |
2604 |
-# Tue Jul 16 16:06:22 2013 +0900 |
2605 |
-# Node ID 1880537f26d2ce22866974a8cdf1927dc66f6dbc |
2606 |
-# Parent 673ea5cd6ba7fc37086d1dab71ee4a6d6a77a1ab |
2607 |
-Bug 894240 - Fix pointer dereference in js::cli::OptionParser::extractValue |
2608 |
- |
2609 |
-diff --git a/js/src/shell/jsoptparse.cpp b/js/src/shell/jsoptparse.cpp |
2610 |
---- a/js/src/shell/jsoptparse.cpp |
2611 |
-+++ b/js/src/shell/jsoptparse.cpp |
2612 |
-@@ -248,17 +248,17 @@ OptionParser::printHelp(const char *prog |
2613 |
- |
2614 |
- OptionParser::Result |
2615 |
- OptionParser::extractValue(size_t argc, char **argv, size_t *i, char **value) |
2616 |
- { |
2617 |
- JS_ASSERT(*i < argc); |
2618 |
- char *eq = strchr(argv[*i], '='); |
2619 |
- if (eq) { |
2620 |
- *value = eq + 1; |
2621 |
-- if (value[0] == '\0') |
2622 |
-+ if (*value[0] == '\0') |
2623 |
- return error("A value is required for option %.*s", eq - argv[*i], argv[*i]); |
2624 |
- return Okay; |
2625 |
- } |
2626 |
- |
2627 |
- if (argc == *i + 1) |
2628 |
- return error("Expected a value for option %s", argv[*i]); |
2629 |
- |
2630 |
- *i += 1; |
2631 |
|
2632 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-17-ia64-mmap.patch b/dev-lang/spidermonkey/files/spidermonkey-17-ia64-mmap.patch |
2633 |
deleted file mode 100644 |
2634 |
index 7adbd118d40..00000000000 |
2635 |
--- a/dev-lang/spidermonkey/files/spidermonkey-17-ia64-mmap.patch |
2636 |
+++ /dev/null |
2637 |
@@ -1,67 +0,0 @@ |
2638 |
---- a/js/src/gc/Memory.cpp 2013-02-11 17:33:22.000000000 -0500 |
2639 |
-+++ b/js/src/gc/Memory.cpp 2014-01-08 12:36:29.406851422 -0500 |
2640 |
-@@ -302,10 +302,46 @@ |
2641 |
- void |
2642 |
- InitMemorySubsystem() |
2643 |
- { |
2644 |
-+#if !defined(__ia64__) |
2645 |
- if (size_t(sysconf(_SC_PAGESIZE)) != PageSize) |
2646 |
- MOZ_CRASH(); |
2647 |
-+#endif |
2648 |
- } |
2649 |
- |
2650 |
-+static inline void * |
2651 |
-+MapMemory(size_t length, int prot, int flags, int fd, off_t offset) |
2652 |
-+{ |
2653 |
-+#if defined(__ia64__) |
2654 |
-+ /* |
2655 |
-+ * The JS engine assumes that all allocated pointers have their high 17 bits clear, |
2656 |
-+ * which ia64's mmap doesn't support directly. However, we can emulate it by passing |
2657 |
-+ * mmap an "addr" parameter with those bits clear. The mmap will return that address, |
2658 |
-+ * or the nearest available memory above that address, providing a near-guarantee |
2659 |
-+ * that those bits are clear. If they are not, we return NULL below to indicate |
2660 |
-+ * out-of-memory. |
2661 |
-+ * |
2662 |
-+ * The addr is chosen as 0x0000070000000000, which still allows about 120TB of virtual |
2663 |
-+ * address space. |
2664 |
-+ * |
2665 |
-+ * See Bug 589735 for more information. |
2666 |
-+ */ |
2667 |
-+ void *region = mmap((void*)0x0000070000000000, length, prot, flags, fd, offset); |
2668 |
-+ if (region == MAP_FAILED) |
2669 |
-+ return MAP_FAILED; |
2670 |
-+ /* |
2671 |
-+ * If the allocated memory doesn't have its upper 17 bits clear, consider it |
2672 |
-+ * as out of memory. |
2673 |
-+ */ |
2674 |
-+ if ((uintptr_t(region) + (length - 1)) & 0xffff800000000000) { |
2675 |
-+ JS_ALWAYS_TRUE(0 == munmap(region, length)); |
2676 |
-+ return MAP_FAILED; |
2677 |
-+ } |
2678 |
-+ return region; |
2679 |
-+#else |
2680 |
-+ return mmap(NULL, length, prot, flags, fd, offset); |
2681 |
-+#endif |
2682 |
-+} |
2683 |
-+ |
2684 |
- void * |
2685 |
- MapAlignedPages(size_t size, size_t alignment) |
2686 |
- { |
2687 |
-@@ -319,12 +353,15 @@ |
2688 |
- |
2689 |
- /* Special case: If we want page alignment, no further work is needed. */ |
2690 |
- if (alignment == PageSize) { |
2691 |
-- return mmap(NULL, size, prot, flags, -1, 0); |
2692 |
-+ void *region = MapMemory(size, prot, flags, -1, 0); |
2693 |
-+ if (region == MAP_FAILED) |
2694 |
-+ return NULL; |
2695 |
-+ return region; |
2696 |
- } |
2697 |
- |
2698 |
- /* Overallocate and unmap the region's edges. */ |
2699 |
- size_t reqSize = Min(size + 2 * alignment, 2 * size); |
2700 |
-- void *region = mmap(NULL, reqSize, prot, flags, -1, 0); |
2701 |
-+ void *region = MapMemory(reqSize, prot, flags, -1, 0); |
2702 |
- if (region == MAP_FAILED) |
2703 |
- return NULL; |
2704 |
- |
2705 |
|
2706 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-17-js-config-shebang.patch b/dev-lang/spidermonkey/files/spidermonkey-17-js-config-shebang.patch |
2707 |
deleted file mode 100644 |
2708 |
index ec77b236828..00000000000 |
2709 |
--- a/dev-lang/spidermonkey/files/spidermonkey-17-js-config-shebang.patch |
2710 |
+++ /dev/null |
2711 |
@@ -1,22 +0,0 @@ |
2712 |
---- a/js/src/js-config.in 2013-03-25 16:34:20.000000000 -0400 |
2713 |
-+++ b/js/src/js-config.in 2013-08-09 22:15:29.000901763 -0400 |
2714 |
-@@ -2,7 +2,7 @@ |
2715 |
- # This Source Code Form is subject to the terms of the Mozilla Public |
2716 |
- # License, v. 2.0. If a copy of the MPL was not distributed with this |
2717 |
- # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
2718 |
--#filter substitution |
2719 |
-+%filter substitution |
2720 |
- |
2721 |
- prefix='@prefix@' |
2722 |
- mozilla_version='@MOZILLA_VERSION@' |
2723 |
---- a/js/src/Makefile.in 2013-03-25 16:34:20.000000000 -0400 |
2724 |
-+++ b/js/src/Makefile.in 2013-08-09 22:17:20.211903793 -0400 |
2725 |
-@@ -778,7 +778,7 @@ |
2726 |
- |
2727 |
- $(JS_CONFIG_NAME): js-config.in Makefile $(DEPTH)/config/autoconf.mk $(topsrcdir)/config/config.mk $(topsrcdir)/config/rules.mk |
2728 |
- $(RM) $@.tmp |
2729 |
-- $(PYTHON) $(topsrcdir)/config/Preprocessor.py $(JS_CONFIG_SUBSTITUTIONS) $< > $@.tmp \ |
2730 |
-+ $(PYTHON) $(topsrcdir)/config/Preprocessor.py --marker="%" $(JS_CONFIG_SUBSTITUTIONS) $< > $@.tmp \ |
2731 |
- && mv $@.tmp $@ && chmod +x $@ |
2732 |
- |
2733 |
- SCRIPTS = $(JS_CONFIG_NAME) |
2734 |
|
2735 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-17.0.0-fix-file-permissions.patch b/dev-lang/spidermonkey/files/spidermonkey-17.0.0-fix-file-permissions.patch |
2736 |
deleted file mode 100644 |
2737 |
index f4eee930542..00000000000 |
2738 |
--- a/dev-lang/spidermonkey/files/spidermonkey-17.0.0-fix-file-permissions.patch |
2739 |
+++ /dev/null |
2740 |
@@ -1,37 +0,0 @@ |
2741 |
-diff -urN a/js/src/Makefile.in b/js/src/Makefile.in |
2742 |
---- a/js/src/Makefile.in 2013-03-25 15:34:20.000000000 -0500 |
2743 |
-+++ b/js/src/Makefile.in 2014-03-08 08:26:36.726979744 -0600 |
2744 |
-@@ -788,7 +788,7 @@ |
2745 |
- $(PYTHON) $(topsrcdir)/config/Preprocessor.py $(JS_CONFIG_SUBSTITUTIONS) $< > $@ |
2746 |
- |
2747 |
- install:: $(LIBRARY_NAME).pc |
2748 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(libdir)/pkgconfig |
2749 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(libdir)/pkgconfig |
2750 |
- |
2751 |
- ###################################################### |
2752 |
- # BEGIN SpiderMonkey header installation |
2753 |
-@@ -836,19 +836,19 @@ |
2754 |
- # |
2755 |
- |
2756 |
- install:: $(INSTALLED_HEADERS) |
2757 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(MODULE) |
2758 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(MODULE) |
2759 |
- |
2760 |
- install:: $(EXPORTS_ds) |
2761 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(MODULE)/ds |
2762 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(MODULE)/ds |
2763 |
- |
2764 |
- install:: $(EXPORTS_gc) |
2765 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(MODULE)/gc |
2766 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(MODULE)/gc |
2767 |
- |
2768 |
- install:: $(EXPORTS_js) |
2769 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(MODULE)/js |
2770 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(MODULE)/js |
2771 |
- |
2772 |
- install:: $(EXPORTS_mozilla) |
2773 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(MODULE)/mozilla |
2774 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(MODULE)/mozilla |
2775 |
- |
2776 |
- # |
2777 |
- # END SpiderMonkey header installation |
2778 |
|
2779 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-24-system-icu.patch b/dev-lang/spidermonkey/files/spidermonkey-24-system-icu.patch |
2780 |
deleted file mode 100644 |
2781 |
index 59ba0c958ea..00000000000 |
2782 |
--- a/dev-lang/spidermonkey/files/spidermonkey-24-system-icu.patch |
2783 |
+++ /dev/null |
2784 |
@@ -1,199 +0,0 @@ |
2785 |
-diff --git a/js/src/Makefile.in b/js/src/Makefile.in |
2786 |
-index 4944d31..4176e14 100644 |
2787 |
---- a/js/src/Makefile.in |
2788 |
-+++ b/js/src/Makefile.in |
2789 |
-@@ -237,12 +237,17 @@ endif |
2790 |
- # ICU headers need to be available whether we build with the complete |
2791 |
- # Internationalization API or not - ICU stubs rely on them. |
2792 |
- |
2793 |
-+ifdef MOZ_NATIVE_ICU |
2794 |
-+LOCAL_INCLUDES += $(MOZ_ICU_CFLAGS) |
2795 |
-+else |
2796 |
- LOCAL_INCLUDES += \ |
2797 |
- -I$(topsrcdir)/../../intl/icu/source/common \ |
2798 |
- -I$(topsrcdir)/../../intl/icu/source/i18n \ |
2799 |
- $(NULL) |
2800 |
-+endif |
2801 |
- |
2802 |
- ifdef ENABLE_INTL_API |
2803 |
-+ifndef MOZ_NATIVE_ICU |
2804 |
- |
2805 |
- ifeq ($(OS_ARCH),WINNT) |
2806 |
- # Parallel gmake is buggy on Windows |
2807 |
-@@ -271,6 +276,7 @@ distclean clean:: |
2808 |
- $(call SUBMAKE,$@,intl/icu) |
2809 |
- |
2810 |
- endif |
2811 |
-+endif |
2812 |
- |
2813 |
- # |
2814 |
- # END ECMAScript Internationalization API |
2815 |
-@@ -403,7 +409,11 @@ ifneq (,$(MOZ_ZLIB_LIBS)$(MOZ_GLUE_LDFLAGS)) |
2816 |
- DEFINES += -DUSE_ZLIB |
2817 |
- endif |
2818 |
- |
2819 |
--SHARED_LIBRARY_LIBS += $(ICU_LIBS) |
2820 |
-+ifdef MOZ_NATIVE_ICU |
2821 |
-+EXTRA_DSO_LDOPTS += $(MOZ_ICU_LIBS) |
2822 |
-+else |
2823 |
-+SHARED_LIBRARY_LIBS += $(MOZ_ICU_LIBS) |
2824 |
-+endif |
2825 |
- |
2826 |
- # Prevent floating point errors caused by VC++ optimizations |
2827 |
- ifdef _MSC_VER |
2828 |
-diff --git a/js/src/config/Makefile.in b/js/src/config/Makefile.in |
2829 |
-index 5f60d15..e1fe1f8 100644 |
2830 |
---- a/js/src/config/Makefile.in |
2831 |
-+++ b/js/src/config/Makefile.in |
2832 |
-@@ -59,6 +59,7 @@ export:: \ |
2833 |
- $(call mkdir_deps,system_wrappers_js) \ |
2834 |
- $(NULL) |
2835 |
- $(PYTHON) $(srcdir)/Preprocessor.py $(DEFINES) $(ACDEFINES) \ |
2836 |
-+ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \ |
2837 |
- $(srcdir)/system-headers | $(PERL) $(srcdir)/make-system-wrappers.pl system_wrappers_js |
2838 |
- $(INSTALL) system_wrappers_js $(DIST) |
2839 |
- |
2840 |
-diff --git a/js/src/config/system-headers b/js/src/config/system-headers |
2841 |
-index b52aed6..1ca7420 100644 |
2842 |
---- a/js/src/config/system-headers |
2843 |
-+++ b/js/src/config/system-headers |
2844 |
-@@ -1132,3 +1132,14 @@ kvm.h |
2845 |
- spawn.h |
2846 |
- err.h |
2847 |
- xlocale.h |
2848 |
-+#if MOZ_NATIVE_ICU==1 |
2849 |
-+unicode/locid.h |
2850 |
-+unicode/numsys.h |
2851 |
-+unicode/ucal.h |
2852 |
-+unicode/ucol.h |
2853 |
-+unicode/udat.h |
2854 |
-+unicode/udatpg.h |
2855 |
-+unicode/uenum.h |
2856 |
-+unicode/unum.h |
2857 |
-+unicode/ustring.h |
2858 |
-+#endif |
2859 |
-diff --git a/js/src/configure.in b/js/src/configure.in |
2860 |
-index 4bccbe3..d535491 100644 |
2861 |
---- a/js/src/configure.in |
2862 |
-+++ b/js/src/configure.in |
2863 |
-@@ -4409,6 +4409,16 @@ fi |
2864 |
- dnl ======================================================== |
2865 |
- dnl ECMAScript Internationalization API Support (uses ICU) |
2866 |
- dnl ======================================================== |
2867 |
-+ICU_LIB_NAMES= |
2868 |
-+MOZ_NATIVE_ICU= |
2869 |
-+MOZ_ARG_WITH_BOOL(system-icu, |
2870 |
-+[ --with-system-icu |
2871 |
-+ Use system icu (located with pkgconfig)], |
2872 |
-+ MOZ_NATIVE_ICU=1) |
2873 |
-+ |
2874 |
-+if test -n "$MOZ_NATIVE_ICU"; then |
2875 |
-+ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1) |
2876 |
-+fi |
2877 |
- |
2878 |
- if test -n "$JS_STANDALONE"; then |
2879 |
- ENABLE_INTL_API=1 |
2880 |
-@@ -4421,37 +4431,34 @@ MOZ_ARG_ENABLE_BOOL(intl-api, |
2881 |
- dnl Settings for the implementation of the ECMAScript Internationalization API |
2882 |
- if test -n "$ENABLE_INTL_API"; then |
2883 |
- AC_DEFINE(ENABLE_INTL_API) |
2884 |
-- # We build ICU as a static library. |
2885 |
-- AC_DEFINE(U_STATIC_IMPLEMENTATION) |
2886 |
-- |
2887 |
-- case "$OS_TARGET" in |
2888 |
-- WINNT) |
2889 |
-- ICU_LIB_NAMES="icuin icuuc icudt" |
2890 |
-- ;; |
2891 |
-- Darwin|Linux) |
2892 |
-- ICU_LIB_NAMES="icui18n icuuc icudata" |
2893 |
-- ;; |
2894 |
-- *) |
2895 |
-- AC_MSG_ERROR([ECMAScript Internationalization API is not yet supported on this platform]) |
2896 |
-- esac |
2897 |
-- |
2898 |
-- ICU_LIBS='$(call EXPAND_LIBNAME_PATH,$(ICU_LIB_NAMES),$(DEPTH)/intl/icu/lib)' |
2899 |
--else |
2900 |
-- ICU_LIB_NAMES= |
2901 |
-- ICU_LIBS= |
2902 |
-+ if test -z "$MOZ_NATIVE_ICU"; then |
2903 |
-+ case "$OS_TARGET" in |
2904 |
-+ WINNT) |
2905 |
-+ ICU_LIB_NAMES="icuin icuuc icudt" |
2906 |
-+ ;; |
2907 |
-+ Darwin|Linux|DragonFly|FreeBSD|NetBSD|OpenBSD) |
2908 |
-+ ICU_LIB_NAMES="icui18n icuuc icudata" |
2909 |
-+ ;; |
2910 |
-+ *) |
2911 |
-+ AC_MSG_ERROR([ECMAScript Internationalization API is not yet supported on this platform]) |
2912 |
-+ esac |
2913 |
-+ MOZ_ICU_LIBS='$(call EXPAND_LIBNAME_PATH,$(ICU_LIB_NAMES),$(DEPTH)/intl/icu/lib)' |
2914 |
-+ fi |
2915 |
- fi |
2916 |
- |
2917 |
- AC_SUBST(ENABLE_INTL_API) |
2918 |
- AC_SUBST(ICU_LIB_NAMES) |
2919 |
--AC_SUBST(ICU_LIBS) |
2920 |
-- |
2921 |
--dnl Source files that use ICU should have control over which parts of the ICU |
2922 |
--dnl namespace they want to use. |
2923 |
--AC_DEFINE(U_USING_ICU_NAMESPACE,0) |
2924 |
-- |
2925 |
-+AC_SUBST(MOZ_ICU_LIBS) |
2926 |
-+AC_SUBST(MOZ_NATIVE_ICU) |
2927 |
- |
2928 |
- dnl Settings for ICU |
2929 |
--if test -n "$ENABLE_INTL_API" ; then |
2930 |
-+if test -n "$ENABLE_INTL_API" -a -z "$MOZ_NATIVE_ICU"; then |
2931 |
-+ dnl We build ICU as a static library. |
2932 |
-+ AC_DEFINE(U_STATIC_IMPLEMENTATION) |
2933 |
-+ |
2934 |
-+ dnl Source files that use ICU should have control over which parts of the ICU |
2935 |
-+ dnl namespace they want to use. |
2936 |
-+ AC_DEFINE(U_USING_ICU_NAMESPACE,0) |
2937 |
- # Set ICU compile options |
2938 |
- ICU_CPPFLAGS="" |
2939 |
- # don't use icu namespace automatically in client code |
2940 |
-diff --git a/js/src/gdb/Makefile.in b/js/src/gdb/Makefile.in |
2941 |
-index 288934a..a582dfe 100644 |
2942 |
---- a/js/src/gdb/Makefile.in |
2943 |
-+++ b/js/src/gdb/Makefile.in |
2944 |
-@@ -19,6 +19,10 @@ LIBS = $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(NSPR_LIBS) $(MOZ_ZLIB_LIB |
2945 |
- |
2946 |
- LOCAL_INCLUDES += -I$(topsrcdir) -I.. |
2947 |
- |
2948 |
-+ifdef MOZ_NATIVE_ICU |
2949 |
-+EXTRA_LIBS += $(MOZ_ICU_LIBS) |
2950 |
-+endif |
2951 |
-+ |
2952 |
- EXTRA_LIBS += $(MOZ_FFI_LIBS) |
2953 |
- |
2954 |
- # Place a GDB Python auto-load file next to the gdb-tests executable, both |
2955 |
-diff --git a/js/src/jsapi-tests/Makefile.in b/js/src/jsapi-tests/Makefile.in |
2956 |
-index 5f7d594..10d7054 100644 |
2957 |
---- a/js/src/jsapi-tests/Makefile.in |
2958 |
-+++ b/js/src/jsapi-tests/Makefile.in |
2959 |
-@@ -20,6 +20,10 @@ LIBS = $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(NSPR_LIBS) $(MOZ_ZLI |
2960 |
- |
2961 |
- LOCAL_INCLUDES += -I$(topsrcdir) -I.. |
2962 |
- |
2963 |
-+ifdef MOZ_NATIVE_ICU |
2964 |
-+EXTRA_LIBS += $(MOZ_ICU_LIBS) |
2965 |
-+endif |
2966 |
-+ |
2967 |
- EXTRA_LIBS += $(MOZ_FFI_LIBS) |
2968 |
- |
2969 |
- ifdef QEMU_EXE |
2970 |
-diff --git a/js/src/shell/Makefile.in b/js/src/shell/Makefile.in |
2971 |
-index 2e1df09..db66c69 100644 |
2972 |
---- a/js/src/shell/Makefile.in |
2973 |
-+++ b/js/src/shell/Makefile.in |
2974 |
-@@ -27,6 +27,9 @@ LIBS = $(NSPR_LIBS) $(EDITLINE_LIBS) $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_ |
2975 |
- ifdef MOZ_NATIVE_FFI |
2976 |
- EXTRA_LIBS += $(MOZ_FFI_LIBS) |
2977 |
- endif |
2978 |
-+ifdef MOZ_NATIVE_ICU |
2979 |
-+EXTRA_LIBS += $(MOZ_ICU_LIBS) |
2980 |
-+endif |
2981 |
- |
2982 |
- LOCAL_INCLUDES += -I$(topsrcdir) -I.. |
2983 |
- |
2984 |
|
2985 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch b/dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch |
2986 |
deleted file mode 100644 |
2987 |
index 70963627bcc..00000000000 |
2988 |
--- a/dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch |
2989 |
+++ /dev/null |
2990 |
@@ -1,41 +0,0 @@ |
2991 |
-diff -Naur mozjs-24.2.0/js/src/gc/RootMarking.cpp mozjs-24.2.0.new/js/src/gc/RootMarking.cpp |
2992 |
---- mozjs-24.2.0/js/src/gc/RootMarking.cpp 2013-10-29 16:40:26.000000000 -0400 |
2993 |
-+++ mozjs-24.2.0.new/js/src/gc/RootMarking.cpp 2014-05-05 16:16:15.570098309 -0400 |
2994 |
-@@ -320,7 +320,7 @@ |
2995 |
- |
2996 |
- uintptr_t *stackMin, *stackEnd; |
2997 |
- #if JS_STACK_GROWTH_DIRECTION > 0 |
2998 |
-- stackMin = rt->nativeStackBase; |
2999 |
-+ stackMin = reinterpret_cast<uintptr_t *>(rt->nativeStackBase); |
3000 |
- stackEnd = cgcd->nativeStackTop; |
3001 |
- #else |
3002 |
- stackMin = cgcd->nativeStackTop + 1; |
3003 |
-diff -Naur mozjs-24.2.0/js/src/jsapi.cpp mozjs-24.2.0.new/js/src/jsapi.cpp |
3004 |
---- mozjs-24.2.0/js/src/jsapi.cpp 2013-12-06 17:52:35.000000000 -0500 |
3005 |
-+++ mozjs-24.2.0.new/js/src/jsapi.cpp 2014-05-05 16:17:01.330099145 -0400 |
3006 |
-@@ -863,10 +863,6 @@ |
3007 |
- |
3008 |
- PodZero(&debugHooks); |
3009 |
- PodZero(&atomState); |
3010 |
-- |
3011 |
--#if JS_STACK_GROWTH_DIRECTION > 0 |
3012 |
-- nativeStackLimit = UINTPTR_MAX; |
3013 |
--#endif |
3014 |
- } |
3015 |
- |
3016 |
- bool |
3017 |
-diff -Naur mozjs-24.2.0/js/src/jsfriendapi.cpp mozjs-24.2.0.new/js/src/jsfriendapi.cpp |
3018 |
---- mozjs-24.2.0/js/src/jsfriendapi.cpp 2013-10-29 16:40:20.000000000 -0400 |
3019 |
-+++ mozjs-24.2.0.new/js/src/jsfriendapi.cpp 2014-05-05 16:18:30.350100769 -0400 |
3020 |
-@@ -32,7 +32,11 @@ |
3021 |
- PerThreadDataFriendFields::RuntimeMainThreadOffset); |
3022 |
- |
3023 |
- PerThreadDataFriendFields::PerThreadDataFriendFields() |
3024 |
-+#if JS_STACK_GROWTH_DIRECTION > 0 |
3025 |
-+ : nativeStackLimit(UINTPTR_MAX) |
3026 |
-+#else |
3027 |
- : nativeStackLimit(0) |
3028 |
-+#endif |
3029 |
- { |
3030 |
- #if defined(JSGC_ROOT_ANALYSIS) || defined(JSGC_USE_EXACT_ROOTING) |
3031 |
- PodArrayZero(thingGCRooters); |
3032 |
|
3033 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-24.2.0-fix-file-permissions.patch b/dev-lang/spidermonkey/files/spidermonkey-24.2.0-fix-file-permissions.patch |
3034 |
deleted file mode 100644 |
3035 |
index a2247164111..00000000000 |
3036 |
--- a/dev-lang/spidermonkey/files/spidermonkey-24.2.0-fix-file-permissions.patch |
3037 |
+++ /dev/null |
3038 |
@@ -1,29 +0,0 @@ |
3039 |
-diff -urN a/js/src/Makefile.in b/js/src/Makefile.in |
3040 |
---- a/js/src/Makefile.in 2013-11-19 13:42:43.000000000 -0600 |
3041 |
-+++ b/js/src/Makefile.in 2014-03-08 08:07:28.331006149 -0600 |
3042 |
-@@ -542,7 +542,7 @@ |
3043 |
- $(PYTHON) $(topsrcdir)/config/Preprocessor.py $(JS_CONFIG_SUBSTITUTIONS) $< > $@ |
3044 |
- |
3045 |
- install:: $(LIBRARY_NAME).pc |
3046 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(libdir)/pkgconfig |
3047 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(libdir)/pkgconfig |
3048 |
- |
3049 |
- ###################################################### |
3050 |
- # BEGIN SpiderMonkey header installation |
3051 |
-@@ -569,13 +569,13 @@ |
3052 |
- # |
3053 |
- |
3054 |
- install:: $(EXPORTS) |
3055 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(LIBRARY_NAME) |
3056 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(LIBRARY_NAME) |
3057 |
- |
3058 |
- install:: $(EXPORTS_js) |
3059 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(LIBRARY_NAME)/js |
3060 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(LIBRARY_NAME)/js |
3061 |
- |
3062 |
- install:: $(EXPORTS_mozilla) |
3063 |
-- $(SYSINSTALL) $^ $(DESTDIR)$(includedir)/$(LIBRARY_NAME)/mozilla |
3064 |
-+ $(SYSINSTALL) -m 0644 $^ $(DESTDIR)$(includedir)/$(LIBRARY_NAME)/mozilla |
3065 |
- |
3066 |
- # |
3067 |
- # END SpiderMonkey header installation |
3068 |
|
3069 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-38-jsapi-tests.patch b/dev-lang/spidermonkey/files/spidermonkey-38-jsapi-tests.patch |
3070 |
deleted file mode 100644 |
3071 |
index 8b023fd3180..00000000000 |
3072 |
--- a/dev-lang/spidermonkey/files/spidermonkey-38-jsapi-tests.patch |
3073 |
+++ /dev/null |
3074 |
@@ -1,16 +0,0 @@ |
3075 |
---- a/js/src/jsapi-tests/testPreserveJitCode.cpp 2015-09-17 16:12:22.000000000 -0400 |
3076 |
-+++ b/js/src/jsapi-tests/testPreserveJitCode.cpp 2017-02-27 16:30:28.899191525 -0500 |
3077 |
-@@ -16,8 +16,12 @@ |
3078 |
- |
3079 |
- BEGIN_TEST(test_PreserveJitCode) |
3080 |
- { |
3081 |
-+#ifndef JS_CODEGEN_NONE |
3082 |
- CHECK(testPreserveJitCode(false, 0)); |
3083 |
- CHECK(testPreserveJitCode(true, 1)); |
3084 |
-+#else |
3085 |
-+ printf("*JIT is disabled, therefore CANNOT preserve jit code - skipping.\n"); |
3086 |
-+#endif |
3087 |
- return true; |
3088 |
- } |
3089 |
- |
3090 |
- |
3091 |
|
3092 |
diff --git a/dev-lang/spidermonkey/files/spidermonkey-45-dont-symlink-non-objfiles.patch b/dev-lang/spidermonkey/files/spidermonkey-45-dont-symlink-non-objfiles.patch |
3093 |
deleted file mode 100644 |
3094 |
index 061e8a572db..00000000000 |
3095 |
--- a/dev-lang/spidermonkey/files/spidermonkey-45-dont-symlink-non-objfiles.patch |
3096 |
+++ /dev/null |
3097 |
@@ -1,21 +0,0 @@ |
3098 |
---- a/python/mozbuild/mozbuild/backend/recursivemake.py 2016-04-14 13:55:21.000000000 -0400 |
3099 |
-+++ b/python/mozbuild/mozbuild/backend/recursivemake.py 2017-02-28 14:43:09.431448016 -0500 |
3100 |
-@@ -1301,17 +1301,17 @@ |
3101 |
- |
3102 |
- for path, files in files.walk(): |
3103 |
- target_var = (mozpath.join(target, path) |
3104 |
- if path else target).replace('/', '_') |
3105 |
- have_objdir_files = False |
3106 |
- for f in files: |
3107 |
- if not isinstance(f, ObjDirPath): |
3108 |
- dest = mozpath.join(reltarget, path, mozpath.basename(f)) |
3109 |
-- install_manifest.add_symlink(f.full_path, dest) |
3110 |
-+ install_manifest.add_copy(f.full_path, dest) |
3111 |
- else: |
3112 |
- backend_file.write('%s_FILES += %s\n' % ( |
3113 |
- target_var, self._pretty_path(f, backend_file))) |
3114 |
- have_objdir_files = True |
3115 |
- if have_objdir_files: |
3116 |
- backend_file.write('%s_DEST := $(DEPTH)/%s\n' |
3117 |
- % (target_var, |
3118 |
- mozpath.join(target, path))) |
3119 |
|
3120 |
diff --git a/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild b/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild |
3121 |
index 7df8506f512..e66d66acb10 100644 |
3122 |
--- a/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild |
3123 |
+++ b/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild |
3124 |
@@ -1,4 +1,4 @@ |
3125 |
-# Copyright 1999-2015 Gentoo Foundation |
3126 |
+# Copyright 1999-2017 Gentoo Foundation |
3127 |
# Distributed under the terms of the GNU General Public License v2 |
3128 |
|
3129 |
EAPI="5" |
3130 |
@@ -8,7 +8,9 @@ inherit eutils toolchain-funcs multilib flag-o-matic |
3131 |
MY_P="js-${PV}" |
3132 |
DESCRIPTION="Stand-alone JavaScript C library" |
3133 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3134 |
-SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/js/${MY_P}.tar.gz" |
3135 |
+SRC_URI="http://archive.mozilla.org/pub/js/${MY_P}.tar.gz |
3136 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot0-patches-01.tar.xz |
3137 |
+ " |
3138 |
|
3139 |
LICENSE="NPL-1.1" |
3140 |
SLOT="0/js" |
3141 |
@@ -21,10 +23,10 @@ RDEPEND="threadsafe? ( dev-libs/nspr )" |
3142 |
DEPEND="${RDEPEND}" |
3143 |
|
3144 |
src_prepare() { |
3145 |
- epatch "${FILESDIR}/${PN}-1.5-build.patch" |
3146 |
- epatch "${FILESDIR}/${PN}-1.6-header.patch" |
3147 |
- epatch "${FILESDIR}/${P}-threadsafe.diff" \ |
3148 |
- "${FILESDIR}"/${P}-ldflags.patch |
3149 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.5-build.patch \ |
3150 |
+ "${WORKDIR}"/sm0/${PN}-1.6-header.patch \ |
3151 |
+ "${WORKDIR}"/sm0/${P}-threadsafe.diff \ |
3152 |
+ "${WORKDIR}"/sm0/${P}-ldflags.patch |
3153 |
|
3154 |
# don't force owner for Prefix |
3155 |
sed -i -e '/^INSTALL :=/s/-g 0 -o root//' Makefile.ref || die |
3156 |
|
3157 |
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r4.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r4.ebuild |
3158 |
index 5d181130fcd..a5e340c2686 100644 |
3159 |
--- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r4.ebuild |
3160 |
+++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r4.ebuild |
3161 |
@@ -1,4 +1,4 @@ |
3162 |
-# Copyright 1999-2016 Gentoo Foundation |
3163 |
+# Copyright 1999-2017 Gentoo Foundation |
3164 |
# Distributed under the terms of the GNU General Public License v2 |
3165 |
|
3166 |
EAPI="5" |
3167 |
@@ -13,7 +13,8 @@ MY_P="${MY_PN}-${PV}" |
3168 |
TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0" |
3169 |
DESCRIPTION="Stand-alone JavaScript C library" |
3170 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3171 |
-SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${TARBALL_P}.tar.gz" |
3172 |
+SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz |
3173 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot0-patches-01.tar.xz" |
3174 |
|
3175 |
LICENSE="NPL-1.1" |
3176 |
SLOT="0/mozjs185" |
3177 |
@@ -39,23 +40,23 @@ pkg_setup(){ |
3178 |
|
3179 |
src_prepare() { |
3180 |
# https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 |
3181 |
- epatch "${FILESDIR}/${P}-fix-install-symlinks.patch" |
3182 |
+ epatch "${WORKDIR}"/sm0/${P}-fix-install-symlinks.patch |
3183 |
# https://bugzilla.mozilla.org/show_bug.cgi?id=638056#c9 |
3184 |
- epatch "${FILESDIR}/${P}-fix-ppc64.patch" |
3185 |
+ epatch "${WORKDIR}"/sm0/${P}-fix-ppc64.patch |
3186 |
# https://bugs.gentoo.org/show_bug.cgi?id=400727 |
3187 |
# https://bugs.gentoo.org/show_bug.cgi?id=420471 |
3188 |
- epatch "${FILESDIR}/${P}-arm_respect_cflags-3.patch" |
3189 |
+ epatch "${WORKDIR}"/sm0/${P}-arm_respect_cflags-3.patch |
3190 |
# https://bugs.gentoo.org/show_bug.cgi?id=438746 |
3191 |
- epatch "${FILESDIR}"/${PN}-1.8.7-freebsd-pthreads.patch |
3192 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.7-freebsd-pthreads.patch |
3193 |
# https://bugs.gentoo.org/show_bug.cgi?id=441928 |
3194 |
- epatch "${FILESDIR}"/${PN}-1.8.5-perf_event-check.patch |
3195 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-perf_event-check.patch |
3196 |
# https://bugs.gentoo.org/show_bug.cgi?id=439260 |
3197 |
- epatch "${FILESDIR}"/${P}-symbol-versions.patch |
3198 |
+ epatch "${WORKDIR}"/sm0/${P}-symbol-versions.patch |
3199 |
# https://bugs.gentoo.org/show_bug.cgi?id=441934 |
3200 |
- epatch "${FILESDIR}"/${PN}-1.8.5-ia64-fix.patch |
3201 |
- epatch "${FILESDIR}"/${PN}-1.8.5-ia64-static-strings.patch |
3202 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-ia64-fix.patch |
3203 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-ia64-static-strings.patch |
3204 |
# https://bugs.gentoo.org/show_bug.cgi?id=431560 |
3205 |
- epatch "${FILESDIR}"/${PN}-1.8.5-isfinite.patch |
3206 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-isfinite.patch |
3207 |
# https://bugs.gentoo.org/show_bug.cgi?id=552786 |
3208 |
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3209 |
|
3210 |
|
3211 |
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r5.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r5.ebuild |
3212 |
deleted file mode 100644 |
3213 |
index c9ca487769f..00000000000 |
3214 |
--- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r5.ebuild |
3215 |
+++ /dev/null |
3216 |
@@ -1,146 +0,0 @@ |
3217 |
-# Copyright 1999-2016 Gentoo Foundation |
3218 |
-# Distributed under the terms of the GNU General Public License v2 |
3219 |
- |
3220 |
-EAPI="5" |
3221 |
-WANT_AUTOCONF="2.1" |
3222 |
-PYTHON_COMPAT=( python2_7 ) |
3223 |
-PYTHON_REQ_USE="threads" |
3224 |
-inherit autotools eutils toolchain-funcs multilib python-any-r1 versionator pax-utils |
3225 |
- |
3226 |
-MY_PN="js" |
3227 |
-TARBALL_PV="$(replace_all_version_separators '' $(get_version_component_range 1-3))" |
3228 |
-MY_P="${MY_PN}-${PV}" |
3229 |
-TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0" |
3230 |
-DESCRIPTION="Stand-alone JavaScript C library" |
3231 |
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3232 |
-SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${TARBALL_P}.tar.gz" |
3233 |
- |
3234 |
-LICENSE="NPL-1.1" |
3235 |
-SLOT="0/mozjs185" |
3236 |
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos" |
3237 |
-IUSE="debug minimal static-libs test" |
3238 |
- |
3239 |
-S="${WORKDIR}/${MY_P}" |
3240 |
-BUILDDIR="${S}/js/src" |
3241 |
- |
3242 |
-RDEPEND=">=dev-libs/nspr-4.7.0 |
3243 |
- sys-libs/readline:0= |
3244 |
- x64-macos? ( dev-libs/jemalloc )" |
3245 |
-DEPEND="${RDEPEND} |
3246 |
- ${PYTHON_DEPS} |
3247 |
- app-arch/zip |
3248 |
- virtual/pkgconfig" |
3249 |
- |
3250 |
-pkg_setup(){ |
3251 |
- if [[ ${MERGE_TYPE} != "binary" ]]; then |
3252 |
- export LC_ALL="C" |
3253 |
- fi |
3254 |
-} |
3255 |
- |
3256 |
-src_prepare() { |
3257 |
- # https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 |
3258 |
- epatch "${FILESDIR}/${P}-fix-install-symlinks.patch" |
3259 |
- # https://bugzilla.mozilla.org/show_bug.cgi?id=638056#c9 |
3260 |
- epatch "${FILESDIR}/${P}-fix-ppc64.patch" |
3261 |
- # https://bugs.gentoo.org/show_bug.cgi?id=400727 |
3262 |
- # https://bugs.gentoo.org/show_bug.cgi?id=420471 |
3263 |
- epatch "${FILESDIR}/${P}-arm_respect_cflags-3.patch" |
3264 |
- # https://bugs.gentoo.org/show_bug.cgi?id=438746 |
3265 |
- epatch "${FILESDIR}"/${PN}-1.8.7-freebsd-pthreads.patch |
3266 |
- # https://bugs.gentoo.org/show_bug.cgi?id=441928 |
3267 |
- epatch "${FILESDIR}"/${PN}-1.8.5-perf_event-check.patch |
3268 |
- # https://bugs.gentoo.org/show_bug.cgi?id=439260 |
3269 |
- epatch "${FILESDIR}"/${P}-symbol-versions.patch |
3270 |
- # https://bugs.gentoo.org/show_bug.cgi?id=441934 |
3271 |
- epatch "${FILESDIR}"/${PN}-1.8.5-ia64-fix.patch |
3272 |
- epatch "${FILESDIR}"/${PN}-1.8.5-ia64-static-strings.patch |
3273 |
- # https://bugs.gentoo.org/show_bug.cgi?id=431560 |
3274 |
- epatch "${FILESDIR}"/${PN}-1.8.5-isfinite.patch |
3275 |
- # https://bugs.gentoo.org/show_bug.cgi?id=552786 |
3276 |
- epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3277 |
- # https://bugs.gentoo.org/show_bug.cgi?id=439558 |
3278 |
- epatch "${FILESDIR}"/${PN}-1.8.7-x32.patch |
3279 |
- |
3280 |
- epatch_user |
3281 |
- |
3282 |
- cd "${BUILDDIR}" || die |
3283 |
- eautoconf |
3284 |
-} |
3285 |
- |
3286 |
-src_configure() { |
3287 |
- cd "${BUILDDIR}" || die |
3288 |
- |
3289 |
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" \ |
3290 |
- AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \ |
3291 |
- LD="$(tc-getLD)" \ |
3292 |
- econf \ |
3293 |
- ${myopts} \ |
3294 |
- --enable-jemalloc \ |
3295 |
- --enable-readline \ |
3296 |
- --enable-threadsafe \ |
3297 |
- --with-system-nspr \ |
3298 |
- --disable-optimize \ |
3299 |
- --disable-profile-guided-optimization \ |
3300 |
- $(use_enable debug) \ |
3301 |
- $(use_enable static-libs static) \ |
3302 |
- $(use_enable test tests) |
3303 |
-} |
3304 |
- |
3305 |
-cross_make() { |
3306 |
- emake \ |
3307 |
- CFLAGS="${BUILD_CFLAGS}" \ |
3308 |
- CXXFLAGS="${BUILD_CXXFLAGS}" \ |
3309 |
- AR="${BUILD_AR}" \ |
3310 |
- CC="${BUILD_CC}" \ |
3311 |
- CXX="${BUILD_CXX}" \ |
3312 |
- RANLIB="${BUILD_RANLIB}" \ |
3313 |
- "$@" |
3314 |
-} |
3315 |
-src_compile() { |
3316 |
- cd "${BUILDDIR}" || die |
3317 |
- if tc-is-cross-compiler; then |
3318 |
- tc-export_build_env BUILD_{AR,CC,CXX,RANLIB} |
3319 |
- cross_make jscpucfg host_jsoplengen host_jskwgen |
3320 |
- cross_make -C config nsinstall |
3321 |
- mv {,native-}jscpucfg || die |
3322 |
- mv {,native-}host_jskwgen || die |
3323 |
- mv {,native-}host_jsoplengen || die |
3324 |
- mv config/{,native-}nsinstall || die |
3325 |
- sed -i \ |
3326 |
- -e 's@./jscpucfg@./native-jscpucfg@' \ |
3327 |
- -e 's@./host_jskwgen@./native-host_jskwgen@' \ |
3328 |
- -e 's@./host_jsoplengen@./native-host_jsoplengen@' \ |
3329 |
- Makefile || die |
3330 |
- sed -i -e 's@/nsinstall@/native-nsinstall@' config/config.mk || die |
3331 |
- rm -f config/host_nsinstall.o \ |
3332 |
- config/host_pathsub.o \ |
3333 |
- host_jskwgen.o \ |
3334 |
- host_jsoplengen.o || die |
3335 |
- fi |
3336 |
- emake |
3337 |
-} |
3338 |
- |
3339 |
-src_test() { |
3340 |
- cd "${BUILDDIR}/jsapi-tests" || die |
3341 |
- # for bug 415791 |
3342 |
- pax-mark mr jsapi-tests |
3343 |
- emake check |
3344 |
-} |
3345 |
- |
3346 |
-src_install() { |
3347 |
- cd "${BUILDDIR}" || die |
3348 |
- emake DESTDIR="${D}" install |
3349 |
- # bug 437520 , exclude js shell for small systems |
3350 |
- if ! use minimal ; then |
3351 |
- dobin shell/js |
3352 |
- pax-mark m "${ED}/usr/bin/js" |
3353 |
- fi |
3354 |
- dodoc ../../README |
3355 |
- dohtml README.html |
3356 |
- |
3357 |
- if ! use static-libs; then |
3358 |
- # We can't actually disable building of static libraries |
3359 |
- # They're used by the tests and in a few other places |
3360 |
- find "${D}" -iname '*.a' -delete || die |
3361 |
- fi |
3362 |
-} |
3363 |
|
3364 |
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild |
3365 |
index 1ae283e263a..7cb19fe5087 100644 |
3366 |
--- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild |
3367 |
+++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild |
3368 |
@@ -13,7 +13,9 @@ MY_P="${MY_PN}-${PV}" |
3369 |
TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0" |
3370 |
DESCRIPTION="Stand-alone JavaScript C library" |
3371 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3372 |
-SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${TARBALL_P}.tar.gz" |
3373 |
+SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz |
3374 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot0-patches-01.tar.xz |
3375 |
+ " |
3376 |
|
3377 |
LICENSE="NPL-1.1" |
3378 |
SLOT="0/mozjs185" |
3379 |
@@ -39,29 +41,29 @@ pkg_setup(){ |
3380 |
|
3381 |
src_prepare() { |
3382 |
# https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 |
3383 |
- epatch "${FILESDIR}/${P}-fix-install-symlinks.patch" |
3384 |
+ epatch "${WORKDIR}"/sm0/${P}-fix-install-symlinks.patch |
3385 |
# https://bugzilla.mozilla.org/show_bug.cgi?id=638056#c9 |
3386 |
- epatch "${FILESDIR}/${P}-fix-ppc64.patch" |
3387 |
+ epatch "${WORKDIR}"/sm0/${P}-fix-ppc64.patch |
3388 |
# https://bugs.gentoo.org/show_bug.cgi?id=400727 |
3389 |
# https://bugs.gentoo.org/show_bug.cgi?id=420471 |
3390 |
- epatch "${FILESDIR}/${P}-arm_respect_cflags-3.patch" |
3391 |
+ epatch "${WORKDIR}"/sm0/${P}-arm_respect_cflags-3.patch |
3392 |
# https://bugs.gentoo.org/show_bug.cgi?id=438746 |
3393 |
- epatch "${FILESDIR}"/${PN}-1.8.7-freebsd-pthreads.patch |
3394 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.7-freebsd-pthreads.patch |
3395 |
# https://bugs.gentoo.org/show_bug.cgi?id=441928 |
3396 |
- epatch "${FILESDIR}"/${PN}-1.8.5-perf_event-check.patch |
3397 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-perf_event-check.patch |
3398 |
# https://bugs.gentoo.org/show_bug.cgi?id=439260 |
3399 |
- epatch "${FILESDIR}"/${P}-symbol-versions.patch |
3400 |
+ epatch "${WORKDIR}"/sm0/${P}-symbol-versions.patch |
3401 |
# https://bugs.gentoo.org/show_bug.cgi?id=441934 |
3402 |
- epatch "${FILESDIR}"/${PN}-1.8.5-ia64-fix.patch |
3403 |
- epatch "${FILESDIR}"/${PN}-1.8.5-ia64-static-strings.patch |
3404 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-ia64-fix.patch |
3405 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-ia64-static-strings.patch |
3406 |
# https://bugs.gentoo.org/show_bug.cgi?id=431560 |
3407 |
- epatch "${FILESDIR}"/${PN}-1.8.5-isfinite.patch |
3408 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-isfinite.patch |
3409 |
# https://bugs.gentoo.org/show_bug.cgi?id=552786 |
3410 |
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3411 |
# https://bugs.gentoo.org/show_bug.cgi?id=439558 |
3412 |
- epatch "${FILESDIR}"/${PN}-1.8.7-x32.patch |
3413 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.7-x32.patch |
3414 |
# https://bugs.gentoo.org/show_bug.cgi?id=582478 |
3415 |
- epatch "${FILESDIR}"/${PN}-1.8.5-gcc6.patch |
3416 |
+ epatch "${WORKDIR}"/sm0/${PN}-1.8.5-gcc6.patch |
3417 |
|
3418 |
epatch_user |
3419 |
|
3420 |
|
3421 |
diff --git a/dev-lang/spidermonkey/spidermonkey-17.0.0-r4.ebuild b/dev-lang/spidermonkey/spidermonkey-17.0.0-r4.ebuild |
3422 |
index 3a77b714665..06416bed528 100644 |
3423 |
--- a/dev-lang/spidermonkey/spidermonkey-17.0.0-r4.ebuild |
3424 |
+++ b/dev-lang/spidermonkey/spidermonkey-17.0.0-r4.ebuild |
3425 |
@@ -1,4 +1,4 @@ |
3426 |
-# Copyright 1999-2016 Gentoo Foundation |
3427 |
+# Copyright 1999-2017 Gentoo Foundation |
3428 |
# Distributed under the terms of the GNU General Public License v2 |
3429 |
|
3430 |
EAPI="5" |
3431 |
@@ -11,7 +11,8 @@ MY_PN="mozjs" |
3432 |
MY_P="${MY_PN}${PV}" |
3433 |
DESCRIPTION="Stand-alone JavaScript C library" |
3434 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3435 |
-SRC_URI="http://ftp.mozilla.org/pub/mozilla.org/js/${MY_PN}${PV}.tar.gz" |
3436 |
+SRC_URI="http://archive.mozilla.org/pub/js/${MY_PN}${PV}.tar.gz |
3437 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot17-patches-01.tar.xz" |
3438 |
|
3439 |
LICENSE="NPL-1.1" |
3440 |
SLOT="17" |
3441 |
@@ -42,9 +43,9 @@ pkg_setup(){ |
3442 |
} |
3443 |
|
3444 |
src_prepare() { |
3445 |
- epatch "${FILESDIR}"/${PN}-${SLOT}-js-config-shebang.patch |
3446 |
- epatch "${FILESDIR}"/${PN}-${SLOT}-ia64-mmap.patch |
3447 |
- epatch "${FILESDIR}"/${PN}-17.0.0-fix-file-permissions.patch |
3448 |
+ epatch "${WORKDIR}"/sm17/${PN}-${SLOT}-js-config-shebang.patch |
3449 |
+ epatch "${WORKDIR}"/sm17/${PN}-${SLOT}-ia64-mmap.patch |
3450 |
+ epatch "${WORKDIR}"/sm17/${PN}-17.0.0-fix-file-permissions.patch |
3451 |
# https://bugs.gentoo.org/show_bug.cgi?id=552786 |
3452 |
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3453 |
|
3454 |
|
3455 |
diff --git a/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild b/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild |
3456 |
index 24aaa1cd227..6a67fe8f8d5 100644 |
3457 |
--- a/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild |
3458 |
+++ b/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild |
3459 |
@@ -11,7 +11,8 @@ MY_PN="mozjs" |
3460 |
MY_P="${MY_PN}${PV}" |
3461 |
DESCRIPTION="Stand-alone JavaScript C library" |
3462 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3463 |
-SRC_URI="http://ftp.mozilla.org/pub/mozilla.org/js/${MY_PN}${PV}.tar.gz" |
3464 |
+SRC_URI="http://archive.mozilla.org/pub/js/${MY_PN}${PV}.tar.gz |
3465 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot17-patches-01.tar.xz" |
3466 |
|
3467 |
LICENSE="NPL-1.1" |
3468 |
SLOT="17" |
3469 |
@@ -42,12 +43,12 @@ pkg_setup(){ |
3470 |
} |
3471 |
|
3472 |
PATCHES=( |
3473 |
- "${FILESDIR}"/${PN}-${SLOT}-js-config-shebang.patch |
3474 |
- "${FILESDIR}"/${PN}-${SLOT}-ia64-mmap.patch |
3475 |
- "${FILESDIR}"/${PN}-17.0.0-fix-file-permissions.patch |
3476 |
- "${FILESDIR}"/${PN}-17-clang.patch |
3477 |
+ "${WORKDIR}"/sm17/${PN}-${SLOT}-js-config-shebang.patch |
3478 |
+ "${WORKDIR}"/sm17/${PN}-${SLOT}-ia64-mmap.patch |
3479 |
+ "${WORKDIR}"/sm17/${PN}-17.0.0-fix-file-permissions.patch |
3480 |
+ "${WORKDIR}"/sm17/${PN}-17-clang.patch |
3481 |
"${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3482 |
- "${FILESDIR}"/${PN}-17-fix_pointer_dereference.patch |
3483 |
+ "${WORKDIR}"/sm17/${PN}-17-fix_pointer_dereference.patch |
3484 |
) |
3485 |
|
3486 |
src_prepare() { |
3487 |
|
3488 |
diff --git a/dev-lang/spidermonkey/spidermonkey-24.2.0-r3.ebuild b/dev-lang/spidermonkey/spidermonkey-24.2.0-r3.ebuild |
3489 |
index 9779ba987f8..3d94feba95d 100644 |
3490 |
--- a/dev-lang/spidermonkey/spidermonkey-24.2.0-r3.ebuild |
3491 |
+++ b/dev-lang/spidermonkey/spidermonkey-24.2.0-r3.ebuild |
3492 |
@@ -1,4 +1,4 @@ |
3493 |
-# Copyright 1999-2016 Gentoo Foundation |
3494 |
+# Copyright 1999-2017 Gentoo Foundation |
3495 |
# Distributed under the terms of the GNU General Public License v2 |
3496 |
|
3497 |
EAPI="5" |
3498 |
@@ -11,7 +11,8 @@ MY_PN="mozjs" |
3499 |
MY_P="${MY_PN}-${PV/_/.}" |
3500 |
DESCRIPTION="Stand-alone JavaScript C library" |
3501 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3502 |
-SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${MY_P}.tar.bz2" |
3503 |
+SRC_URI="https://archive.mozilla.org/pub/js/${MY_P}.tar.bz2 |
3504 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot24-patches-01.tar.xz" |
3505 |
|
3506 |
LICENSE="NPL-1.1" |
3507 |
SLOT="24" |
3508 |
@@ -41,9 +42,9 @@ pkg_setup(){ |
3509 |
} |
3510 |
|
3511 |
src_prepare() { |
3512 |
- epatch "${FILESDIR}"/${PN}-${SLOT}-system-icu.patch |
3513 |
- epatch "${FILESDIR}"/${PN}-24.2.0-fix-file-permissions.patch |
3514 |
- epatch "${FILESDIR}"/${PN}-${SLOT}-upward-growing-stack.patch |
3515 |
+ epatch "${WORKDIR}"/sm24/${PN}-${SLOT}-system-icu.patch |
3516 |
+ epatch "${WORKDIR}"/sm24/${PN}-24.2.0-fix-file-permissions.patch |
3517 |
+ epatch "${WORKDIR}"/sm24/${PN}-${SLOT}-upward-growing-stack.patch |
3518 |
# https://bugs.gentoo.org/show_bug.cgi?id=552786 |
3519 |
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3520 |
epatch_user |
3521 |
|
3522 |
diff --git a/dev-lang/spidermonkey/spidermonkey-24.2.0-r4.ebuild b/dev-lang/spidermonkey/spidermonkey-24.2.0-r4.ebuild |
3523 |
index 1e3f7b5b040..edee003c55b 100644 |
3524 |
--- a/dev-lang/spidermonkey/spidermonkey-24.2.0-r4.ebuild |
3525 |
+++ b/dev-lang/spidermonkey/spidermonkey-24.2.0-r4.ebuild |
3526 |
@@ -11,7 +11,8 @@ MY_PN="mozjs" |
3527 |
MY_P="${MY_PN}-${PV/_/.}" |
3528 |
DESCRIPTION="Stand-alone JavaScript C library" |
3529 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3530 |
-SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${MY_P}.tar.bz2" |
3531 |
+SRC_URI="https://archive.mozilla.org/pub/js/${MY_P}.tar.bz2 |
3532 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot24-patches-01.tar.xz" |
3533 |
|
3534 |
LICENSE="NPL-1.1" |
3535 |
SLOT="24" |
3536 |
@@ -34,11 +35,11 @@ DEPEND="${RDEPEND} |
3537 |
virtual/pkgconfig" |
3538 |
|
3539 |
PATCHES=( |
3540 |
- "${FILESDIR}"/${PN}-${SLOT}-system-icu.patch |
3541 |
- "${FILESDIR}"/${PN}-24.2.0-fix-file-permissions.patch |
3542 |
- "${FILESDIR}"/${PN}-${SLOT}-upward-growing-stack.patch |
3543 |
+ "${WORKDIR}"/sm24/${PN}-${SLOT}-system-icu.patch |
3544 |
+ "${WORKDIR}"/sm24/${PN}-24.2.0-fix-file-permissions.patch |
3545 |
+ "${WORKDIR}"/sm24/${PN}-${SLOT}-upward-growing-stack.patch |
3546 |
"${FILESDIR}"/${PN}-perl-defined-array-check.patch |
3547 |
- "${FILESDIR}"/${PN}-17-fix_pointer_dereference.patch |
3548 |
+ "${WORKDIR}"/sm24/${PN}-17-fix_pointer_dereference.patch |
3549 |
) |
3550 |
|
3551 |
pkg_setup(){ |
3552 |
|
3553 |
diff --git a/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild b/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild |
3554 |
index 42e2c0460c4..c55476923b0 100644 |
3555 |
--- a/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild |
3556 |
+++ b/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild |
3557 |
@@ -9,7 +9,8 @@ MY_PN="mozjs" |
3558 |
MY_P="${MY_PN}-${PV/_/.}" |
3559 |
DESCRIPTION="Stand-alone JavaScript C library" |
3560 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3561 |
-SRC_URI="https://people.mozilla.org/~sstangl/${MY_P}.tar.bz2" |
3562 |
+SRC_URI="https://people.mozilla.org/~sstangl/${MY_P}.tar.bz2 |
3563 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot38-patches-01.tar.xz" |
3564 |
|
3565 |
LICENSE="NPL-1.1" |
3566 |
SLOT="38" |
3567 |
@@ -36,12 +37,12 @@ pkg_setup(){ |
3568 |
} |
3569 |
|
3570 |
src_prepare() { |
3571 |
- eapply "${FILESDIR}"/${PN}-38-jsapi-tests.patch \ |
3572 |
- "${FILESDIR}"/mozjs38-1269317.patch \ |
3573 |
- "${FILESDIR}"/mozjs38-fix-tracelogger.patch \ |
3574 |
- "${FILESDIR}"/mozjs38-copy-headers.patch \ |
3575 |
- "${FILESDIR}"/mozjs38-pkg-config-version.patch \ |
3576 |
- "${FILESDIR}"/mozilla_configure_regexp_esr38.patch |
3577 |
+ eapply "${WORKDIR}"/sm38/${PN}-38-jsapi-tests.patch \ |
3578 |
+ "${WORKDIR}"/sm38/mozjs38-1269317.patch \ |
3579 |
+ "${WORKDIR}"/sm38/mozjs38-fix-tracelogger.patch \ |
3580 |
+ "${WORKDIR}"/sm38/mozjs38-copy-headers.patch \ |
3581 |
+ "${WORKDIR}"/sm38/mozjs38-pkg-config-version.patch \ |
3582 |
+ "${WORKDIR}"/sm38/mozilla_configure_regexp_esr38.patch |
3583 |
|
3584 |
eapply_user |
3585 |
|
3586 |
|
3587 |
diff --git a/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild b/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild |
3588 |
index 26f88cce97f..2602ecc5e97 100644 |
3589 |
--- a/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild |
3590 |
+++ b/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild |
3591 |
@@ -9,7 +9,8 @@ MY_PN="mozjs" |
3592 |
MY_P="${MY_PN}-${PV/_/.}" |
3593 |
DESCRIPTION="Stand-alone JavaScript C library" |
3594 |
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" |
3595 |
-SRC_URI="https://people.mozilla.org/~sfink/${MY_P}.tar.bz2" |
3596 |
+SRC_URI="https://people.mozilla.org/~sfink/${MY_P}.tar.bz2 |
3597 |
+ https://dev.gentoo.org/~axs/distfiles/${PN}-slot45-patches-01.tar.xz" |
3598 |
|
3599 |
LICENSE="NPL-1.1" |
3600 |
SLOT="45" |
3601 |
@@ -35,14 +36,14 @@ pkg_setup(){ |
3602 |
} |
3603 |
|
3604 |
src_prepare() { |
3605 |
- eapply "${FILESDIR}"/${PN}-38-jsapi-tests.patch \ |
3606 |
- "${FILESDIR}"/mozjs45-1266366.patch \ |
3607 |
- "${FILESDIR}"/mozjs38-pkg-config-version.patch \ |
3608 |
- "${FILESDIR}"/mozilla_configure_regexp_esr.patch \ |
3609 |
- "${FILESDIR}"/${PN}-${SLOT}-dont-symlink-non-objfiles.patch |
3610 |
+ eapply "${WORKDIR}"/sm45/${PN}-38-jsapi-tests.patch \ |
3611 |
+ "${WORKDIR}"/sm45/mozjs45-1266366.patch \ |
3612 |
+ "${WORKDIR}"/sm45/mozjs38-pkg-config-version.patch \ |
3613 |
+ "${WORKDIR}"/sm45/mozilla_configure_regexp_esr.patch \ |
3614 |
+ "${WORKDIR}"/sm45/${PN}-${SLOT}-dont-symlink-non-objfiles.patch |
3615 |
|
3616 |
# apply relevant (modified) patches from gentoo's firefox-45 patchset |
3617 |
- eapply "${FILESDIR}"/ff45 |
3618 |
+ eapply "${WORKDIR}"/sm45/ff45 |
3619 |
|
3620 |
eapply_user |