commit:     f8fc07ab40492a9024d5ab57e98b53f8cea28175
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 13 05:49:34 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Apr 13 05:54:55 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8fc07ab

dev-perl/JavaScript-SpiderMonkey: treeclean

Closes: https://bugs.gentoo.org/832313
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../JavaScript-SpiderMonkey-0.210.0-r1.ebuild      |  26 --
 dev-perl/JavaScript-SpiderMonkey/Manifest          |   1 -
 ...avaScript-SpiderMonkey-0.210.0-no-dot-inc.patch | 167 -------
 .../JavaScript-SpiderMonkey/files/mozjs185.patch   | 486 ---------------------
 dev-perl/JavaScript-SpiderMonkey/metadata.xml      |  12 -
 5 files changed, 692 deletions(-)

diff --git 
a/dev-perl/JavaScript-SpiderMonkey/JavaScript-SpiderMonkey-0.210.0-r1.ebuild 
b/dev-perl/JavaScript-SpiderMonkey/JavaScript-SpiderMonkey-0.210.0-r1.ebuild
deleted file mode 100644
index f706b2f4e578..000000000000
--- a/dev-perl/JavaScript-SpiderMonkey/JavaScript-SpiderMonkey-0.210.0-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=TBUSCH
-MODULE_VERSION=${PV%0.0}
-inherit perl-module
-
-DESCRIPTION="Perl interface to the JavaScript Engine"
-
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND="dev-perl/Log-Log4perl
-       >=dev-lang/spidermonkey-1.5:0"
-DEPEND="${RDEPEND}
-       dev-perl/ExtUtils-PkgConfig"
-
-PATCHES=(
-       "${FILESDIR}/mozjs185.patch"
-       "${FILESDIR}/${P}-no-dot-inc.patch"
-)
-
-SRC_TEST=do

diff --git a/dev-perl/JavaScript-SpiderMonkey/Manifest 
b/dev-perl/JavaScript-SpiderMonkey/Manifest
deleted file mode 100644
index c3093664ceb6..000000000000
--- a/dev-perl/JavaScript-SpiderMonkey/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST JavaScript-SpiderMonkey-0.21.tar.gz 19494 BLAKE2B 
842769d02b04d489b9fac446b0ec24ba7feca6c0206ca0927528af81bc464ab31c0b617635f060fa4a0e230da13901306192dfdf99db1f442ea84af33997e778
 SHA512 
5a1e26d8ee15c73a566715ac150ac597e6bbf542629bf1884ae623478ed6dd1085b4afc02ab6a152c7407239ba46a9d30f9472fc6375fab823815b38372fb1ec

diff --git 
a/dev-perl/JavaScript-SpiderMonkey/files/JavaScript-SpiderMonkey-0.210.0-no-dot-inc.patch
 
b/dev-perl/JavaScript-SpiderMonkey/files/JavaScript-SpiderMonkey-0.210.0-no-dot-inc.patch
deleted file mode 100644
index f76aaa95a1ce..000000000000
--- 
a/dev-perl/JavaScript-SpiderMonkey/files/JavaScript-SpiderMonkey-0.210.0-no-dot-inc.patch
+++ /dev/null
@@ -1,167 +0,0 @@
-From c89a871ead0a961f8a0125d875cbe28974e23f29 Mon Sep 17 00:00:00 2001
-From: Kent Fredric <[email protected]>
-Date: Thu, 26 Oct 2017 18:50:34 +1300
-Subject: Fix test failures without '.' in @INC
-
-Bug: https://bugs.gentoo.org/617006
-Bug: https://rt.cpan.org/Ticket/Display.html?id=121452
----
- t/00array.t     | 2 +-
- t/01doc-href.t  | 2 +-
- t/02nav-appv.t  | 2 +-
- t/03doc-write.t | 2 +-
- t/04loop.t      | 2 +-
- t/05form.t      | 2 +-
- t/06form2.t     | 2 +-
- t/07func.t      | 2 +-
- t/08func2.t     | 2 +-
- t/09meth.t      | 2 +-
- t/10elobj.t     | 2 +-
- 11 files changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/t/00array.t b/t/00array.t
-index 3bd85a6..ba36807 100755
---- a/t/00array.t
-+++ b/t/00array.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- $js->array_by_path("document.form");
- 
-diff --git a/t/01doc-href.t b/t/01doc-href.t
-index 7f79c95..c545ca7 100755
---- a/t/01doc-href.t
-+++ b/t/01doc-href.t
-@@ -6,7 +6,7 @@ print "1..1\n";
- 
- $init = "";
- 
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $source = <<EOT;
- $init
-diff --git a/t/02nav-appv.t b/t/02nav-appv.t
-index d038f3e..2e0d7f6 100755
---- a/t/02nav-appv.t
-+++ b/t/02nav-appv.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $source = <<EOT;
- $init
-diff --git a/t/03doc-write.t b/t/03doc-write.t
-index 9b38e21..f757592 100755
---- a/t/03doc-write.t
-+++ b/t/03doc-write.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $source = <<EOT;
- $init
-diff --git a/t/04loop.t b/t/04loop.t
-index 3757c1d..768067a 100755
---- a/t/04loop.t
-+++ b/t/04loop.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $source = <<EOT;
- $init
-diff --git a/t/05form.t b/t/05form.t
-index 0dc763a..3212d05 100755
---- a/t/05form.t
-+++ b/t/05form.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $source = <<EOT;
- $init
-diff --git a/t/06form2.t b/t/06form2.t
-index 9aacb7a..fdf1bd2 100755
---- a/t/06form2.t
-+++ b/t/06form2.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $a = $js->array_by_path("document.array");
- my $e = $js->array_set_element($a, 0, "gurkenhobel"); 
-diff --git a/t/07func.t b/t/07func.t
-index c0f95cc..9b12633 100644
---- a/t/07func.t
-+++ b/t/07func.t
-@@ -6,7 +6,7 @@ print "1..1\n";
- 
- $init   = "";
- $buffer = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- my $source = <<EOT;
- $init
-diff --git a/t/08func2.t b/t/08func2.t
-index 6b49ef7..95c7749 100644
---- a/t/08func2.t
-+++ b/t/08func2.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- $args = "";
- 
-diff --git a/t/09meth.t b/t/09meth.t
-index 4b5da81..2b86a9c 100644
---- a/t/09meth.t
-+++ b/t/09meth.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- $args = "";
- 
-diff --git a/t/10elobj.t b/t/10elobj.t
-index d4eca5c..2c097b9 100644
---- a/t/10elobj.t
-+++ b/t/10elobj.t
-@@ -5,7 +5,7 @@
- print "1..1\n";
- 
- $init = "";
--require "t/init.pl";
-+require "./t/init.pl";
- 
- $submitted = "0";
- 
--- 
-2.14.3
-

diff --git a/dev-perl/JavaScript-SpiderMonkey/files/mozjs185.patch 
b/dev-perl/JavaScript-SpiderMonkey/files/mozjs185.patch
deleted file mode 100644
index 788a523b8c8b..000000000000
--- a/dev-perl/JavaScript-SpiderMonkey/files/mozjs185.patch
+++ /dev/null
@@ -1,486 +0,0 @@
-From 9c0fbdce2ee643c23b3be8fa391b779fc6afbab3 Mon Sep 17 00:00:00 2001
-From: Ian Stakenvicius <[email protected]>
-Date: Fri, 12 Oct 2012 08:09:57 +1300
-Subject: Support spidermonkey 1.8.5 and newer
-
-Fix support for x86_64
-
-Bug: https://bugs.gentoo.org/404129
----
- Makefile.PL     |  44 ++++++++++++-----
- SpiderMonkey.pm |   5 +-
- SpiderMonkey.xs | 150 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
- t/error.t       |   2 +-
- 4 files changed, 180 insertions(+), 21 deletions(-)
-
-diff --git a/Makefile.PL b/Makefile.PL
-index 901b773..6095dcd 100644
---- a/Makefile.PL
-+++ b/Makefile.PL
-@@ -12,6 +12,7 @@
- ######################################################################
- 
- use ExtUtils::MakeMaker;
-+use ExtUtils::PkgConfig;
- use Getopt::Long;
- 
- # Get the right lib and include dirs for different platforms
-@@ -39,7 +40,7 @@ my %possible_install_paths = (
-   "/opt/local/lib"   => "/opt/local/include",    # MacPorts
- );
- 
--my ($JS_LIB_DIR, @JS_INCL_DIRS, $JS_LIB_NAME);
-+my ($JS_LIB_DIR, @JS_INCL_DIRS, $JS_LIB_NAME, $JS_LIBS, $JS_INCLUDES);
- 
- #### Determine compile options
- ##############################
-@@ -59,6 +60,19 @@ GetOptions(
-   "JS_LIB_DIR=s"    => \$JS_LIB_DIR,
-   "JS_LIB_NAME=s"   => \$JS_LIB_NAME,         
- );
-+
-+# try to find spidermonkey via pkg-config first
-+
-+$JS_LIBS = ExtUtils::PkgConfig->libs ('mozjs187');
-+if ("".$JS_LIBS ne "") {
-+  $JS_INCLUDES = ExtUtils::PkgConfig->cflags ('mozjs187');
-+} else {
-+  $JS_LIBS = ExtUtils::PkgConfig->libs ('mozjs185');
-+  if ("".$JS_LIBS ne "") {
-+    $JS_INCLUDES = ExtUtils::PkgConfig->cflags ('mozjs185');
-+  } else {
-+
-+# pkg-config did not work, use the old (direct) way to find older libs
- if ($JS_LIB_DIR) {
-     push @JS_INCL_DIRS, $JS_LIB_DIR;
- }
-@@ -80,13 +94,15 @@ foreach my $install_path(keys %possible_install_paths) {
-         }
-       }
-       if (scalar(@JS_INCL_DIRS) == scalar(@c_header_files)) {
--        $JS_LIB_DIR = $libfile;
-+        $JS_LIB_DIR = "-L".$libfile;
-         $JS_LIB_DIR =~ s/$possible_lib$//;
- 
-         $JS_LIB_NAME = $possible_lib;
-         $JS_LIB_NAME =~ s/\.(a|so|dll)$//;
-         $JS_LIB_NAME =~ s/^lib//;
- 
-+      $JS_LIBS = "-l".$JS_LIB_NAME;
-+
-         last;
-       } else {
-         @JS_INCL_DIRS = ();
-@@ -96,15 +112,22 @@ foreach my $install_path(keys %possible_install_paths) {
-   }
-   last if $JS_LIB_DIR;
- }
-+foreach my $include_dir(@JS_INCL_DIRS) {
-+    $JS_INCLUDES.=" -I".$include_dir;
-+}
- 
- if ($JS_INCL_DIRS[0] eq $JS_INCL_DIRS[1]) {
-   shift @JS_INCL_DIRS;
- }
- 
-+} # end of pkgcfg mozjs185
-+} # end of pkgcfg mozjs187
-+
-+
- ## If no SpiderMonkey library found report that and exit.
- ## Otherwise print lib and include paths.
- 
--if (!$JS_LIB_DIR) {
-+if (!$JS_LIBS) {
-     print <<EOT;
- 
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-@@ -113,17 +136,13 @@ README file on how to download, compile and link it.
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 
- EOT
--    exit 0;
-+    exit 1;
- } else {
--  print "JS_LIB_DIR:  $JS_LIB_DIR\n";
--  foreach my $include_dir(@JS_INCL_DIRS) {
--    print "JS_INCL_DIR: $include_dir\n";
--  }
--  print "JS_LIB_NAME: $JS_LIB_NAME\n";
-+  print "JS_LIBS:  $JS_LIBS\n";
-+  print "JS_INCLUDES: $include_dir\n";
- }
- 
- 
--
- ## Determine library name and system-related defines
- if ($^O ne 'MSWin32') {
-   $JS_DEFINE  = '-DXP_UNIX';
-@@ -162,10 +181,11 @@ WriteMakefile(
-     ($] >= 5.005 ?    ## Add these new keywords supported since 5.005
-       (ABSTRACT_FROM => 'SpiderMonkey.pm', # retrieve abstract from module
-        AUTHOR     => 'Mike Schilli <[email protected]>') : ()),
--    'LIBS'            => ["-L$JS_LIB_DIR -l$JS_LIB_NAME"],
-+    'LIBS'            => ["$JS_LIB_DIR $JS_LIBS"],
-     'DEFINE'          => $JS_DEFINE, # e.g., '-DHAVE_SOMETHING'
-       # Insert -I. if you add *.h files later:
--    'INC'             => "-I".join " -I", @JS_INCL_DIRS,
-+#    'INC'            => "-I".join " -I", @JS_INCL_DIRS,
-+    'INC'             => $JS_INCLUDES,
-       # Un-comment this if you add C files to link with later:
-     # 'OBJECT'                => '$(O_FILES)', # link all the C files too
- );
-diff --git a/SpiderMonkey.pm b/SpiderMonkey.pm
-index 223204a..de210c3 100644
---- a/SpiderMonkey.pm
-+++ b/SpiderMonkey.pm
-@@ -162,9 +162,8 @@ sub init {
-     $self->{global_class} = 
-         JavaScript::SpiderMonkey::JS_GlobalClass();
-     $self->{global_object} = 
--        JavaScript::SpiderMonkey::JS_NewObject(
--            $self->{context}, $self->{global_class}, 
--            $self->{global_class}, $self->{global_class});
-+        JavaScript::SpiderMonkey::JS_NewCompartmentAndGlobalObject(
-+            $self->{context}, $self->{global_class}); 
- 
-     JavaScript::SpiderMonkey::JS_InitStandardClasses($self->{context}, 
-                                                      $self->{global_object});
-diff --git a/SpiderMonkey.xs b/SpiderMonkey.xs
-index 4d97117..1cfc9a5 100644
---- a/SpiderMonkey.xs
-+++ b/SpiderMonkey.xs
-@@ -20,10 +20,13 @@
- #define snprintf _snprintf 
- #endif
- 
-+#ifndef JSCLASS_GLOBAL_FLAGS
-+#define JSCLASS_GLOBAL_FLAGS 0
-+#endif
- /* JSRuntime needs this global class */
- static
- JSClass global_class = {
--    "Global", 0,
-+    "Global", JSCLASS_GLOBAL_FLAGS,
-     JS_PropertyStub,  JS_PropertyStub,  JS_PropertyStub,  JS_PropertyStub,
-     JS_EnumerateStub, JS_ResolveStub,   JS_ConvertStub,   JS_FinalizeStub
- };
-@@ -67,10 +70,18 @@ JSBool getsetter_dispatcher(
-          * I hope all reasonable machines can hold an address in
-          * an int.
-          */
--    XPUSHs(sv_2mortal(newSViv((int)obj)));
-+    XPUSHs(sv_2mortal(newSViv(PTR2IV(obj))));
-+#if JS_VERSION < 185
-     XPUSHs(sv_2mortal(newSVpv(JS_GetStringBytes(JSVAL_TO_STRING(id)), 0)));
-+#else
-+    XPUSHs(sv_2mortal(newSVpv(JS_EncodeString(cx, JSVAL_TO_STRING(id)), 0)));
-+#endif
-     XPUSHs(sv_2mortal(newSVpv(what, 0)));
-+#if JS_VERSION < 185
-     XPUSHs(sv_2mortal(newSVpv(JS_GetStringBytes(JSVAL_TO_STRING(*vp)), 0)));
-+#else
-+    XPUSHs(sv_2mortal(newSVpv(JS_EncodeString(cx, JSVAL_TO_STRING(*vp)), 0)));
-+#endif
-     PUTBACK;
-     call_pv("JavaScript::SpiderMonkey::getsetter_dispatcher", G_DISCARD);
-     FREETMPS;
-@@ -83,10 +94,21 @@ JSBool getsetter_dispatcher(
- JSBool getter_dispatcher(
-     JSContext *cx, 
-     JSObject  *obj,
-+#if JS_VERSION < 185
-     jsval      id,
-+#else
-+    jsid       iid,
-+#endif
-     jsval     *vp
- /* --------------------------------------------------------------------- */
- ) {
-+#if JS_VERSION >= 185
-+    jsval id;
-+    if (!JS_IdToValue(cx,iid,&id)) {
-+        fprintf(stderr, "getter_dispatcher: JS_IdToValue failed.\n");
-+      return JS_FALSE;
-+    }
-+#endif
-     return getsetter_dispatcher(cx, obj, id, vp, "getter");
- }
- 
-@@ -94,10 +116,22 @@ JSBool getter_dispatcher(
- JSBool setter_dispatcher(
-     JSContext *cx, 
-     JSObject  *obj,
-+#if JS_VERSION < 185
-     jsval      id,
-+#else
-+    jsid       iid,
-+    JSBool     strict,
-+#endif
-     jsval     *vp
- /* --------------------------------------------------------------------- */
- ) {
-+#if JS_VERSION >= 185
-+    jsval id;
-+    if (!JS_IdToValue(cx,iid,&id)) {
-+        fprintf(stderr, "setter_dispatcher: JS_IdToValue failed.\n");
-+      return JS_FALSE;
-+    }
-+#endif
-     return getsetter_dispatcher(cx, obj, id, vp, "setter");
- }
- 
-@@ -128,10 +162,19 @@ int debug_enabled(
- 
- /* --------------------------------------------------------------------- */
- static JSBool
-+#if JS_VERSION < 185
- FunctionDispatcher(JSContext *cx, JSObject *obj, uintN argc, 
-     jsval *argv, jsval *rval) {
-+#else
-+FunctionDispatcher(JSContext *cx, uintN argc, jsval *vp) {
-+#endif
- /* --------------------------------------------------------------------- */
-     dSP; 
-+#if JS_VERSION >= 185
-+    JSObject *obj = JS_THIS_OBJECT(cx,vp);
-+    jsval *argv = JS_ARGV(cx,vp);
-+    jsval rval;
-+#endif
-     SV          *sv;
-     char        *n_jstr;
-     int         n_jnum;
-@@ -149,12 +192,20 @@ FunctionDispatcher(JSContext *cx, JSObject *obj, uintN 
argc,
-     ENTER ; 
-     SAVETMPS ;
-     PUSHMARK(SP);
--    XPUSHs(sv_2mortal(newSViv((int)obj)));
-+    XPUSHs(sv_2mortal(newSViv(PTR2IV(obj))));
-     XPUSHs(sv_2mortal(newSVpv(
--        JS_GetFunctionName(fun), 0)));
-+#if JS_VERSION < 185
-+        JS_GetStringBytes(JS_GetFunctionId(fun)), 0)));
-+#else
-+        JS_EncodeString(cx, JS_GetFunctionId(fun)), 0)));
-+#endif
-     for(i=0; i<argc; i++) {
-         XPUSHs(sv_2mortal(newSVpv(
-+#if JS_VERSION < 185
-             JS_GetStringBytes(JS_ValueToString(cx, argv[i])), 0)));
-+#else
-+            JS_EncodeString(cx, JS_ValueToString(cx, argv[i])), 0)));
-+#endif
-     }
-     PUTBACK;
-     count = call_pv("JavaScript::SpiderMonkey::function_dispatcher", 
G_SCALAR);
-@@ -174,7 +225,11 @@ FunctionDispatcher(JSContext *cx, JSObject *obj, uintN 
argc,
- 
-             if(Debug)
-                 fprintf(stderr, "DEBUG: %lx is a ref!\n", (long) sv);
--            *rval = OBJECT_TO_JSVAL(SvIV(SvRV(sv)));
-+#if JS_VERSION < 185
-+            *rval = OBJECT_TO_JSVAL(INT2PTR(JSObject *,SvIV(SvRV(sv))));
-+#else
-+            JS_SET_RVAL(cx,vp,OBJECT_TO_JSVAL(INT2PTR(JSObject 
*,SvIV(SvRV(sv)))));
-+#endif
-         }
-         else if(SvIOK(sv)) {
-             /* It appears that we have been sent an int return
-@@ -183,7 +238,11 @@ FunctionDispatcher(JSContext *cx, JSObject *obj, uintN 
argc,
-             n_jnum=SvIV(sv);
-             if(Debug)
-                 fprintf(stderr, "DEBUG: %lx is an int (%d)\n", (long) 
sv,n_jnum);
-+#if JS_VERSION < 185
-             *rval = INT_TO_JSVAL(n_jnum);
-+#else
-+            JS_SET_RVAL(cx,vp,INT_TO_JSVAL(n_jnum));
-+#endif
-         } else if(SvNOK(sv)) {
-             /* It appears that we have been sent an double return
-              * value.  Thats fine we can give javascript an double
-@@ -192,11 +251,20 @@ FunctionDispatcher(JSContext *cx, JSObject *obj, uintN 
argc,
- 
-             if(Debug) 
-                 fprintf(stderr, "DEBUG: %lx is a double(%f)\n", (long) 
sv,n_jdbl);
-+#if JS_VERSION < 185
-             *rval = DOUBLE_TO_JSVAL(JS_NewDouble(cx, n_jdbl));
-+#else
-+            JS_NewNumberValue(cx, n_jdbl, &rval);
-+            JS_SET_RVAL(cx,vp,rval);
-+#endif
-         } else if(SvPOK(sv)) {
-             n_jstr = SvPV(sv, PL_na);
-             //warn("DEBUG: %s (%d)\n", n_jstr);
-+#if JS_VERSION < 185
-             *rval = STRING_TO_JSVAL(JS_NewStringCopyZ(cx, n_jstr));
-+#else
-+            JS_SET_RVAL(cx,vp,STRING_TO_JSVAL(JS_NewStringCopyZ(cx, n_jstr)));
-+#endif
-         }
-     }
- 
-@@ -240,8 +308,13 @@ ErrorReporter(JSContext *cx, const char *message, 
JSErrorReport *report) {
- }
- 
- /* --------------------------------------------------------------------- */
-+#if JS_VERSION < 181
- static JSBool
- BranchHandler(JSContext *cx, JSScript *script) {
-+#else
-+static JSBool
-+BranchHandler(JSContext *cx) {
-+#endif
- /* --------------------------------------------------------------------- */
-   PJS_Context* pcx = (PJS_Context*) JS_GetContextPrivate(cx);
- 
-@@ -374,11 +447,46 @@ JS_NewObject(cx, class, proto, parent)
-     JSObject *obj;
-     CODE:
-     {
-+#ifdef JS_THREADSAFE
-+        JS_BeginRequest(cx);
-+#endif
-         obj = JS_NewObject(cx, class, NULL, NULL);
-         if(!obj) {
-             XSRETURN_UNDEF;
-         }
-         RETVAL = obj;
-+#ifdef JS_THREADSAFE
-+        JS_EndRequest(cx);
-+#endif
-+    }
-+    OUTPUT:
-+    RETVAL
-+
-+######################################################################
-+JSObject *
-+JS_NewCompartmentAndGlobalObject(cx, class)
-+    JSContext * cx
-+    JSClass   * class
-+######################################################################
-+    PREINIT:
-+    JSObject *obj;
-+    CODE:
-+    {
-+#ifdef JS_THREADSAFE
-+        JS_BeginRequest(cx);
-+#endif
-+#if JS_VERSION < 185
-+        obj = JS_NewObject(cx, class, NULL, NULL);
-+#else
-+        obj = JS_NewCompartmentAndGlobalObject(cx, class, NULL);
-+#endif
-+        if(!obj) {
-+            XSRETURN_UNDEF;
-+        }
-+        RETVAL = obj;
-+#ifdef JS_THREADSAFE
-+        JS_EndRequest(cx);
-+#endif
-     }
-     OUTPUT:
-     RETVAL
-@@ -404,6 +512,9 @@ JS_InitClass(cx, iobj, parent_proto, clasp, constructor, 
nargs, ps, fs, static_p
-     na = (uintN) nargs;
-     CODE:
-     {
-+#ifdef JS_THREADSAFE
-+        JS_BeginRequest(cx);
-+#endif
-         obj = JS_InitClass(cx, iobj, parent_proto, clasp,
-                            constructor, nargs, ps, fs, static_ps,
-                            static_fs);
-@@ -411,6 +522,9 @@ JS_InitClass(cx, iobj, parent_proto, clasp, constructor, 
nargs, ps, fs, static_p
-             XSRETURN_UNDEF;
-         }
-         RETVAL = obj;
-+#ifdef JS_THREADSAFE
-+        JS_EndRequest(cx);
-+#endif
-     }
-     OUTPUT:
-     RETVAL
-@@ -469,11 +583,17 @@ JS_InitStandardClasses(cx, gobj)
-     JSBool rc;
-     CODE:
-     {
-+#ifdef JS_THREADSAFE
-+        JS_BeginRequest(cx);
-+#endif
-         rc = JS_InitStandardClasses(cx, gobj);
-         if(!rc) {
-             XSRETURN_UNDEF;
-         }
-         RETVAL = (int) rc;
-+#ifdef JS_THREADSAFE
-+        JS_BeginRequest(cx);
-+#endif
-     }
-     OUTPUT:
-     RETVAL
-@@ -582,10 +702,18 @@ JS_GetProperty(cx, obj, name)
-         rc = JS_GetProperty(cx, obj, name, &vp);
-         if(rc) {
-             str = JS_ValueToString(cx, vp);
-+#if JS_VERSION < 185
-             if(strcmp(JS_GetStringBytes(str), "undefined") == 0) {
-+#else
-+            if(strcmp(JS_EncodeString(cx, str), "undefined") == 0) {
-+#endif
-                 sv = &PL_sv_undef;
-             } else {
-+#if JS_VERSION < 185
-                 sv_setpv(sv, JS_GetStringBytes(str));
-+#else
-+                sv_setpv(sv, JS_EncodeString(cx, str));
-+#endif
-             }
-         } else {
-             sv = &PL_sv_undef;
-@@ -675,10 +803,18 @@ JS_GetElement(cx, obj, idx)
-         rc = JS_GetElement(cx, obj, idx, &vp);
-         if(rc) {
-             str = JS_ValueToString(cx, vp);
-+#if JS_VERSION < 185
-             if(strcmp(JS_GetStringBytes(str), "undefined") == 0) {
-+#else
-+            if(strcmp(JS_EncodeString(cx, str), "undefined") == 0) {
-+#endif
-                 sv = &PL_sv_undef;
-             } else {
-+#if JS_VERSION < 185
-                 sv_setpv(sv, JS_GetStringBytes(str));
-+#else
-+                sv_setpv(sv, JS_EncodeString(cx, str));
-+#endif
-             }
-         } else {
-             sv = &PL_sv_undef;
-@@ -718,7 +854,11 @@ JS_SetMaxBranchOperations(cx, max_branch_operations)
-         PJS_Context* pcx = (PJS_Context *) JS_GetContextPrivate(cx);
-         pcx->branch_count = 0;
-         pcx->branch_max = max_branch_operations;
-+#if JS_VERSION < 181
-         JS_SetBranchCallback(cx, BranchHandler);
-+#else
-+        JS_SetOperationCallback(cx, BranchHandler);
-+#endif
-     }
-     OUTPUT:
- 
-diff --git a/t/error.t b/t/error.t
-index 732226c..de977a1 100644
---- a/t/error.t
-+++ b/t/error.t
-@@ -9,7 +9,7 @@ my $js1 = JavaScript::SpiderMonkey->new ();
- $js1->init ();
- ok (!$js1->eval ($jscode1));
- ok ($@ !~ "\n");
--ok ($@ =~ "SyntaxError");
-+ok ($@ =~ "SyntaxError" || $@ =~ "ReferenceError: invalid assignment 
left-hand side");
- #print "$@\n";
- my $jscode2 =<<EOF;
- var fruit = non_existant_function ();
--- 
-2.14.3
-

diff --git a/dev-perl/JavaScript-SpiderMonkey/metadata.xml 
b/dev-perl/JavaScript-SpiderMonkey/metadata.xml
deleted file mode 100644
index eb7edfd58c08..000000000000
--- a/dev-perl/JavaScript-SpiderMonkey/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
-<pkgmetadata>
-  <maintainer type="project">
-    <email>[email protected]</email>
-    <name>Gentoo Perl Project</name>
-  </maintainer>
-  <upstream>
-    <remote-id type="cpan">JavaScript-SpiderMonkey</remote-id>
-    <remote-id type="cpan-module">JavaScript::SpiderMonkey</remote-id>
-  </upstream>
-</pkgmetadata>

Reply via email to