Update lang/chicken to 4.12.0 Changes: 4.12.0 ------ - Security fixes - CVE-2016-6830: Fix buffer overrun due to excessively long argument or environment lists in process-execute and process-spawn (#1308). This also removes unnecessary limitations on the length of these lists (thanks to Vasilij Schneidermann). - CVE-2016-6831: Fix memory leak in process-execute and process-spawn. If, during argument and environment list processing, a list item isn't a string, an exception is thrown, in which case previously malloc()ed strings weren't freed. - CVE-2016-9954: Irregex has been updated to 0.9.6, which fixes an exponential explosion in compilation of nested "+" patterns. - Compiler: - define-constant now correctly keeps symbol values quoted. - Warnings are now emitted when using vector-{ref,set!} or one of take, drop, list-ref or list-tail with an out of range index for vectors and proper lists of a definitely known length. - The scrutinizer will no longer drop knowledge of the length of a vector. It still drops types of its contents (which may be mutated). - Fixed incorrect argvector restoration after GC in directly recursive functions (#1317). - "Direct" procedure invocations now also maintain debug info (#894). - Syntax expander - DSSSL lambda lists have improved hygiene, so they don't need the chicken or scheme modules to be imported in full (#806). - The let-optionals* macro no longer needs "quote", "car" and "cdr" to be imported and bound to their default values (#806). - Runtime system: - C_locative_ref has been deprecated in favor of C_a_i_locative_ref, which is faster because it is inlined (#1260, thanks to Kooda). - The default error handler now truncates very long condition messages (thanks to Lemonboy). - Weak symbol GC (-:w) no longer drops random symbols (#1173). - The number of arguments to procedures, both via "apply" and direct invocation, are now limited only by the C stack size (#1098). - "time" macro now shows peak memory usage (#1318, thanks to Kooda). - Avoid crashes in ffi callbacks after GC (#1337, thanks to cosarara). - Core libraries: - Irregex has been updated to 0.9.5, which fixes matching of all "bow" occurrances beyond the first with irregex-fold (upstream issue #14). - Keywords are more consistently read/written, like symbols (#1332). - SRFI-39: When jumping out of a parameterized dynamic extent, "parameterize" now remember the actual values, so when jumping back in, they are restored (fixes #1336, thanks to Joo ChurlSoo). This was a regression caused by the fix for #1227. - Tools: - "chicken-install" - When installing eggs in deploy mode with "-keep-installed", eggs under the prefix won't unnecessarily be reinstalled (#1144). - Added new option "-no-install-deps" which inhibits automatic installation of dependencies, useful with "-prefix" (#1298). Index: Makefile =================================================================== RCS file: /cvsroot/pkgsrc/lang/chicken/Makefile,v retrieving revision 1.57 diff -u -p -r1.57 Makefile --- Makefile 19 Jan 2017 18:52:13 -0000 1.57 +++ Makefile 15 Apr 2017 11:15:32 -0000 @@ -1,6 +1,6 @@ # $NetBSD: Makefile,v 1.57 2017/01/19 18:52:13 agc Exp $ -DISTNAME= chicken-4.11.0 +DISTNAME= chicken-4.12.0 CATEGORIES= lang MASTER_SITES= http://code.call-cc.org/releases/$(PKGVERSION_NOREV)/ MASTER_SITES+= http://code.call-cc.org/releases/$(PKGVERSION_NOREV:R)/ Index: distinfo =================================================================== RCS file: /cvsroot/pkgsrc/lang/chicken/distinfo,v retrieving revision 1.42 diff -u -p -r1.42 distinfo --- distinfo 8 Jun 2016 14:44:54 -0000 1.42 +++ distinfo 15 Apr 2017 11:15:32 -0000 @@ -1,6 +1,7 @@ $NetBSD: distinfo,v 1.42 2016/06/08 14:44:54 asau Exp $ -SHA1 (chicken-4.11.0.tar.gz) = b8b1e8b741a5ea5b318c449c3bf8a42f8de8ba69 -RMD160 (chicken-4.11.0.tar.gz) = 3207bdd9e5b7d8f454d7612634c1da5bb3b820c7 -SHA512 (chicken-4.11.0.tar.gz) = 130d9f35ccecda3aefe4790fcb186eef321947013b681f3f978e3b666a45102ed9bc455c9452fe8b0b81c92cd571138c38365dff5bb7382ea2046a8bf3d188ad -Size (chicken-4.11.0.tar.gz) = 4201815 bytes +SHA1 (chicken-4.12.0.tar.gz) = f128b57d42ce6f1d4a56a372916e9e538ae1ceab +RMD160 (chicken-4.12.0.tar.gz) = 0690022d77cd7c018703f94c2f5f8d594fa96ad3 +SHA512 (chicken-4.12.0.tar.gz) = 190bdc9e53aa50e93419e2483fd5baf3e2ef3bebe4e605653f2aadd9b8bbc98b192cfbb64ab1c99eeefb13a7795757f013799963bfb775862d746ed5c93d602f +Size (chicken-4.12.0.tar.gz) = 4240266 bytes +SHA1 (patch-chicken.h) = a8ae49ea2cd974afb6d192651952fa0566c0be87 Index: patches/patch-chicken.h =================================================================== RCS file: patches/patch-chicken.h diff -N patches/patch-chicken.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-chicken.h 15 Apr 2017 11:15:32 -0000 @@ -0,0 +1,25 @@ +$NetBSD$ + +Backport a fix for NetBSD due to feature macros: + + NetBSD does not expose all of its own stuff with _BSD_SOURCE. For + that, you also need _NETBSD_SOURCE. + + Without this, "NSIG" (and probably other things too) is undefined, + because it's declared conditionally in sys/signal.h on _NETBSD_SOURCE. + + + +--- chicken.h.orig 2017-02-19 11:44:36.000000000 +0000 ++++ chicken.h +@@ -65,6 +65,10 @@ + # define _BSD_SOURCE + # endif + ++# ifndef _NETBSD_SOURCE ++# define _NETBSD_SOURCE ++# endif ++ + # ifndef _SVID_SOURCE + # define _SVID_SOURCE + # endif