aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortj <tj@FreeBSD.org>2012-10-17 07:09:10 +0800
committertj <tj@FreeBSD.org>2012-10-17 07:09:10 +0800
commit6ee428c05c4b15f80c913d8222fca59f4007c3fe (patch)
tree1bd00506a8fd9836fe761088818795e3e97f6fb6
parent98821fb37fcec9f254ce30559d08b39937cf2f7d (diff)
downloadfreebsd-ports-gnome-6ee428c05c4b15f80c913d8222fca59f4007c3fe.tar.gz
freebsd-ports-gnome-6ee428c05c4b15f80c913d8222fca59f4007c3fe.tar.zst
freebsd-ports-gnome-6ee428c05c4b15f80c913d8222fca59f4007c3fe.zip
Spidermonkey is the JavaScript interpreter from the Mozilla project.
WWW: http://www.mozilla.org/js/spidermonkey/ Feature safe: yes PR: ports/172710 PR: ports/170768 Submitted by: Kubilay Kocak <koobs.freebsd@gmail.com> Submitted by: Anton Afanasyev <aasoft@gmail.com> Submitted by: avg Reviewed by: kwm, flo Approved by: eadler (mentor)
-rw-r--r--lang/Makefile1
-rw-r--r--lang/spidermonkey185/Makefile163
-rw-r--r--lang/spidermonkey185/distinfo2
-rw-r--r--lang/spidermonkey185/pkg-descr3
-rw-r--r--lang/spidermonkey185/pkg-plist107
5 files changed, 276 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile
index bd082b8c2a47..838c3e0f8bba 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -327,6 +327,7 @@
SUBDIR += sml-nj-devel
SUBDIR += snobol4
SUBDIR += spidermonkey17
+ SUBDIR += spidermonkey185
SUBDIR += spl
SUBDIR += squeak
SUBDIR += squirrel
diff --git a/lang/spidermonkey185/Makefile b/lang/spidermonkey185/Makefile
new file mode 100644
index 000000000000..76f178bc4da5
--- /dev/null
+++ b/lang/spidermonkey185/Makefile
@@ -0,0 +1,163 @@
+# Created by: Kubilay Kocak <koobs.freebsd@gmail.com>
+# $FreeBSD$
+
+PORTNAME= spidermonkey185
+PORTVERSION= 1.8.5
+CATEGORIES= lang
+MASTER_SITES= ${MASTER_SITE_MOZILLA}
+MASTER_SITE_SUBDIR= js
+DISTNAME= js185-1.0.0
+
+MAINTAINER= koobs.freebsd@gmail.com
+COMMENT= Standalone JavaScript (1.8.5) interpreter from Mozilla
+
+BUILD_DEPENDS= zip:${PORTSDIR}/archivers/zip
+LIB_DEPENDS= nspr4:${PORTSDIR}/devel/nspr
+
+CONFLICTS= njs-[0-9]*
+
+GNU_CONFIGURE= yes
+USE_GMAKE= yes
+USE_GNOME= gnomehack
+USE_LDCONFIG= yes
+USE_PERL5_BUILD= yes
+USE_PYTHON_BUILD= 2.5-2.7
+MAKE_JOBS_SAFE= yes
+
+WRKSRC= ${WRKDIR}/js-${PORTVERSION}/js/src
+
+CONFIGURE_ARGS= --with-pthreads \
+ --with-system-nspr
+
+# This comes from bsd.gecko.mk, fixes linking issues on 9.0 and higher.
+post-configure:
+ ${ECHO_CMD} "fenv.h" >> ${WRKSRC}/config/system-headers
+ ${ECHO_CMD} "pthread_np.h" >> ${WRKSRC}/config/system-headers
+
+OPTIONS_DEFINE= DEBUG GCZEAL JEMALLOC METHODJIT OPTIMIZE READLINE \
+ THREADSAFE TRACEJIT UTF8 \
+
+OPTIONS_DEFAULT= METHODJIT OPTIMIZE READLINE THREADSAFE TRACEJIT
+
+DEBUG_DESC= Enable Debug build
+GCZEAL_DESC= Enable Zealous garbage collecting
+JEMALLOC_DESC= Use jemalloc as memory allocator
+METHODJIT_DESC= Enable method JIT support
+OPTIMIZE_DESC= Enable compiler optimizations
+READLINE_DESC= Link js shell to system readline library
+THREADSAFE_DESC= Enable multiple thread support
+TRACEJIT_DESC= Enable tracing JIT support
+UTF8_DESC= Treat strings as UTF8 instead of ISO-8859-1
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MDEBUG}
+CONFIGURE_ARGS+= --enable-debug \
+ --enable-debug-symbols
+.else
+CONFIGURE_ARGS+= --disable-debug
+.endif
+
+.if ${PORT_OPTIONS:MGCZEAL}
+CONFIGURE_ARGS+= --enable-gczeal
+.else
+CONFIGURE_ARGS+= --disable-gczeal
+.endif
+
+.if ${PORT_OPTIONS:MJEMALLOC}
+CONFIGURE_ARGS+= --enable-jemalloc
+.else
+CONFIGURE_ARGS+= --disable-jemalloc
+.endif
+
+.if ${PORT_OPTIONS:MMETHODJIT}
+CONFIGURE_ARGS+= --enable-methodjit
+.else
+CONFIGURE_ARGS+= --disable-methodjit
+.endif
+
+.if ${PORT_OPTIONS:MOPTIMIZE}
+CONFIGURE_ARGS+= --enable-optimize
+.else
+CONFIGURE_ARGS+= --disable-optimize
+.endif
+
+.if ${PORT_OPTIONS:MREADLINE}
+CONFIGURE_ARGS+= --enable-readline
+.else
+CONFIGURE_ARGS+= --disable-readline
+.endif
+
+.if ${PORT_OPTIONS:MTHREADSAFE}
+CONFIGURE_ARGS+= --enable-threadsafe
+.else
+CONFIGURE_ARGS+= --disable-threadsafe
+.endif
+
+.if ${PORT_OPTIONS:MTRACEJIT}
+CONFIGURE_ARGS+= --enable-tracejit
+.else
+CONFIGURE_ARGS+= --disable-tracejit
+.endif
+
+.if ${PORT_OPTIONS:MUTF8}
+CFLAGS+= -DJS_C_STRINGS_ARE_UTF8
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == amd64
+CONFIGURE_TARGET= x86_64-portbld-freebsd${OSREL}
+.endif
+
+.if ${ARCH} == "sparc64" && ${OSVERSION} > 900000
+BROKEN= Does not build on sparc64-9: fails to link
+.endif
+
+.if ${ARCH} == "amd64"
+PLIST_SUB+= AMD64=""
+.else
+PLIST_SUB+= AMD64="@comment "
+.endif
+
+.if ${ARCH} == "i386"
+PLIST_SUB+= I386=""
+.else
+PLIST_SUB+= I386="@comment "
+.endif
+
+.if ${ARCH} == "arm"
+PLIST_SUB+= ARM=""
+.else
+PLIST_SUB+= ARM="@comment "
+.endif
+
+.if ${ARCH} == "mips"
+PLIST_SUB+= MIPS=""
+.else
+PLIST_SUB+= MIPS="@comment "
+.endif
+
+.if ${ARCH} == "powerpc" || ${ARCH} == "powerpc64"
+PLIST_SUB+= PPC=""
+.else
+PLIST_SUB+= PPC="@comment "
+.endif
+
+.if ${ARCH} == "sparc64"
+PLIST_SUB+= SPARC=""
+.else
+PLIST_SUB+= SPARC="@comment "
+.endif
+
+regression-test: build
+ @${ECHO_MSG} -n "===> Running jstests.py: "
+ @cd ${WRKSRC} && ${SETENV} TZ=PST8PDT ${PYTHON_CMD} tests/jstests.py \
+ --no-progress ./js
+.if ${PORT_OPTIONS:MMETHODJIT} || ${PORT_OPTIONS:MTRACEJIT}
+ @${ECHO_MSG} -n "===> Running jit_test.py: "
+ @cd ${WRKSRC} && ${SETENV} TZ=PST8PDT ${PYTHON_CMD} jit-test/jit_test.py \
+ --no-progress --jitflags=,m,j,mj,mjp,am,amj,amjp,amd ./js
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/lang/spidermonkey185/distinfo b/lang/spidermonkey185/distinfo
new file mode 100644
index 000000000000..ac820e9f43a3
--- /dev/null
+++ b/lang/spidermonkey185/distinfo
@@ -0,0 +1,2 @@
+SHA256 (js185-1.0.0.tar.gz) = 5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687
+SIZE (js185-1.0.0.tar.gz) = 6164605
diff --git a/lang/spidermonkey185/pkg-descr b/lang/spidermonkey185/pkg-descr
new file mode 100644
index 000000000000..db4318240eed
--- /dev/null
+++ b/lang/spidermonkey185/pkg-descr
@@ -0,0 +1,3 @@
+Spidermonkey is the JavaScript interpreter from the Mozilla project.
+
+WWW: http://www.mozilla.org/js/spidermonkey/
diff --git a/lang/spidermonkey185/pkg-plist b/lang/spidermonkey185/pkg-plist
new file mode 100644
index 000000000000..16f6b4a20717
--- /dev/null
+++ b/lang/spidermonkey185/pkg-plist
@@ -0,0 +1,107 @@
+bin/js-config
+include/js/Allocator.h
+include/js/Assembler.h
+include/js/CodeAlloc.h
+include/js/Containers.h
+include/js/Fragmento.h
+include/js/LIR.h
+include/js/LIRopcode.tbl
+include/js/Native.h
+include/js/NativeCommon.h
+%%ARM%%/include/js/NativeARM.h
+%%MIPS%%/include/js/NativeMIPS.h
+%%PPC%%/include/js/NativePPC.h
+%%SPARC%%/include/js/NativeSparc.h
+%%AMD64%%include/js/NativeX64.h
+%%I386%%include/js/Nativei386.h
+include/js/RegAlloc.h
+include/js/VMPI.h
+include/js/Writer.h
+include/js/avmplus.h
+include/js/js-config.h
+include/js/js.msg
+include/js/jsanalyze.h
+include/js/jsapi.h
+include/js/jsarena.h
+include/js/jsarray.h
+include/js/jsatom.h
+include/js/jsautocfg.h
+include/js/jsautokw.h
+include/js/jsbit.h
+include/js/jsbool.h
+include/js/jsbuiltins.h
+include/js/jscell.h
+include/js/jsclist.h
+include/js/jsclone.h
+include/js/jscntxt.h
+include/js/jscompartment.h
+include/js/jscompat.h
+include/js/jsdate.h
+include/js/jsdbgapi.h
+include/js/jsdhash.h
+include/js/jsdtoa.h
+include/js/jsemit.h
+include/js/jsfriendapi.h
+include/js/jsfun.h
+include/js/jsgc.h
+include/js/jsgcchunk.h
+include/js/jsgcstats.h
+include/js/jshash.h
+include/js/jshashtable.h
+include/js/jshotloop.h
+include/js/jsinterp.h
+include/js/jsinttypes.h
+include/js/jsiter.h
+include/js/jslock.h
+include/js/jslong.h
+include/js/jsmath.h
+include/js/jsobj.h
+include/js/jsobjinlines.h
+include/js/json.h
+include/js/jsopcode.h
+include/js/jsopcode.tbl
+include/js/jsopcodeinlines.h
+include/js/jsotypes.h
+include/js/jsparse.h
+include/js/jsperf.h
+include/js/jsprf.h
+include/js/jsprobes.h
+include/js/jspropertycache.h
+include/js/jspropertycacheinlines.h
+include/js/jspropertytree.h
+include/js/jsproto.tbl
+include/js/jsproxy.h
+include/js/jsprvtd.h
+include/js/jspubtd.h
+include/js/jsreflect.h
+include/js/jsregexp.h
+include/js/jsscan.h
+include/js/jsscope.h
+include/js/jsscript.h
+include/js/jsscriptinlines.h
+include/js/jsstaticcheck.h
+include/js/jsstdint.h
+include/js/jsstr.h
+include/js/jstl.h
+include/js/jstracer.h
+include/js/jstypedarray.h
+include/js/jstypes.h
+include/js/jsutil.h
+include/js/jsval.h
+include/js/jsvalue.h
+include/js/jsvector.h
+include/js/jsversion.h
+include/js/jswrapper.h
+include/js/jsxdrapi.h
+include/js/jsxml.h
+include/js/nanojit.h
+include/js/njconfig.h
+include/js/njcpudetect.h
+include/js/prmjtime.h
+lib/libmozjs185.so
+lib/libmozjs185-1.0.a
+lib/libmozjs185.so.1.0.0
+lib/libmozjs185.so.1.0
+libdata/pkgconfig/mozjs185.pc
+@dirrmtry libdata/pkgconfig
+@dirrm include/js