Index: head/lang/spidermonkey185/Makefile =================================================================== --- head/lang/spidermonkey185/Makefile (revision 442610) +++ head/lang/spidermonkey185/Makefile (revision 442611) @@ -1,130 +1,129 @@ # Created by: Kubilay Kocak # $FreeBSD$ PORTNAME= spidermonkey185 PORTVERSION= 1.8.5 PORTREVISION= 3 CATEGORIES= lang MASTER_SITES= MOZILLA/js DISTNAME= js185-1.0.0 MAINTAINER= koobs@FreeBSD.org COMMENT= Standalone JavaScript (1.8.5) interpreter from Mozilla BUILD_DEPENDS= zip:archivers/zip \ autoconf-2.13:devel/autoconf213 LIB_DEPENDS= libnspr4.so:devel/nspr CONFLICTS= njs-[0-9]* USES= gmake pathfix perl5 pkgconfig python:2,build GNU_CONFIGURE= yes USE_LDCONFIG= yes USE_PERL5= build WRKSRC= ${WRKDIR}/js-${PORTVERSION}/js/src BROKEN_aarch64= Does not compile: error: cacheFlush support is missing on this platform -BROKEN_armv6= Does not configure: error: compiler does not follow the C++ specification for temporary object destruction order BROKEN_mips64= Does not compile: error: const union jsval_layout has no member named word BROKEN_sparc64= Does not build: fails to link NOT_FOR_ARCHS= powerpc powerpc64 NOT_FOR_ARCHS_REASON= PowerPC is not supported; use lang/spidermonkey170 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 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 DEBUG_CONFIGURE_ENABLE= debug DEBUG_CONFIGURE_ON= --enable-debug-sumbols GCZEAL_CONFIGURE_ENABLE= gczeal JEMALLOC_CONFIGURE_ENABLE= jemalloc METHODJIT_CONFIGURE_ENABLE= methodjit OPTIMIZE_CONFIGURE_ENABLE= optimize READLINE_CONFIGURE_ENABLE= readline READLINE_USES= readline THREADSAFE_CONFIGURE_ENABLE= threadsafe TRACEJIT_CONFIGURE_ENABLE= tracejit UTF8_CFLAGS= -DJS_C_STRINGS_ARE_UTF8 .include .if ${ARCH} == amd64 CONFIGURE_TARGET= x86_64-portbld-freebsd${OSREL} .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 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 \ --no-progress --worker-count=${MAKE_JOBS_NUMBER} ./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 post-install: ${LN} -sf libmozjs185.so.1.0.0 ${STAGEDIR}${PREFIX}/lib/libmozjs185.so ${LN} -sf libmozjs185.so.1.0.0 ${STAGEDIR}${PREFIX}/lib/libmozjs185.so.1 ${LN} -sf libmozjs185.so.1.0.0 ${STAGEDIR}${PREFIX}/lib/libmozjs185.so.1.0 @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmozjs185.so.1.0.0 .include Index: head/lang/spidermonkey185/files/patch-assembler_jit_ExecutableAllocator.h =================================================================== --- head/lang/spidermonkey185/files/patch-assembler_jit_ExecutableAllocator.h (nonexistent) +++ head/lang/spidermonkey185/files/patch-assembler_jit_ExecutableAllocator.h (revision 442611) @@ -0,0 +1,14 @@ +--- assembler/jit/ExecutableAllocator.h.orig 2016-09-07 UTC ++++ assembler/jit/ExecutableAllocator.h +@@ -391,6 +391,11 @@ public: + { + CacheRangeFlush(code, size, CACHE_SYNC_ALL); + } ++#elif WTF_CPU_ARM_TRADITIONAL && WTF_PLATFORM_FREEBSD ++ static void cacheFlush(void* code, size_t size) ++ { ++ __clear_cache(code, reinterpret_cast(code) + size); ++ } + #else + #error "The cacheFlush support is missing on this platform." + #endif Property changes on: head/lang/spidermonkey185/files/patch-assembler_jit_ExecutableAllocator.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/lang/spidermonkey185/files/patch-assembler_wtf_Platform.h =================================================================== --- head/lang/spidermonkey185/files/patch-assembler_wtf_Platform.h (nonexistent) +++ head/lang/spidermonkey185/files/patch-assembler_wtf_Platform.h (revision 442611) @@ -0,0 +1,18 @@ +--- ./assembler/wtf/Platform.h.orig 2016-09-07 UTC ++++ ./assembler/wtf/Platform.h +@@ -213,6 +213,7 @@ + #elif defined(__ARM_ARCH_6__) \ + || defined(__ARM_ARCH_6J__) \ + || defined(__ARM_ARCH_6K__) \ ++ || defined(__ARM_ARCH_6KZ__) \ + || defined(__ARM_ARCH_6Z__) \ + || defined(__ARM_ARCH_6ZK__) \ + || defined(__ARM_ARCH_6T2__) \ +@@ -243,6 +244,7 @@ + + #elif defined(__ARM_ARCH_6J__) \ + || defined(__ARM_ARCH_6K__) \ ++ || defined(__ARM_ARCH_6KZ__) \ + || defined(__ARM_ARCH_6Z__) \ + || defined(__ARM_ARCH_6ZK__) \ + || defined(__ARM_ARCH_6M__) Property changes on: head/lang/spidermonkey185/files/patch-assembler_wtf_Platform.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/lang/spidermonkey185/files/patch-configure.in =================================================================== --- head/lang/spidermonkey185/files/patch-configure.in (revision 442610) +++ head/lang/spidermonkey185/files/patch-configure.in (revision 442611) @@ -1,12 +1,36 @@ --- ./configure.in.orig 2011-04-01 06:08:36.000000000 +1100 +++ ./configure.in 2013-05-26 00:19:28.032315432 +1000 @@ -3378,7 +3378,8 @@ rm -f conftest.{c,S} ]) if test "$ac_cv_have_visibility_builtin_bug" = "no" -a \ - "$ac_cv_have_visibility_class_bug" = "no"; then + "$ac_cv_have_visibility_class_bug" = "no" -a \ + "$OS_ARCH" != "FreeBSD" ; then VISIBILITY_FLAGS='-I$(DIST)/system_wrappers_js -include $(topsrcdir)/config/gcc_hidden.h' WRAP_SYSTEM_INCLUDES=1 STL_FLAGS='-I$(DIST)/stl_wrappers' +@@ -4656,6 +4657,9 @@ MOZ_ARG_HEADER(Individual module options + + dnl Setup default CPU arch for arm target + case "$target_cpu" in ++ armv6*) ++ MOZ_ARM_ARCH=armv6 ++ ;; + arm*) + MOZ_ARM_ARCH=armv7 + ;; +@@ -4716,6 +4720,13 @@ elif test "$MOZ_ARM_ARCH" = "armv7"; the + esac + else + case "$target_cpu" in ++ armv6*) ++ if test "$GNU_CC"; then ++ CFLAGS="$CFLAGS" ++ CXXFLAGS="$CXXFLAGS" ++ ASFLAGS="$ASFLAGS" ++ fi ++ ;; + arm*) + if test "$GNU_CC"; then + CFLAGS="$CFLAGS -march=armv5te -mthumb-interwork -msoft-float" Index: head/lang/spidermonkey185/files/patch-nanojit_CodeAlloc.cpp =================================================================== --- head/lang/spidermonkey185/files/patch-nanojit_CodeAlloc.cpp (nonexistent) +++ head/lang/spidermonkey185/files/patch-nanojit_CodeAlloc.cpp (revision 442611) @@ -0,0 +1,10 @@ +--- nanojit/CodeAlloc.cpp.orig 2016-09-07 UTC ++++ nanojit/CodeAlloc.cpp +@@ -261,7 +261,6 @@ namespace nanojit + #endif + + #if defined(AVMPLUS_UNIX) && defined(NANOJIT_ARM) +-#include + extern "C" void __clear_cache(char *BEG, char *END); + #endif + Property changes on: head/lang/spidermonkey185/files/patch-nanojit_CodeAlloc.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/lang/spidermonkey185/files/patch-nanojit_njcpudetect.h =================================================================== --- head/lang/spidermonkey185/files/patch-nanojit_njcpudetect.h (nonexistent) +++ head/lang/spidermonkey185/files/patch-nanojit_njcpudetect.h (revision 442611) @@ -0,0 +1,11 @@ +--- nanojit/njcpudetect.h.orig 2016-09-07 UTC ++++ nanojit/njcpudetect.h +@@ -77,6 +77,8 @@ + #elif defined(__ARM_ARCH_6__) || \ + defined(__ARM_ARCH_6J__) || \ + defined(__ARM_ARCH_6T2__) || \ ++ defined(__ARM_ARCH_6K__) || \ ++ defined(__ARM_ARCH_6KZ__) || \ + defined(__ARM_ARCH_6Z__) || \ + defined(__ARM_ARCH_6ZK__) || \ + defined(__ARM_ARCH_6M__) || \ Property changes on: head/lang/spidermonkey185/files/patch-nanojit_njcpudetect.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property