Hi, Here's an attempt to update sbcl to latest version. Before adding the new patch I got consistent test failures in inpure timer test "(:WITH-TIMEOUT :MANY-AT-THE-SAME-TIME".
After adding the patch to unix.lisp the tests have passed twice on amd64. Does this look OK, does the tests work on other platforms? Timo Index: Makefile =================================================================== RCS file: /cvs/ports/lang/sbcl/Makefile,v retrieving revision 1.43 diff -u -p -u -p -r1.43 Makefile --- Makefile 16 Sep 2019 06:24:18 -0000 1.43 +++ Makefile 1 Jan 2020 16:53:53 -0000 @@ -6,7 +6,7 @@ USE_WXNEEDED = Yes COMMENT= compiler and runtime system for ANSI Common Lisp -V = 1.5.5 +V = 2.0.0 DISTNAME= sbcl-${V}-source PKGNAME= sbcl-${V} WRKDIST= ${WRKDIR}/sbcl-${V} Index: distinfo =================================================================== RCS file: /cvs/ports/lang/sbcl/distinfo,v retrieving revision 1.18 diff -u -p -u -p -r1.18 distinfo --- distinfo 16 Sep 2019 06:24:18 -0000 1.18 +++ distinfo 1 Jan 2020 16:53:53 -0000 @@ -1,2 +1,2 @@ -SHA256 (sbcl-1.5.5-source.tar.bz2) = y0f65qhvDFxXQxYE+05fEcioI/lM4SjVaLh3D8W8quI= -SIZE (sbcl-1.5.5-source.tar.bz2) = 6351480 +SHA256 (sbcl-2.0.0-source.tar.bz2) = kDaSVoBdQ3yCq5vauaQQB29XgQpQuysijeTmyJJpL88= +SIZE (sbcl-2.0.0-source.tar.bz2) = 6457217 Index: patches/patch-src_code_unix_lisp =================================================================== RCS file: patches/patch-src_code_unix_lisp diff -N patches/patch-src_code_unix_lisp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_code_unix_lisp 1 Jan 2020 16:53:53 -0000 @@ -0,0 +1,30 @@ +$OpenBSD$ + +Index: src/code/unix.lisp +--- src/code/unix.lisp.orig ++++ src/code/unix.lisp +@@ -1055,20 +1055,20 @@ avoiding atexit(3) hooks, etc. Otherwise exit(2) is ca + (defun get-time-of-day () + "Return the number of seconds and microseconds since the beginning of + the UNIX epoch (January 1st 1970.)" +- #+(or darwin netbsd) ++ #+(or darwin netbsd openbsd) + (with-alien ((tv (struct timeval))) + ;; CLH: FIXME! This seems to be a MacOS bug, but on x86-64/darwin, + ;; gettimeofday occasionally fails. passing in a null pointer for the + ;; timezone struct seems to work around the problem. NS notes: Darwin +- ;; manpage says the timezone is not used anymore in their implementation +- ;; at all. ++ ;; and OpenBSD manpage says the timezone is not used anymore in their ++ ;; implementation at all. + (syscall* ("sb_gettimeofday" (* (struct timeval)) + (* (struct timezone))) + (values (slot tv 'tv-sec) + (slot tv 'tv-usec)) + (addr tv) + nil)) +- #-(or darwin netbsd) ++ #-(or darwin netbsd openbsd) + (with-alien ((tv (struct timeval)) + (tz (struct timezone))) + (syscall* ("sb_gettimeofday" (* (struct timeval)) Index: patches/patch-src_runtime_GNUmakefile =================================================================== RCS file: /cvs/ports/lang/sbcl/patches/patch-src_runtime_GNUmakefile,v retrieving revision 1.8 diff -u -p -u -p -r1.8 patch-src_runtime_GNUmakefile --- patches/patch-src_runtime_GNUmakefile 8 Mar 2018 15:17:39 -0000 1.8 +++ patches/patch-src_runtime_GNUmakefile 1 Jan 2020 16:53:53 -0000 @@ -2,7 +2,7 @@ $OpenBSD: patch-src_runtime_GNUmakefile, Index: src/runtime/GNUmakefile --- src/runtime/GNUmakefile.orig +++ src/runtime/GNUmakefile -@@ -30,7 +30,7 @@ __LDFLAGS__ = +@@ -34,7 +34,7 @@ __LDFLAGS__ = include ../../output/prefix.def Index: patches/patch-src_runtime_gc-common_c =================================================================== RCS file: /cvs/ports/lang/sbcl/patches/patch-src_runtime_gc-common_c,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-src_runtime_gc-common_c --- patches/patch-src_runtime_gc-common_c 8 Mar 2018 15:17:39 -0000 1.2 +++ patches/patch-src_runtime_gc-common_c 1 Jan 2020 16:53:53 -0000 @@ -5,7 +5,7 @@ clang only has it as builtin Index: src/runtime/gc-common.c --- src/runtime/gc-common.c.orig +++ src/runtime/gc-common.c -@@ -55,6 +55,8 @@ +@@ -57,6 +57,8 @@ #define LONG_FLOAT_SIZE 3 #endif Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/lang/sbcl/pkg/PLIST,v retrieving revision 1.12 diff -u -p -u -p -r1.12 PLIST --- pkg/PLIST 13 May 2019 12:58:58 -0000 1.12 +++ pkg/PLIST 1 Jan 2020 16:53:53 -0000 @@ -50,3 +50,4 @@ share/doc/sbcl/BUGS share/doc/sbcl/COPYING share/doc/sbcl/CREDITS share/doc/sbcl/NEWS +share/doc/sbcl/html/