pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Update quickjs to version 2020-11-08



Module Name:	pkgsrc-wip
Committed By:	Havard Eidnes <he%NetBSD.org@localhost>
Pushed By:	he
Date:		Mon Nov 30 20:48:55 2020 +0100
Changeset:	587cc5bcc39b3371733b1da8905f401e288803f5

Modified Files:
	quickjs/Makefile
	quickjs/distinfo
	quickjs/patches/patch-Makefile
	quickjs/patches/patch-cutils.h
	quickjs/patches/patch-qjs.c
	quickjs/patches/patch-qjsc.c
	quickjs/patches/patch-quickjs-libc.c
	quickjs/patches/patch-quickjs.c

Log Message:
Update quickjs to version 2020-11-08

Pkgsrc changes:
 * Adapt to upstream changes
 * On NetBSD we do -pthread not -lpthread
 * Declare "extern char **environ" on NetBSD before using it

Upstream changes:
2020-11-08:

- improved function parameter initializers
- added std.setenv(), std.unsetenv() and std.getenviron()
- added JS_EvalThis()
- misc bug fixes

2020-09-06:

- added logical assignment operators
- added IsHTMLDDA support
- faster for-of loops
- os.Worker now takes a module filename as parameter
- qjsc: added -D option to compile dynamically loaded modules or workers
- misc bug fixes

2020-07-05:

- modified JS_GetPrototype() to return a live value
- REPL: support unicode characters larger than 16 bits
- added os.Worker
- improved object serialization
- added std.parseExtJSON
- misc bug fixes

2020-04-12:

- added cross realm support
- added AggregateError and Promise.any
- added env, uid and gid options in os.exec()
- misc bug fixes

2020-03-16:

- reworked error handling in std and os libraries: suppressed I/O
  exceptions in std FILE functions and return a positive errno value
  when it is explicit
- output exception messages to stderr
- added std.loadFile(), std.strerror(), std.FILE.prototype.tello()
- added JS_GetRuntimeOpaque(), JS_SetRuntimeOpaque(), JS_NewUint32()
- updated to Unicode 13.0.0
- misc bug fixes

2020-01-19:

- keep CONFIG_BIGNUM in the makefile
- added os.chdir()
- qjs: added -I option
- more memory checks in the bignum operations
- modified operator overloading semantics to be closer to the TC39
  proposal
- suppressed "use bigint" mode. Simplified "use math" mode
- BigDecimal: changed suffix from 'd' to 'm'
- misc bug fixes

2020-01-05:

- always compile the bignum code. Added '--bignum' option to qjs.
- added BigDecimal
- added String.prototype.replaceAll
- misc bug fixes

2019-12-21:

- added nullish coalescing operator (ES2020)
- added optional chaining (ES2020)
- removed recursions in garbage collector
- test stack overflow in the parser
- improved backtrace logic
- added JS_SetHostPromiseRejectionTracker()
- allow exotic constructors
- improved c++ compatibility
- misc bug fixes

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=587cc5bcc39b3371733b1da8905f401e288803f5

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 quickjs/Makefile                     |  2 +-
 quickjs/distinfo                     | 20 ++++++++++----------
 quickjs/patches/patch-Makefile       | 31 +++++++++++++++++++++++++++----
 quickjs/patches/patch-cutils.h       |  4 ++--
 quickjs/patches/patch-qjs.c          |  4 ++--
 quickjs/patches/patch-qjsc.c         |  4 ++--
 quickjs/patches/patch-quickjs-libc.c | 15 +++++++++++++--
 quickjs/patches/patch-quickjs.c      |  6 +++---
 8 files changed, 60 insertions(+), 26 deletions(-)

diffs:
diff --git a/quickjs/Makefile b/quickjs/Makefile
index 8996ecca30..87d673732e 100644
--- a/quickjs/Makefile
+++ b/quickjs/Makefile
@@ -1,7 +1,7 @@
 # $NetBSD$
 #
 
-DISTNAME=	quickjs-2019-10-27
+DISTNAME=	quickjs-2020-11-08
 CATEGORIES=	lang
 MASTER_SITES=	https://bellard.org/quickjs/
 EXTRACT_SUFX=	.tar.xz
diff --git a/quickjs/distinfo b/quickjs/distinfo
index f1a6721d9b..8a4e486a4b 100644
--- a/quickjs/distinfo
+++ b/quickjs/distinfo
@@ -1,12 +1,12 @@
 $NetBSD$
 
-SHA1 (quickjs-2019-10-27.tar.xz) = 6d10526eecc6bbbd13f33262f796f30090195974
-RMD160 (quickjs-2019-10-27.tar.xz) = 4cd24d0d6c6c9fd23c2bc66d1e724e7e43985b22
-SHA512 (quickjs-2019-10-27.tar.xz) = 3654c8998b6c99fb42387c785e2be138b46b644025b2da5f26ecc6c1d58f32ef89b274763b0bcc5d25d86bbae217ec52576d13bf4e9cd81c6c2af46b692b73e9
-Size (quickjs-2019-10-27.tar.xz) = 763012 bytes
-SHA1 (patch-Makefile) = 57ddddb7246be7dbe96bcdc8775e7ccbf8bf4b18
-SHA1 (patch-cutils.h) = 9719a77add566ce6443af1ac2ba1d1ea61e5c248
-SHA1 (patch-qjs.c) = d26b8ac0f7bf84bdb17fb4784f637dcb012cbd93
-SHA1 (patch-qjsc.c) = 9a1f46b46807d9ff0393cd7944416a5bb082bbbb
-SHA1 (patch-quickjs-libc.c) = ac56623b0e590d4bc1b4e8fa8a778ebf34f329b4
-SHA1 (patch-quickjs.c) = 930c2549a0244ecfa8e2cccf96b981ffafb8f17c
+SHA1 (quickjs-2020-11-08.tar.xz) = f9aef74b21621be23fdd89b6c26406eb8432b191
+RMD160 (quickjs-2020-11-08.tar.xz) = 2f3d9a51b341db48d6393a0c021e537936ac495e
+SHA512 (quickjs-2020-11-08.tar.xz) = d437813948269bab6046c0219eb20ccea45613073bea1c4eee5b553831fdaaa5e2165b14fcb436e86bf70d488200845f7821864abb6f40b115f0ef7f24971e02
+Size (quickjs-2020-11-08.tar.xz) = 752132 bytes
+SHA1 (patch-Makefile) = 25b040d2409ff28f7b5fc8f0e7b8a0ecb86174fb
+SHA1 (patch-cutils.h) = 3430f86dab2ec04be09bf81230e2e9e5c2f373e4
+SHA1 (patch-qjs.c) = acb1e66454f8c0263363e2e9564a89b86af3c649
+SHA1 (patch-qjsc.c) = 253e65f7d974940e4c1fc7d02f58b0ab3764d80b
+SHA1 (patch-quickjs-libc.c) = 126385954c57cf2cf18e9fedfebd5abbf672c2da
+SHA1 (patch-quickjs.c) = 7b43df0862cf97f87e78a6f3a82757294a19c9b3
diff --git a/quickjs/patches/patch-Makefile b/quickjs/patches/patch-Makefile
index 9822f34411..8facff9a08 100644
--- a/quickjs/patches/patch-Makefile
+++ b/quickjs/patches/patch-Makefile
@@ -22,14 +22,37 @@ Adapt for NetBSD & pkgsrc.
  # consider warnings as errors (for development)
  #CONFIG_WERROR=y
  # force 32 bit build for some utilities
-@@ -165,8 +172,10 @@ QJSBN_OBJS=$(OBJDIR)/qjs.bn.o $(OBJDIR)/
+@@ -41,7 +48,7 @@ CONFIG_DEFAULT_AR=y
+ endif
+ 
+ # installation directory
+-prefix=/usr/local
++prefix=/usr/pkg
+ 
+ # use the gprof profiler
+ #CONFIG_PROFILE=y
+@@ -174,10 +181,22 @@ QJS_LIB_OBJS+=$(OBJDIR)/libbf.o 
+ QJS_OBJS+=$(OBJDIR)/qjscalc.o
+ endif
  
+-HOST_LIBS=-lm -ldl -lpthread
++HOST_LIBS=-lm
++ifndef CONFIG_NETBSD
++HOST_LIBS+=-ldl
++HOST_LIBS+=-lpthread
++else
++HOST_LIBS+=-pthread
++endif
  LIBS=-lm
++
  ifndef CONFIG_WIN32
+-LIBS+=-ldl -lpthread
 +ifndef CONFIG_NETBSD
- LIBS+=-ldl
- endif
++LIBS+=-ldl
++LIBS+=-lphtread
++else
++LIBS+=-pthread
 +endif
+ endif
  
  $(OBJDIR):
- 	mkdir -p $(OBJDIR) $(OBJDIR)/examples $(OBJDIR)/tests
diff --git a/quickjs/patches/patch-cutils.h b/quickjs/patches/patch-cutils.h
index f178b9ab56..70972cdbfe 100644
--- a/quickjs/patches/patch-cutils.h
+++ b/quickjs/patches/patch-cutils.h
@@ -4,7 +4,7 @@ Adapt to NetBSD.
 
 --- cutils.h.orig	2019-07-09 17:49:47.000000000 +0000
 +++ cutils.h
-@@ -206,6 +206,7 @@ static inline void put_u8(uint8_t *tab, 
+@@ -207,6 +207,7 @@ static inline void put_u8(uint8_t *tab, 
      *tab = val;
  }
  
@@ -12,7 +12,7 @@ Adapt to NetBSD.
  static inline uint16_t bswap16(uint16_t x)
  {
      return (x >> 8) | (x << 8);
-@@ -228,6 +229,7 @@ static inline uint64_t bswap64(uint64_t 
+@@ -229,6 +230,7 @@ static inline uint64_t bswap64(uint64_t 
          ((v & ((uint64_t)0xff << (1 * 8))) << (5 * 8)) | 
          ((v & ((uint64_t)0xff << (0 * 8))) << (7 * 8));
  }
diff --git a/quickjs/patches/patch-qjs.c b/quickjs/patches/patch-qjs.c
index 6ca7eb8f61..c56fc73515 100644
--- a/quickjs/patches/patch-qjs.c
+++ b/quickjs/patches/patch-qjs.c
@@ -4,7 +4,7 @@ Adapt to NetBSD.
 
 --- qjs.c.orig	2019-07-09 17:49:47.000000000 +0000
 +++ qjs.c
-@@ -108,6 +108,8 @@ static inline size_t js_trace_malloc_usa
+@@ -150,6 +150,8 @@ static inline size_t js_trace_malloc_usa
      return 0;
  #elif defined(__linux__)
      return malloc_usable_size(ptr);
@@ -13,7 +13,7 @@ Adapt to NetBSD.
  #else
      /* change this to `return 0;` if compilation fails */
      return malloc_usable_size(ptr);
-@@ -224,6 +226,8 @@ static const JSMallocFunctions trace_mf 
+@@ -266,6 +268,8 @@ static const JSMallocFunctions trace_mf 
      NULL,
  #elif defined(__linux__)
      (size_t (*)(const void *))malloc_usable_size,
diff --git a/quickjs/patches/patch-qjsc.c b/quickjs/patches/patch-qjsc.c
index 3bcd16bbd2..76f9b352cb 100644
--- a/quickjs/patches/patch-qjsc.c
+++ b/quickjs/patches/patch-qjsc.c
@@ -4,13 +4,13 @@ Adapt to NetBSD.
 
 --- qjsc.c.orig	2019-08-10 10:58:42.000000000 +0000
 +++ qjsc.c
-@@ -429,7 +429,9 @@ static int output_executable(const char 
+@@ -450,7 +450,9 @@ static int output_executable(const char 
               lib_dir, bn_suffix, lto_suffix);
      *arg++ = libjsname;
      *arg++ = "-lm";
 +#if !defined(__NetBSD__)
      *arg++ = "-ldl";
 +#endif
+     *arg++ = "-lpthread";
      *arg = NULL;
      
-     if (verbose) {
diff --git a/quickjs/patches/patch-quickjs-libc.c b/quickjs/patches/patch-quickjs-libc.c
index a4285ac12b..e4fed585d2 100644
--- a/quickjs/patches/patch-quickjs-libc.c
+++ b/quickjs/patches/patch-quickjs-libc.c
@@ -4,7 +4,18 @@ Adapt to NetBSD.
 
 --- quickjs-libc.c.orig	2019-08-10 10:58:42.000000000 +0000
 +++ quickjs-libc.c
-@@ -1496,7 +1496,7 @@ static void os_signal_handler(int sig_nu
+@@ -675,6 +675,10 @@ static JSValue js_std_unsetenv(JSContext
+     return JS_UNDEFINED;
+ }
+ 
++#ifdef __NetBSD__
++extern char **environ;
++#endif
++
+ /* return an object containing the list of the available environment
+    variables. */
+ static JSValue js_std_getenviron(JSContext *ctx, JSValueConst this_val,
+@@ -1892,7 +1896,7 @@ static void os_signal_handler(int sig_nu
      os_pending_signals |= ((uint64_t)1 << sig_num);
  }
  
@@ -13,7 +24,7 @@ Adapt to NetBSD.
  typedef void (*sighandler_t)(int sig_num);
  #endif
  
-@@ -1821,6 +1821,8 @@ static int js_os_poll(JSContext *ctx)
+@@ -3526,6 +3530,8 @@ void js_std_set_worker_new_context_func(
  #define OS_PLATFORM "darwin"
  #elif defined(EMSCRIPTEN)
  #define OS_PLATFORM "js"
diff --git a/quickjs/patches/patch-quickjs.c b/quickjs/patches/patch-quickjs.c
index f3845c6d59..bb464ebf96 100644
--- a/quickjs/patches/patch-quickjs.c
+++ b/quickjs/patches/patch-quickjs.c
@@ -4,7 +4,7 @@ Adapt to NetBSD.
 
 --- quickjs.c.orig	2019-10-27 10:55:35.000000000 +0000
 +++ quickjs.c
-@@ -105,6 +105,14 @@
+@@ -111,6 +111,14 @@
  #include <pthread.h>
  #include <stdatomic.h>
  #include <errno.h>
@@ -19,7 +19,7 @@ Adapt to NetBSD.
  #endif
  
  enum {
-@@ -1347,6 +1355,8 @@ static inline size_t js_def_malloc_usabl
+@@ -1680,6 +1688,8 @@ static inline size_t js_def_malloc_usabl
      return 0;
  #elif defined(__linux__)
      return malloc_usable_size(ptr);
@@ -28,7 +28,7 @@ Adapt to NetBSD.
  #else
      /* change this to `return 0;` if compilation fails */
      return malloc_usable_size(ptr);
-@@ -1421,6 +1431,8 @@ static const JSMallocFunctions def_mallo
+@@ -1754,6 +1764,8 @@ static const JSMallocFunctions def_mallo
      NULL,
  #elif defined(__linux__)
      (size_t (*)(const void *))malloc_usable_size,


Home | Main Index | Thread Index | Old Index