summaryrefslogtreecommitdiffstats
path: root/abs/extra/spidermonkey
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/spidermonkey')
-rw-r--r--abs/extra/spidermonkey/PKGBUILD27
-rw-r--r--abs/extra/spidermonkey/header.patch12
-rw-r--r--abs/extra/spidermonkey/spidermonkey-1.7-threadsafe.patch16
3 files changed, 55 insertions, 0 deletions
diff --git a/abs/extra/spidermonkey/PKGBUILD b/abs/extra/spidermonkey/PKGBUILD
new file mode 100644
index 0000000..3a44af3
--- /dev/null
+++ b/abs/extra/spidermonkey/PKGBUILD
@@ -0,0 +1,27 @@
+pkgname=spidermonkey
+pkgver=1.7.0
+pkgrel=2
+pkgdesc="Mozilla's C implementation of JavaScript."
+arch=("i686" "x86_64")
+url="http://www.mozilla.org/js/spidermonkey/"
+license=('MPL' 'GPL' 'LGPL')
+depends=('nspr')
+options=('!makeflags' 'force')
+source=("http://ftp.mozilla.org/pub/mozilla.org/js/js-$pkgver.tar.gz" \
+ "spidermonkey-1.7-threadsafe.patch" "header.patch")
+md5sums=('5571134c3863686b623ebe4e6b1f6fe6' 'b2ef9be017b6aa1857354b5223975a4f')
+
+build()
+{
+ cd $startdir/src/js/src
+ # fix for the lib location
+ [ "$CARCH" = "x86_64" ] && (sed -i -e "s:lib64:lib:g" config.mk || return 1)
+ # patch Makefile for threadsafe support with native nspr
+ patch -p2 -i $startdir/src/spidermonkey-1.7-threadsafe.patch || return 1
+ patch -p2 -i $startdir/src/header.patch || return 1
+ # build - threadsafe
+ make -f Makefile.ref BUILD_OPT=1 JS_THREADSAFE=1 DIST=$startdir/pkg/usr all export || return 1
+ # install
+ mkdir -p $startdir/pkg/usr/include/js
+ mv $startdir/pkg/usr/include/*.h $startdir/pkg/usr/include/js/
+}
diff --git a/abs/extra/spidermonkey/header.patch b/abs/extra/spidermonkey/header.patch
new file mode 100644
index 0000000..b69caae
--- /dev/null
+++ b/abs/extra/spidermonkey/header.patch
@@ -0,0 +1,12 @@
+diff -aur js.orig/src/Makefile.ref js/src/Makefile.ref
+--- js.orig/src/Makefile.ref 2008-07-18 21:05:37.154351682 +0800
++++ js/src/Makefile.ref 2008-07-18 21:06:39.291061725 +0800
+@@ -188,6 +188,8 @@
+ jsstr.h \
+ jsxdrapi.h \
+ jsxml.h \
++ jsutil.h \
++ jsprf.h \
+ $(NULL)
+
+ API_HFILES = \
diff --git a/abs/extra/spidermonkey/spidermonkey-1.7-threadsafe.patch b/abs/extra/spidermonkey/spidermonkey-1.7-threadsafe.patch
new file mode 100644
index 0000000..da6c78d
--- /dev/null
+++ b/abs/extra/spidermonkey/spidermonkey-1.7-threadsafe.patch
@@ -0,0 +1,16 @@
+--- js/src/Makefile.ref.orig 2008-05-28 19:51:32.000000000 -0400
++++ js/src/Makefile.ref 2008-05-28 19:52:17.000000000 -0400
+@@ -63,11 +63,11 @@
+
+ ifdef JS_THREADSAFE
+ DEFINES += -DJS_THREADSAFE
+-INCLUDES += -I$(DIST)/include/nspr
++INCLUDES += -I/usr/include/nspr
+ ifdef USE_MSVC
+ OTHER_LIBS += $(DIST)/lib/libnspr$(NSPR_LIBSUFFIX).lib
+ else
+-OTHER_LIBS += -L$(DIST)/lib -lnspr$(NSPR_LIBSUFFIX)
++OTHER_LIBS += -L/usr/$(LIBDIR)/nspr -lnspr${NSPR_LIBSUFFIX}
+ endif
+ endif
+