Add spidermonkey52 52.8.0.
Spidermonkey is Mozilla's JS engine. This version is based on Firefox ESR 52. There is no standalone release for so build it out of the ESR distfile. Obtained from: gnome devel repo
This commit is contained in:
parent
1e5bc56722
commit
f0bb8e49ed
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=470485
7 changed files with 344 additions and 0 deletions
|
@ -344,6 +344,7 @@
|
|||
SUBDIR += spidermonkey185
|
||||
SUBDIR += spidermonkey24
|
||||
SUBDIR += spidermonkey38
|
||||
SUBDIR += spidermonkey52
|
||||
SUBDIR += spl
|
||||
SUBDIR += squeak
|
||||
SUBDIR += squirrel
|
||||
|
|
91
lang/spidermonkey52/Makefile
Normal file
91
lang/spidermonkey52/Makefile
Normal file
|
@ -0,0 +1,91 @@
|
|||
# Created by: Kubilay Kocak <koobs@FreeBSD.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= spidermonkey
|
||||
PORTVERSION= 52.8.0
|
||||
PORTREVISION= 0
|
||||
CATEGORIES= lang
|
||||
MASTER_SITES= MOZILLA/firefox/releases/${PORTVERSION}esr/source
|
||||
DISTNAME= firefox-${PORTVERSION}esr.source
|
||||
PKGNAMESUFFIX= ${SP_VER}
|
||||
|
||||
MAINTAINER= kwm@FreeBSD.org
|
||||
COMMENT= Standalone JavaScript based from Mozilla 52-esr
|
||||
|
||||
BUILD_DEPENDS= autoconf-2.13:devel/autoconf213
|
||||
LIB_DEPENDS= libnspr4.so:devel/nspr \
|
||||
libffi.so:devel/libffi \
|
||||
libicudata.so:devel/icu
|
||||
|
||||
HAS_CONFIGURE= yes
|
||||
USES= compiler:c++14-lang gmake localbase pathfix pkgconfig \
|
||||
python:2.7,build tar:xz
|
||||
# python:2.7,build readline tar:xz
|
||||
USE_LDCONFIG= yes
|
||||
SP_VER= 52
|
||||
|
||||
WRKSRC= ${WRKDIR}/firefox-${PORTVERSION}esr/js/src
|
||||
PATCH_WRKSRC= ${WRKDIR}/firefox-${PORTVERSION}esr/
|
||||
|
||||
CONFIGURE_ARGS= --with-pthreads \
|
||||
--target=${CONFIGURE_TARGET} \
|
||||
--with-intl-api \
|
||||
--with-system-zlib \
|
||||
--disable-gold \
|
||||
--with-system-icu \
|
||||
--with-system-nspr
|
||||
|
||||
OPTIONS_DEFINE= DEBUG GCZEAL JEMALLOC OPTIMIZE READLINE UTF8 DTRACE
|
||||
OPTIONS_DEFAULT=METHODJIT OPTIMIZE READLINE
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
DEBUG_CONFIGURE_ENABLE= debug debug-symbols
|
||||
DEBUG_CONFIGURE_DISABLE=debug
|
||||
|
||||
DTRACE_CONFIGURE_ENABLE=dtrace profiling
|
||||
DTRACE_LIBS= -lelf
|
||||
|
||||
GCZEAL_DESC= Enable Zealous garbage collecting
|
||||
GCZEAL_CONFIGURE_ENABLE=gczeal
|
||||
|
||||
JEMALLOC_DESC= Use jemalloc as memory allocator
|
||||
JEMALLOC_CONFIGURE_ENABLE= jemalloc
|
||||
|
||||
OPTIMIZE_DESC= Enable compiler optimizations
|
||||
OPTIMIZE_CONFIGURE_ENABLE= optimize
|
||||
|
||||
READLINE_DESC= Link js shell to the readline library
|
||||
READLINE_USES= readline
|
||||
READLINE_CONFIGURE_ENABLE= readline
|
||||
|
||||
UTF8_DESC= Treat strings as UTF8 instead of ISO-8859-1
|
||||
UTF8_CFLAGS= -DJS_C_STRINGS_ARE_UTF8
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${ARCH} == amd64
|
||||
CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL}
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
# Skip some tests because bundled icu differs from system
|
||||
@${RM} ${WRKSRC}/tests/test262/intl402/ch10/10.2/10.2.3_b.js \
|
||||
${WRKSRC}/tests/Intl/DateTimeFormat/format.js \
|
||||
${WRKSRC}/tests/ecma_6/String/normalize-generateddata-part1-not-listed.js
|
||||
pre-configure:
|
||||
cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13
|
||||
|
||||
regression-test: build
|
||||
@${ECHO_MSG} -n "===> Running jstests.py: "
|
||||
@cd ${WRKSRC} && ${SETENV} TZ=PST8PDT ${PYTHON_CMD} tests/jstests.py \
|
||||
-d -s --no-progress ./js/src/shell/js
|
||||
|
||||
post-install:
|
||||
${RM} ${STAGEDIR}${PREFIX}/lib/libjs_static.ajs
|
||||
${LN} -fs libmozjs-${SP_VER}.so ${STAGEDIR}${PREFIX}/lib/libmozjs-${SP_VER}.so.1
|
||||
.if ! ${PORT_OPTIONS:MDTRACE}
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/js${SP_VER}
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmozjs-${SP_VER}.*
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
3
lang/spidermonkey52/distinfo
Normal file
3
lang/spidermonkey52/distinfo
Normal file
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1525963979
|
||||
SHA256 (firefox-52.8.0esr.source.tar.xz) = babed4fe0ae95783e39358aedf7111b20fd9442f73b3b41b025fa4951fe76287
|
||||
SIZE (firefox-52.8.0esr.source.tar.xz) = 214054520
|
23
lang/spidermonkey52/files/patch-1426865
Normal file
23
lang/spidermonkey52/files/patch-1426865
Normal file
|
@ -0,0 +1,23 @@
|
|||
Proposed workaround/fix for:
|
||||
https://bugzilla.mozilla.org/show_bug.cgi?id=1426865
|
||||
|
||||
diff --git a/js/public/TypeDecls.h b/js/public/TypeDecls.h
|
||||
index acb93f9..cbd4b04 100644
|
||||
--- js/public/TypeDecls.h
|
||||
+++ js/public/TypeDecls.h
|
||||
@@ -22,6 +22,8 @@
|
||||
|
||||
#include "js-config.h"
|
||||
|
||||
+#pragma GCC visibility push(default)
|
||||
+
|
||||
struct JSContext;
|
||||
class JSFunction;
|
||||
class JSObject;
|
||||
@@ -76,4 +78,6 @@ typedef PersistentRooted<Value> PersistentRootedValue;
|
||||
|
||||
} // namespace JS
|
||||
|
||||
+#pragma GCC visibility pop
|
||||
+
|
||||
#endif /* js_TypeDecls_h */
|
62
lang/spidermonkey52/files/patch-disable-mozglue
Normal file
62
lang/spidermonkey52/files/patch-disable-mozglue
Normal file
|
@ -0,0 +1,62 @@
|
|||
From 1dd00ba521afd812ba42d94be8772603d3590b43 Mon Sep 17 00:00:00 2001
|
||||
From: Till Schneidereit <till@tillschneidereit.net>
|
||||
Date: Thu, 1 Oct 2015 12:59:09 +0200
|
||||
Subject: [PATCH] Disable MOZ_GLUE_IN_PROGRAM in stand-alone builds on all
|
||||
platforms
|
||||
|
||||
Otherwise, build fails not being able to find HashBytes.
|
||||
|
||||
Patch ported forward to mozjs52 by Philip Chimento
|
||||
<philip.chimento@gmail.com>.
|
||||
|
||||
https://bugzilla.mozilla.org/show_bug.cgi?id=1176787
|
||||
---
|
||||
|
||||
diff --git a/js/src/old-configure.in b/js/src/old-configure.in
|
||||
index 1c5c9e214..ff0617e31 100644
|
||||
--- js/src/old-configure.in
|
||||
+++ js/src/old-configure.in
|
||||
@@ -1623,16 +1623,21 @@ dnl ========================================================
|
||||
dnl = Enable jemalloc
|
||||
dnl ========================================================
|
||||
|
||||
-case "${OS_TARGET}" in
|
||||
-Android|WINNT|Darwin)
|
||||
+dnl In stand-alone builds we always only want to link executables against mozglue.
|
||||
+if test "$JS_STANDALONE"; then
|
||||
MOZ_GLUE_IN_PROGRAM=
|
||||
- ;;
|
||||
-*)
|
||||
- dnl On !Android !Windows !OSX, we only want to link executables against mozglue
|
||||
- MOZ_GLUE_IN_PROGRAM=1
|
||||
- AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
|
||||
- ;;
|
||||
-esac
|
||||
+else
|
||||
+ case "${OS_TARGET}" in
|
||||
+ Android|WINNT|Darwin)
|
||||
+ MOZ_GLUE_IN_PROGRAM=
|
||||
+ ;;
|
||||
+ *)
|
||||
+ dnl On !Android !Windows !OSX, we only want to link executables against mozglue
|
||||
+ MOZ_GLUE_IN_PROGRAM=1
|
||||
+ AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
|
||||
+ ;;
|
||||
+ esac
|
||||
+fi
|
||||
|
||||
if test "$MOZ_MEMORY"; then
|
||||
if test "x$MOZ_DEBUG" = "x1"; then
|
||||
diff --git a/mozglue/build/moz.build b/mozglue/build/moz.build
|
||||
index d28974778..e3be5a2b9 100644
|
||||
--- mozglue/build/moz.build
|
||||
+++ mozglue/build/moz.build
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Build mozglue as a shared lib on Windows, OSX and Android.
|
||||
# If this is ever changed, update MOZ_SHARED_MOZGLUE in browser/installer/Makefile.in
|
||||
-if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android'):
|
||||
+if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android') and not CONFIG['JS_STANDALONE']:
|
||||
SharedLibrary('mozglue')
|
||||
else:
|
||||
Library('mozglue')
|
3
lang/spidermonkey52/pkg-descr
Normal file
3
lang/spidermonkey52/pkg-descr
Normal file
|
@ -0,0 +1,3 @@
|
|||
Spidermonkey is the JavaScript interpreter from the Mozilla project.
|
||||
|
||||
WWW: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
|
161
lang/spidermonkey52/pkg-plist
Normal file
161
lang/spidermonkey52/pkg-plist
Normal file
|
@ -0,0 +1,161 @@
|
|||
bin/js52
|
||||
bin/js52-config
|
||||
include/mozjs-52/fdlibm.h
|
||||
%%JEMALLOC%%include/mozjs-52/jemalloc_types.h
|
||||
include/mozjs-52/js-config.h
|
||||
include/mozjs-52/js.msg
|
||||
include/mozjs-52/js/CallArgs.h
|
||||
include/mozjs-52/js/CallNonGenericMethod.h
|
||||
include/mozjs-52/js/CharacterEncoding.h
|
||||
include/mozjs-52/js/Class.h
|
||||
include/mozjs-52/js/Conversions.h
|
||||
include/mozjs-52/js/Date.h
|
||||
include/mozjs-52/js/Debug.h
|
||||
include/mozjs-52/js/GCAPI.h
|
||||
include/mozjs-52/js/GCAnnotations.h
|
||||
include/mozjs-52/js/GCHashTable.h
|
||||
include/mozjs-52/js/GCPolicyAPI.h
|
||||
include/mozjs-52/js/GCVariant.h
|
||||
include/mozjs-52/js/GCVector.h
|
||||
include/mozjs-52/js/HashTable.h
|
||||
include/mozjs-52/js/HeapAPI.h
|
||||
include/mozjs-52/js/Id.h
|
||||
include/mozjs-52/js/Initialization.h
|
||||
include/mozjs-52/js/LegacyIntTypes.h
|
||||
include/mozjs-52/js/MemoryMetrics.h
|
||||
include/mozjs-52/js/Principals.h
|
||||
include/mozjs-52/js/ProfilingFrameIterator.h
|
||||
include/mozjs-52/js/ProfilingStack.h
|
||||
include/mozjs-52/js/Proxy.h
|
||||
include/mozjs-52/js/Realm.h
|
||||
include/mozjs-52/js/RequiredDefines.h
|
||||
include/mozjs-52/js/RootingAPI.h
|
||||
include/mozjs-52/js/SliceBudget.h
|
||||
include/mozjs-52/js/StructuredClone.h
|
||||
include/mozjs-52/js/SweepingAPI.h
|
||||
include/mozjs-52/js/TraceKind.h
|
||||
include/mozjs-52/js/TracingAPI.h
|
||||
include/mozjs-52/js/TrackedOptimizationInfo.h
|
||||
include/mozjs-52/js/TypeDecls.h
|
||||
include/mozjs-52/js/UbiNode.h
|
||||
include/mozjs-52/js/UbiNodeBreadthFirst.h
|
||||
include/mozjs-52/js/UbiNodeCensus.h
|
||||
include/mozjs-52/js/UbiNodeDominatorTree.h
|
||||
include/mozjs-52/js/UbiNodePostOrder.h
|
||||
include/mozjs-52/js/UbiNodeShortestPaths.h
|
||||
include/mozjs-52/js/UniquePtr.h
|
||||
include/mozjs-52/js/Utility.h
|
||||
include/mozjs-52/js/Value.h
|
||||
include/mozjs-52/js/Vector.h
|
||||
include/mozjs-52/js/WeakMapPtr.h
|
||||
include/mozjs-52/jsalloc.h
|
||||
include/mozjs-52/jsapi.h
|
||||
include/mozjs-52/jsbytecode.h
|
||||
include/mozjs-52/jsclist.h
|
||||
include/mozjs-52/jscpucfg.h
|
||||
include/mozjs-52/jsfriendapi.h
|
||||
include/mozjs-52/jsperf.h
|
||||
include/mozjs-52/jsprf.h
|
||||
include/mozjs-52/jsprototypes.h
|
||||
include/mozjs-52/jspubtd.h
|
||||
include/mozjs-52/jstypes.h
|
||||
include/mozjs-52/jsversion.h
|
||||
include/mozjs-52/jswrapper.h
|
||||
include/mozjs-52/mozilla/Alignment.h
|
||||
include/mozjs-52/mozilla/AllocPolicy.h
|
||||
include/mozjs-52/mozilla/AlreadyAddRefed.h
|
||||
include/mozjs-52/mozilla/Array.h
|
||||
include/mozjs-52/mozilla/ArrayUtils.h
|
||||
include/mozjs-52/mozilla/Assertions.h
|
||||
include/mozjs-52/mozilla/Atomics.h
|
||||
include/mozjs-52/mozilla/Attributes.h
|
||||
include/mozjs-52/mozilla/BinarySearch.h
|
||||
include/mozjs-52/mozilla/BloomFilter.h
|
||||
include/mozjs-52/mozilla/BufferList.h
|
||||
include/mozjs-52/mozilla/Casting.h
|
||||
include/mozjs-52/mozilla/ChaosMode.h
|
||||
include/mozjs-52/mozilla/Char16.h
|
||||
include/mozjs-52/mozilla/CheckedInt.h
|
||||
include/mozjs-52/mozilla/Compiler.h
|
||||
include/mozjs-52/mozilla/Compression.h
|
||||
include/mozjs-52/mozilla/DebugOnly.h
|
||||
include/mozjs-52/mozilla/Decimal.h
|
||||
include/mozjs-52/mozilla/EndianUtils.h
|
||||
include/mozjs-52/mozilla/EnumSet.h
|
||||
include/mozjs-52/mozilla/EnumTypeTraits.h
|
||||
include/mozjs-52/mozilla/EnumeratedArray.h
|
||||
include/mozjs-52/mozilla/EnumeratedRange.h
|
||||
include/mozjs-52/mozilla/FastBernoulliTrial.h
|
||||
include/mozjs-52/mozilla/FloatingPoint.h
|
||||
include/mozjs-52/mozilla/Function.h
|
||||
include/mozjs-52/mozilla/GuardObjects.h
|
||||
include/mozjs-52/mozilla/HashFunctions.h
|
||||
include/mozjs-52/mozilla/IndexSequence.h
|
||||
include/mozjs-52/mozilla/IntegerPrintfMacros.h
|
||||
include/mozjs-52/mozilla/IntegerRange.h
|
||||
include/mozjs-52/mozilla/IntegerTypeTraits.h
|
||||
include/mozjs-52/mozilla/JSONWriter.h
|
||||
include/mozjs-52/mozilla/Likely.h
|
||||
include/mozjs-52/mozilla/LinkedList.h
|
||||
include/mozjs-52/mozilla/MacroArgs.h
|
||||
include/mozjs-52/mozilla/MacroForEach.h
|
||||
include/mozjs-52/mozilla/MathAlgorithms.h
|
||||
include/mozjs-52/mozilla/Maybe.h
|
||||
include/mozjs-52/mozilla/MaybeOneOf.h
|
||||
include/mozjs-52/mozilla/MemoryChecking.h
|
||||
include/mozjs-52/mozilla/MemoryReporting.h
|
||||
include/mozjs-52/mozilla/Move.h
|
||||
include/mozjs-52/mozilla/NotNull.h
|
||||
include/mozjs-52/mozilla/NullPtr.h
|
||||
include/mozjs-52/mozilla/Opaque.h
|
||||
include/mozjs-52/mozilla/OperatorNewExtensions.h
|
||||
include/mozjs-52/mozilla/Pair.h
|
||||
include/mozjs-52/mozilla/PodOperations.h
|
||||
include/mozjs-52/mozilla/Poison.h
|
||||
include/mozjs-52/mozilla/Range.h
|
||||
include/mozjs-52/mozilla/RangedArray.h
|
||||
include/mozjs-52/mozilla/RangedPtr.h
|
||||
include/mozjs-52/mozilla/ReentrancyGuard.h
|
||||
include/mozjs-52/mozilla/RefCountType.h
|
||||
include/mozjs-52/mozilla/RefCounted.h
|
||||
include/mozjs-52/mozilla/RefPtr.h
|
||||
include/mozjs-52/mozilla/ReverseIterator.h
|
||||
include/mozjs-52/mozilla/RollingMean.h
|
||||
include/mozjs-52/mozilla/SHA1.h
|
||||
include/mozjs-52/mozilla/Saturate.h
|
||||
include/mozjs-52/mozilla/ScopeExit.h
|
||||
include/mozjs-52/mozilla/Scoped.h
|
||||
include/mozjs-52/mozilla/SegmentedVector.h
|
||||
include/mozjs-52/mozilla/SizePrintfMacros.h
|
||||
include/mozjs-52/mozilla/SplayTree.h
|
||||
include/mozjs-52/mozilla/Sprintf.h
|
||||
include/mozjs-52/mozilla/StackWalk.h
|
||||
include/mozjs-52/mozilla/StaticAnalysisFunctions.h
|
||||
include/mozjs-52/mozilla/TaggedAnonymousMemory.h
|
||||
include/mozjs-52/mozilla/TemplateLib.h
|
||||
include/mozjs-52/mozilla/TextUtils.h
|
||||
include/mozjs-52/mozilla/ThreadLocal.h
|
||||
include/mozjs-52/mozilla/TimeStamp.h
|
||||
include/mozjs-52/mozilla/ToString.h
|
||||
include/mozjs-52/mozilla/Tuple.h
|
||||
include/mozjs-52/mozilla/TypeTraits.h
|
||||
include/mozjs-52/mozilla/TypedEnumBits.h
|
||||
include/mozjs-52/mozilla/Types.h
|
||||
include/mozjs-52/mozilla/UniquePtr.h
|
||||
include/mozjs-52/mozilla/UniquePtrExtensions.h
|
||||
include/mozjs-52/mozilla/Unused.h
|
||||
include/mozjs-52/mozilla/Variant.h
|
||||
include/mozjs-52/mozilla/Vector.h
|
||||
include/mozjs-52/mozilla/WeakPtr.h
|
||||
include/mozjs-52/mozilla/XorShift128PlusRNG.h
|
||||
include/mozjs-52/mozilla/double-conversion.h
|
||||
include/mozjs-52/mozilla/fallible.h
|
||||
include/mozjs-52/mozilla/mozalloc.h
|
||||
include/mozjs-52/mozilla/mozalloc_abort.h
|
||||
include/mozjs-52/mozilla/mozalloc_oom.h
|
||||
include/mozjs-52/mozilla/utils.h
|
||||
%%JEMALLOC%%include/mozjs-52/mozmemory.h
|
||||
%%JEMALLOC%%include/mozjs-52/mozmemory_wrap.h
|
||||
lib/libmozjs-52.so
|
||||
lib/libmozjs-52.so.1
|
||||
libdata/pkgconfig/mozjs-52.pc
|
Loading…
Reference in a new issue