Index: head/lang/Makefile =================================================================== --- head/lang/Makefile (revision 548228) +++ head/lang/Makefile (revision 548229) @@ -1,368 +1,369 @@ # $FreeBSD$ # COMMENT = Programming languages SUBDIR += Gofer SUBDIR += J SUBDIR += abcl SUBDIR += adacontrol SUBDIR += alchemist.el SUBDIR += algol68g SUBDIR += angelscript SUBDIR += apache-commons-jelly SUBDIR += asis SUBDIR += asn1c SUBDIR += atlast SUBDIR += awka SUBDIR += bas2tap SUBDIR += basic256 SUBDIR += bf2c SUBDIR += bsh SUBDIR += bwbasic SUBDIR += c SUBDIR += cbmbasic SUBDIR += ccl SUBDIR += cdent SUBDIR += ceylon SUBDIR += cfortran SUBDIR += chaiscript SUBDIR += chez-scheme SUBDIR += chibi-scheme SUBDIR += chicken5 SUBDIR += cim SUBDIR += cjs SUBDIR += cling SUBDIR += clips SUBDIR += clisp SUBDIR += clojure SUBDIR += clojure-mode.el SUBDIR += clover SUBDIR += cmucl SUBDIR += cmucl-extra SUBDIR += cocor SUBDIR += coffeescript SUBDIR += cparser SUBDIR += crystal SUBDIR += csharp-mode.el SUBDIR += cython SUBDIR += dlang-tools SUBDIR += dlv SUBDIR += duktape SUBDIR += duktape-lib SUBDIR += ecl SUBDIR += elixir SUBDIR += elixir-mode.el SUBDIR += elk SUBDIR += elm SUBDIR += emacs-lisp-intro SUBDIR += erlang SUBDIR += erlang-doc SUBDIR += erlang-java SUBDIR += erlang-man SUBDIR += erlang-riak SUBDIR += erlang-runtime20 SUBDIR += erlang-runtime21 SUBDIR += erlang-runtime22 SUBDIR += erlang-runtime23 SUBDIR += erlang-wx SUBDIR += execline SUBDIR += expect SUBDIR += f2c SUBDIR += fasm SUBDIR += ferite SUBDIR += ficl SUBDIR += fpc SUBDIR += fpc-base SUBDIR += fpc-docs SUBDIR += fpc-lua SUBDIR += fpc-rexx SUBDIR += fpc-rtl-console SUBDIR += fpc-rtl-extra SUBDIR += fpc-rtl-objpas SUBDIR += fpc-rtl-unicode SUBDIR += fpc-source SUBDIR += fpc-units SUBDIR += fpc-utils SUBDIR += fsharp SUBDIR += fth SUBDIR += gambit-c SUBDIR += gauche SUBDIR += gawk SUBDIR += gcc SUBDIR += gcc-ecj45 SUBDIR += gcc10 SUBDIR += gcc10-devel SUBDIR += gcc11-devel SUBDIR += gcc48 SUBDIR += gcc6-aux SUBDIR += gcc7 SUBDIR += gcc8 SUBDIR += gcc8-devel SUBDIR += gcc9 SUBDIR += gcc9-devel SUBDIR += gforth SUBDIR += ghc SUBDIR += gjs SUBDIR += gnat_util SUBDIR += gnatcross-binutils-aarch64 SUBDIR += gnatcross-sysroot-aarch64 SUBDIR += gnatdroid-binutils SUBDIR += gnatdroid-binutils-x86 SUBDIR += gnatdroid-sysroot SUBDIR += gnatdroid-sysroot-x86 SUBDIR += gnu-apl SUBDIR += gnu-cobol SUBDIR += gnustep-base SUBDIR += go SUBDIR += go-devel SUBDIR += gomacro SUBDIR += gravity SUBDIR += groovy SUBDIR += gscheme SUBDIR += guile SUBDIR += guile1 SUBDIR += guile2 SUBDIR += halide SUBDIR += harbour SUBDIR += haskell-mode.el + SUBDIR += hermes SUBDIR += hla SUBDIR += hs-brainfuck SUBDIR += hs-unlambda SUBDIR += huc SUBDIR += icc SUBDIR += intel-compute-runtime SUBDIR += intercal SUBDIR += io SUBDIR += io-devel SUBDIR += itcl SUBDIR += itcl4 SUBDIR += janet SUBDIR += jimtcl SUBDIR += jruby SUBDIR += julia SUBDIR += julia06 SUBDIR += julia07 SUBDIR += julia10 SUBDIR += julia11 SUBDIR += jython SUBDIR += kawa SUBDIR += kf5-kross SUBDIR += kotlin SUBDIR += kross-interpreters SUBDIR += kturtle SUBDIR += lafontaine SUBDIR += lci SUBDIR += ldc SUBDIR += lfe SUBDIR += libhx SUBDIR += libobjc2 SUBDIR += librep SUBDIR += libstdc++_stldoc_4.2.2 SUBDIR += linux-c7-tcl85 SUBDIR += linux-dotnet-cli SUBDIR += linux-dotnet-runtime SUBDIR += linux-dotnet-sdk SUBDIR += linux-dotnet10-runtime SUBDIR += linux-dotnet11-runtime SUBDIR += linux-dotnet11-sdk SUBDIR += linux-j SUBDIR += lua-ada SUBDIR += lua51 SUBDIR += lua52 SUBDIR += lua53 SUBDIR += luajit SUBDIR += luajit-openresty SUBDIR += malbolge SUBDIR += maude SUBDIR += mawk SUBDIR += mdk SUBDIR += micropython SUBDIR += mit-scheme SUBDIR += mixal SUBDIR += mlton SUBDIR += mmix SUBDIR += mono SUBDIR += mono-basic SUBDIR += mosh SUBDIR += mosml SUBDIR += mtasc SUBDIR += mujs SUBDIR += munger SUBDIR += myrddin SUBDIR += nawk SUBDIR += nbc SUBDIR += nbfc SUBDIR += neko SUBDIR += nesasm SUBDIR += newlisp SUBDIR += nhc98 SUBDIR += nickle SUBDIR += nim SUBDIR += nml SUBDIR += nqc SUBDIR += nwcc SUBDIR += nx SUBDIR += nyan SUBDIR += ocaml SUBDIR += ocaml-autoconf SUBDIR += ocaml-camlidl SUBDIR += ocaml-nox11 SUBDIR += onyx SUBDIR += oo2c SUBDIR += opencoarrays SUBDIR += ott SUBDIR += owl-lisp SUBDIR += p5-Data-JavaScript SUBDIR += p5-Error SUBDIR += p5-Expect SUBDIR += p5-ExtUtils-F77 SUBDIR += p5-Interpolation SUBDIR += p5-JSAN SUBDIR += p5-JavaScript-SpiderMonkey SUBDIR += p5-JavaScript-Squish SUBDIR += p5-JavaScript-Value-Escape SUBDIR += p5-List-MoreUtils SUBDIR += p5-List-MoreUtils-XS SUBDIR += p5-Marpa SUBDIR += p5-Marpa-PP SUBDIR += p5-Marpa-XS SUBDIR += p5-Modern-Perl SUBDIR += p5-Perl6-Subs SUBDIR += p5-Promises SUBDIR += p5-Pugs-Compiler-Rule SUBDIR += p5-Quantum-Superpositions SUBDIR += p5-Scalar-List-Utils SUBDIR += p5-Switch SUBDIR += p5-Tcl SUBDIR += p5-Test-XPath SUBDIR += p5-Try-Catch SUBDIR += p5-Try-Tiny SUBDIR += p5-Try-Tiny-Retry SUBDIR += p5-TryCatch SUBDIR += p5-ePerl SUBDIR += p5-signatures SUBDIR += p5-v6 SUBDIR += parrot SUBDIR += pbasic SUBDIR += pcc SUBDIR += perl5-devel SUBDIR += perl5.28 SUBDIR += perl5.30 SUBDIR += perl5.32 SUBDIR += petite-chez SUBDIR += pfe SUBDIR += pharo SUBDIR += php-mode.el SUBDIR += php72 SUBDIR += php72-extensions SUBDIR += php73 SUBDIR += php73-extensions SUBDIR += php74 SUBDIR += php74-extensions SUBDIR += picoc SUBDIR += plexil SUBDIR += pocl SUBDIR += polyml SUBDIR += ponyc SUBDIR += ptoc SUBDIR += purescript SUBDIR += py-hy SUBDIR += py-lupa SUBDIR += py-qt5-qml SUBDIR += py-textX SUBDIR += pypy SUBDIR += pypy3 SUBDIR += python SUBDIR += python-doc-html SUBDIR += python-doc-pdf-a4 SUBDIR += python-doc-pdf-letter SUBDIR += python-doc-text SUBDIR += python-mode.el SUBDIR += python-tools SUBDIR += python2 SUBDIR += python27 SUBDIR += python3 SUBDIR += python35 SUBDIR += python36 SUBDIR += python37 SUBDIR += python38 SUBDIR += qmasm SUBDIR += qscheme SUBDIR += quickjs SUBDIR += racket SUBDIR += racket-minimal SUBDIR += ratfor SUBDIR += referenceassemblies-pcl SUBDIR += retro12 SUBDIR += rexx-imc SUBDIR += rexx-regina SUBDIR += rexx-regutil SUBDIR += rexx-wrapper SUBDIR += rhino SUBDIR += ruby25 SUBDIR += ruby26 SUBDIR += ruby27 SUBDIR += runawk SUBDIR += rust SUBDIR += rust-bootstrap SUBDIR += rust-nightly SUBDIR += sagittarius-scheme SUBDIR += sather-specification SUBDIR += sather-tutorial SUBDIR += sbcl SUBDIR += scala SUBDIR += scala-docs SUBDIR += scheme48 SUBDIR += scm SUBDIR += sdcc SUBDIR += see SUBDIR += seed7 SUBDIR += silq SUBDIR += siod SUBDIR += sisc SUBDIR += sketchy SUBDIR += slib SUBDIR += slib-guile SUBDIR += slib-guile2 SUBDIR += slisp SUBDIR += smalltalk SUBDIR += smlnj SUBDIR += snobol4 SUBDIR += solidity SUBDIR += spidermonkey17 SUBDIR += spidermonkey185 SUBDIR += spidermonkey24 SUBDIR += spidermonkey52 SUBDIR += spidermonkey60 SUBDIR += spidermonkey68 SUBDIR += spl SUBDIR += squeak SUBDIR += squirrel SUBDIR += swi-pl SUBDIR += tcbasic SUBDIR += tcc SUBDIR += tcl-manual SUBDIR += tcl-wrapper SUBDIR += tcl85 SUBDIR += tcl86 SUBDIR += tcl87 SUBDIR += tclX SUBDIR += tinypy SUBDIR += tolua SUBDIR += tolua++ SUBDIR += tuareg-mode.el SUBDIR += twelf SUBDIR += ucc SUBDIR += urweb SUBDIR += v SUBDIR += v8 SUBDIR += vala SUBDIR += visualworks SUBDIR += voc SUBDIR += yabasic SUBDIR += yorick SUBDIR += ypsilon SUBDIR += zig .include Index: head/lang/hermes/Makefile =================================================================== --- head/lang/hermes/Makefile (nonexistent) +++ head/lang/hermes/Makefile (revision 548229) @@ -0,0 +1,39 @@ +# $FreeBSD$ + +PORTNAME= hermes +DISTVERSIONPREFIX= v +DISTVERSION= 0.5.2-rc1 +CATEGORIES= lang +PKGNAMESUFFIX= -javascript-engine + +MAINTAINER= yuri@FreeBSD.org +COMMENT= JavaScript engine + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libicui18n.so:devel/icu +TEST_DEPENDS= zip:archivers/zip + +USES= cmake compiler:c++11-lang python:test +USE_GITHUB= yes +GH_ACCOUNT= facebook +USE_LDCONFIG= yes + +CMAKE_OFF= HERMES_ENABLE_TEST_SUITE + +BINARY_ALIAS= python=${PYTHON_CMD} python3=${PYTHON_CMD} + +.include + +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1201518 +BROKEN= missing pthread_getname_np +.endif + +do-test: # some tests are known to fail: https://github.com/facebook/hermes/issues/347 + @cd ${BUILD_WRKSRC} && \ + ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -DHERMES_ENABLE_TEST_SUITE:BOOL=ON ${CMAKE_SOURCE_PATH} && \ + ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \ + ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} check-hermes + +.include Property changes on: head/lang/hermes/Makefile ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/lang/hermes/distinfo =================================================================== --- head/lang/hermes/distinfo (nonexistent) +++ head/lang/hermes/distinfo (revision 548229) @@ -0,0 +1,3 @@ +TIMESTAMP = 1599791135 +SHA256 (facebook-hermes-v0.5.2-rc1_GH0.tar.gz) = d384bcac5985f11b92ff03a14b1ea393c5b4f804d0236e7884e408b626495aed +SIZE (facebook-hermes-v0.5.2-rc1_GH0.tar.gz) = 6912229 Property changes on: head/lang/hermes/distinfo ___________________________________________________________________ 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/hermes/files/patch-lib_Support_OSCompatPosix.cpp =================================================================== --- head/lang/hermes/files/patch-lib_Support_OSCompatPosix.cpp (nonexistent) +++ head/lang/hermes/files/patch-lib_Support_OSCompatPosix.cpp (revision 548229) @@ -0,0 +1,54 @@ +--- lib/Support/OSCompatPosix.cpp.orig 2020-08-03 19:19:06 UTC ++++ lib/Support/OSCompatPosix.cpp +@@ -23,6 +23,11 @@ + #endif + #endif // __linux__ + ++#if defined(__FreeBSD__) ++#include ++#include ++#endif ++ + #include + #include + +@@ -213,7 +218,7 @@ void vm_unused(void *p, size_t sz) { + /// the process's physical footprint. + #define MADV_UNUSED MADV_FREE + +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + + /// On linux, telling the OS that we \p MADV_DONTNEED some pages will cause it + /// to immediately deduct their size from the process's resident set. +@@ -414,6 +419,12 @@ uint64_t thread_id() { + return syscall(__NR_gettid); + } + ++#elif defined(__FreeBSD__) ++ ++uint64_t thread_id() { ++ return reinterpret_cast(pthread_self()); ++} ++ + #else + #error "Thread ID not supported on this platform" + #endif +@@ -443,7 +454,7 @@ std::chrono::microseconds thread_cpu_time() { + return microseconds(total); + } + +-#elif defined(__linux__) // !(__APPLE__ && __MACH__) ++#elif defined(__linux__) || defined(__FreeBSD__) // !(__APPLE__ && __MACH__) + + std::chrono::microseconds thread_cpu_time() { + using namespace std::chrono; +@@ -480,7 +491,7 @@ bool thread_page_fault_count(int64_t *outMinorFaults, + return kr == KERN_SUCCESS; + } + +-#elif defined(__linux__) // !(__APPLE__ && __MACH__) ++#elif defined(__linux__) || defined(__FreeBSD__) // !(__APPLE__ && __MACH__) + + bool thread_page_fault_count(int64_t *outMinorFaults, int64_t *outMajorFaults) { + struct rusage stats = {}; Property changes on: head/lang/hermes/files/patch-lib_Support_OSCompatPosix.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/hermes/files/patch-lib_VM_Instrumentation_ProcessStats.cpp =================================================================== --- head/lang/hermes/files/patch-lib_VM_Instrumentation_ProcessStats.cpp (nonexistent) +++ head/lang/hermes/files/patch-lib_VM_Instrumentation_ProcessStats.cpp (revision 548229) @@ -0,0 +1,11 @@ +--- lib/VM/Instrumentation/ProcessStats.cpp.orig 2020-09-11 02:29:31 UTC ++++ lib/VM/Instrumentation/ProcessStats.cpp +@@ -69,6 +69,8 @@ ProcessStats::Info getProcessStatSnapshot() { + va *= PS / 1024; + #elif defined(__EMSCRIPTEN__) + rss = va = 0; ++#elif defined(__FreeBSD__) ++ rss = va = 0; // TODO implement getProcessStatSnapshot + #else + #error "Unsupported platform" + #endif Property changes on: head/lang/hermes/files/patch-lib_VM_Instrumentation_ProcessStats.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/hermes/pkg-descr =================================================================== --- head/lang/hermes/pkg-descr (nonexistent) +++ head/lang/hermes/pkg-descr (revision 548229) @@ -0,0 +1,4 @@ +Hermes is a JavaScript engine optimized for fast start-up of React Native apps +on Android. It features ahead-of-time static optimization and compact bytecode. + +WWW: https://github.com/facebook/hermes Property changes on: head/lang/hermes/pkg-descr ___________________________________________________________________ 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/hermes/pkg-plist =================================================================== --- head/lang/hermes/pkg-plist (nonexistent) +++ head/lang/hermes/pkg-plist (revision 548229) @@ -0,0 +1,29 @@ +bin/hbcdump +bin/hdb +bin/hermes +bin/hermesc +bin/hvm +include/hermes/CompileJS.h +include/hermes/DebuggerAPI.h +include/hermes/Public/Buffer.h +include/hermes/Public/CrashManager.h +include/hermes/Public/CtorConfig.h +include/hermes/Public/DebuggerTypes.h +include/hermes/Public/GCConfig.h +include/hermes/Public/GCTripwireContext.h +include/hermes/Public/MemoryEventTracker.h +include/hermes/Public/RuntimeConfig.h +include/hermes/SynthTrace.h +include/hermes/SynthTraceParser.h +include/hermes/TraceInterpreter.h +include/hermes/TracingRuntime.h +include/hermes/hermes.h +include/hermes/hermes_tracing.h +include/jsi/JSIDynamic.h +include/jsi/decorator.h +include/jsi/instrumentation.h +include/jsi/jsi-inl.h +include/jsi/jsi.h +include/jsi/jsilib.h +include/jsi/threadsafe.h +lib/libhermes.so Property changes on: head/lang/hermes/pkg-plist ___________________________________________________________________ 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