Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Oct 2012 23:36:42 +1100 (EST)
From:      Kubilay Kocak <koobs.freebsd@gmail.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/172710: [NEW PORT] lang/spidermonkey185: Standalone JavaScript (1.8.5) interpreter from Mozilla
Message-ID:  <20121015123643.35A3F3B1F7@freebsd-9-amd64.localdomain>
Resent-Message-ID: <201210151240.q9FCe128022151@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         172710
>Category:       ports
>Synopsis:       [NEW PORT] lang/spidermonkey185: Standalone JavaScript (1.8.5) interpreter from Mozilla
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 15 12:40:01 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Kubilay Kocak
>Release:        FreeBSD 9.0-RELEASE-p3 amd64
>Organization:
>Environment:
System: FreeBSD freebsd-9-amd64 9.0-RELEASE-p3 FreeBSD 9.0-RELEASE-p3 #0: Sat Jul  7 21:26:56 EST
>Description:
Spidermonkey is the JavaScript interpreter from the Mozilla project.

WWW: http://www.mozilla.org/js/spidermonkey/

This port is a 3 way "merge" of:

1) ports/170768
2) https://redports.org/browser/avg/lang/spidermonkey/
3) kwm@ work: .http://www.marcuscom.com:8080/cgi-bin/cvsweb.cgi/ports/lang/spidermonkey/

The goals were:

- Take the 'best' (subjective, with discretion) bits of each body of work
- Reduce patch work and stay close to upstream
- Lots of OPTIONS for user-choice (with recommended DEFAULTS) 
- Include JS version in PORTNAME to support multiple spidermonkey ports. 

Thank you kwm@ flo@ and t_j for your feedback, tips and suggestions.

======[QA]======

portlint: looks fine.
porttest: OK
unittests: FreeBSD 9.0 AMD64
	===> Running jstests.py: PASS
	===> Running jit_test.py: PASSED ALL
redports: https://redports.org/buildarchive/20121013113153-58992/

Note 1: all redports builds include 2 x test suite runs (JSTEST & JIT). See
buildlog output for details.

Note 2: There are intermittent test failures in:  js1_8_5/extensions/worker-terminate.js

JS shell workers have been removed from upstream, see:

https://bugzilla.mozilla.org/show_bug.cgi?id=771281
https://bugzilla.mozilla.org/show_bug.cgi?id=731448
https://bugzilla.mozilla.org/show_bug.cgi?id=644393

================

Generated with FreeBSD Port Tools 0.99_6 (mode: new)
>How-To-Repeat:
>Fix:

--- .shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	spidermonkey185
#	spidermonkey185/distinfo
#	spidermonkey185/pkg-descr
#	spidermonkey185/pkg-plist
#	spidermonkey185/Makefile
#
echo c - spidermonkey185
mkdir -p spidermonkey185 > /dev/null 2>&1
echo x - spidermonkey185/distinfo
sed 's/^X//' >spidermonkey185/distinfo << 'f9d5f7141718cfad6c04f596902a9cf2'
XSHA256 (js185-1.0.0.tar.gz) = 5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687
XSIZE (js185-1.0.0.tar.gz) = 6164605
f9d5f7141718cfad6c04f596902a9cf2
echo x - spidermonkey185/pkg-descr
sed 's/^X//' >spidermonkey185/pkg-descr << 'cc9dc219807a4cbdfc7d38af1346ea80'
XSpidermonkey is the JavaScript interpreter from the Mozilla project.
X
XWWW: http://www.mozilla.org/js/spidermonkey/
cc9dc219807a4cbdfc7d38af1346ea80
echo x - spidermonkey185/pkg-plist
sed 's/^X//' >spidermonkey185/pkg-plist << 'cfb230880fe737001891622885626ab7'
Xbin/js-config
Xinclude/js/Allocator.h
Xinclude/js/Assembler.h
Xinclude/js/CodeAlloc.h
Xinclude/js/Containers.h
Xinclude/js/Fragmento.h
Xinclude/js/LIR.h
Xinclude/js/LIRopcode.tbl
Xinclude/js/Native.h
Xinclude/js/NativeCommon.h
X%%ARM%%/include/js/NativeARM.h
X%%MIPS%%/include/js/NativeMIPS.h
X%%PPC%%/include/js/NativePPC.h
X%%SPARC%%/include/js/NativeSparc.h
X%%AMD64%%include/js/NativeX64.h
X%%I386%%include/js/Nativei386.h
Xinclude/js/RegAlloc.h
Xinclude/js/VMPI.h
Xinclude/js/Writer.h
Xinclude/js/avmplus.h
Xinclude/js/js-config.h
Xinclude/js/js.msg
Xinclude/js/jsanalyze.h
Xinclude/js/jsapi.h
Xinclude/js/jsarena.h
Xinclude/js/jsarray.h
Xinclude/js/jsatom.h
Xinclude/js/jsautocfg.h
Xinclude/js/jsautokw.h
Xinclude/js/jsbit.h
Xinclude/js/jsbool.h
Xinclude/js/jsbuiltins.h
Xinclude/js/jscell.h
Xinclude/js/jsclist.h
Xinclude/js/jsclone.h
Xinclude/js/jscntxt.h
Xinclude/js/jscompartment.h
Xinclude/js/jscompat.h
Xinclude/js/jsdate.h
Xinclude/js/jsdbgapi.h
Xinclude/js/jsdhash.h
Xinclude/js/jsdtoa.h
Xinclude/js/jsemit.h
Xinclude/js/jsfriendapi.h
Xinclude/js/jsfun.h
Xinclude/js/jsgc.h
Xinclude/js/jsgcchunk.h
Xinclude/js/jsgcstats.h
Xinclude/js/jshash.h
Xinclude/js/jshashtable.h
Xinclude/js/jshotloop.h
Xinclude/js/jsinterp.h
Xinclude/js/jsinttypes.h
Xinclude/js/jsiter.h
Xinclude/js/jslock.h
Xinclude/js/jslong.h
Xinclude/js/jsmath.h
Xinclude/js/jsobj.h
Xinclude/js/jsobjinlines.h
Xinclude/js/json.h
Xinclude/js/jsopcode.h
Xinclude/js/jsopcode.tbl
Xinclude/js/jsopcodeinlines.h
Xinclude/js/jsotypes.h
Xinclude/js/jsparse.h
Xinclude/js/jsperf.h
Xinclude/js/jsprf.h
Xinclude/js/jsprobes.h
Xinclude/js/jspropertycache.h
Xinclude/js/jspropertycacheinlines.h
Xinclude/js/jspropertytree.h
Xinclude/js/jsproto.tbl
Xinclude/js/jsproxy.h
Xinclude/js/jsprvtd.h
Xinclude/js/jspubtd.h
Xinclude/js/jsreflect.h
Xinclude/js/jsregexp.h
Xinclude/js/jsscan.h
Xinclude/js/jsscope.h
Xinclude/js/jsscript.h
Xinclude/js/jsscriptinlines.h
Xinclude/js/jsstaticcheck.h
Xinclude/js/jsstdint.h
Xinclude/js/jsstr.h
Xinclude/js/jstl.h
Xinclude/js/jstracer.h
Xinclude/js/jstypedarray.h
Xinclude/js/jstypes.h
Xinclude/js/jsutil.h
Xinclude/js/jsval.h
Xinclude/js/jsvalue.h
Xinclude/js/jsvector.h
Xinclude/js/jsversion.h
Xinclude/js/jswrapper.h
Xinclude/js/jsxdrapi.h
Xinclude/js/jsxml.h
Xinclude/js/nanojit.h
Xinclude/js/njconfig.h
Xinclude/js/njcpudetect.h
Xinclude/js/prmjtime.h
Xlib/libmozjs185.so
Xlib/libmozjs185-1.0.a
Xlib/libmozjs185.so.1.0.0
Xlib/libmozjs185.so.1.0
Xlibdata/pkgconfig/mozjs185.pc
X@dirrmtry libdata/pkgconfig
X@dirrm include/js
cfb230880fe737001891622885626ab7
echo x - spidermonkey185/Makefile
sed 's/^X//' >spidermonkey185/Makefile << 'dba563558d7bb3264392efc1f20d9287'
X# Created by: Kubilay Kocak <koobs.freebsd@gmail.com>
X# $FreeBSD$
X
XPORTNAME=		spidermonkey185
XPORTVERSION=		1.8.5
XCATEGORIES=		lang
XMASTER_SITES=		${MASTER_SITE_MOZILLA}
XMASTER_SITE_SUBDIR=	js
XDISTNAME=		js185-1.0.0
X
XMAINTAINER=		koobs.freebsd@gmail.com
XCOMMENT=		Standalone JavaScript (1.8.5) interpreter from Mozilla
X
XBUILD_DEPENDS=		zip:${PORTSDIR}/archivers/zip
XLIB_DEPENDS=		nspr4:${PORTSDIR}/devel/nspr
X
XCONFLICTS=		njs-[0-9]*
X
XGNU_CONFIGURE=		yes
XUSE_GMAKE=		yes
XUSE_GNOME=		gnomehack
XUSE_LDCONFIG=		yes
XUSE_PERL5_BUILD=	yes
XUSE_PYTHON_BUILD=	2.5-2.7
XMAKE_JOBS_SAFE=		yes
X
XWRKSRC=			${WRKDIR}/js-${PORTVERSION}/js/src
X
XCONFIGURE_ARGS=		--with-pthreads \
X			--with-system-nspr
X
X# This comes from bsd.gecko.mk, fixes linking issues on 9.0 and higher.
Xpost-configure:
X	${ECHO_CMD} "fenv.h" >> ${WRKSRC}/config/system-headers
X	${ECHO_CMD} "pthread_np.h" >> ${WRKSRC}/config/system-headers
X
XOPTIONS_DEFINE=		DEBUG GCZEAL JEMALLOC METHODJIT OPTIMIZE READLINE \
X			THREADSAFE TRACEJIT UTF8 \
X
XOPTIONS_DEFAULT=	METHODJIT OPTIMIZE READLINE THREADSAFE TRACEJIT
X
XDEBUG_DESC=		Enable Debug build
XGCZEAL_DESC=		Enable Zealous garbage collecting
XJEMALLOC_DESC=		Use jemalloc as memory allocator
XMETHODJIT_DESC=		Enable method JIT support
XOPTIMIZE_DESC=		Enable compiler optimizations
XREADLINE_DESC=		Link js shell to system readline library
XTHREADSAFE_DESC=	Enable multiple thread support
XTRACEJIT_DESC=		Enable tracing JIT support
XUTF8_DESC=		Treat strings as UTF8 instead of ISO-8859-1
X
X.include <bsd.port.options.mk>
X
X.if ${PORT_OPTIONS:MDEBUG}
XCONFIGURE_ARGS+=	--enable-debug \
X			--enable-debug-symbols
X.else
XCONFIGURE_ARGS+=	--disable-debug
X.endif
X
X.if ${PORT_OPTIONS:MGCZEAL}
XCONFIGURE_ARGS+=	--enable-gczeal
X.else
XCONFIGURE_ARGS+=	--disable-gczeal
X.endif
X
X.if ${PORT_OPTIONS:MJEMALLOC}
XCONFIGURE_ARGS+=	--enable-jemalloc
X.else
XCONFIGURE_ARGS+=	--disable-jemalloc
X.endif
X
X.if ${PORT_OPTIONS:MMETHODJIT}
XCONFIGURE_ARGS+=	--enable-methodjit
X.else
XCONFIGURE_ARGS+=	--disable-methodjit
X.endif
X
X.if ${PORT_OPTIONS:MOPTIMIZE}
XCONFIGURE_ARGS+=	--enable-optimize
X.else
XCONFIGURE_ARGS+=	--disable-optimize
X.endif
X
X.if ${PORT_OPTIONS:MREADLINE}
XCONFIGURE_ARGS+=	--enable-readline
X.else
XCONFIGURE_ARGS+=	--disable-readline
X.endif
X
X.if ${PORT_OPTIONS:MTHREADSAFE}
XCONFIGURE_ARGS+=	--enable-threadsafe
X.else
XCONFIGURE_ARGS+=	--disable-threadsafe
X.endif
X
X.if ${PORT_OPTIONS:MTRACEJIT}
XCONFIGURE_ARGS+=	--enable-tracejit
X.else
XCONFIGURE_ARGS+=	--disable-tracejit
X.endif
X
X.if ${PORT_OPTIONS:MUTF8}
XCFLAGS+=		-DJS_C_STRINGS_ARE_UTF8
X.endif
X
X.include <bsd.port.pre.mk>
X
X.if ${ARCH} == amd64
XCONFIGURE_TARGET=	x86_64-portbld-freebsd${OSREL}
X.endif
X
X.if ${ARCH} == "sparc64" && ${OSVERSION} > 900000
XBROKEN=			Does not build on sparc64-9: fails to link
X.endif
X
X.if ${ARCH} == "amd64"
XPLIST_SUB+=	AMD64=""
X.else
XPLIST_SUB+=	AMD64="@comment "
X.endif
X
X.if ${ARCH} == "i386"
XPLIST_SUB+=	I386=""
X.else
XPLIST_SUB+=	I386="@comment "
X.endif
X
X.if ${ARCH} == "arm"
XPLIST_SUB+=	ARM=""
X.else
XPLIST_SUB+=	ARM="@comment "
X.endif
X
X.if ${ARCH} == "mips"
XPLIST_SUB+=	MIPS=""
X.else
XPLIST_SUB+=	MIPS="@comment "
X.endif
X
X.if ${ARCH} == "powerpc" || ${ARCH} == "powerpc64"
XPLIST_SUB+=	PPC=""
X.else
XPLIST_SUB+=	PPC="@comment "
X.endif
X
X.if ${ARCH} == "sparc64"
XPLIST_SUB+=	SPARC=""
X.else
XPLIST_SUB+=	SPARC="@comment "
X.endif
X
Xregression-test: build
X	@${ECHO_MSG} -n "===> Running jstests.py: "
X	@cd ${WRKSRC} && ${SETENV} TZ=PST8PDT ${PYTHON_CMD} tests/jstests.py \
X	--no-progress ./js
X.if ${PORT_OPTIONS:MMETHODJIT} || ${PORT_OPTIONS:MTRACEJIT}
X	@${ECHO_MSG} -n "===> Running jit_test.py: "
X	@cd ${WRKSRC} && ${SETENV} TZ=PST8PDT ${PYTHON_CMD} jit-test/jit_test.py \
X	--no-progress --jitflags=,m,j,mj,mjp,am,amj,amjp,amd ./js
X.endif
X
X.include <bsd.port.post.mk>
dba563558d7bb3264392efc1f20d9287
exit
--- .shar ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20121015123643.35A3F3B1F7>