Josh Elsasser <j...@elsasser.org> writes: > On Fri, Oct 11, 2013 at 08:00:41PM +0200, Jérémie Courrèges-Anglas wrote: >> Kenneth R Westerback <kwesterb...@rogers.com> writes: >> >> > On Thu, Oct 10, 2013 at 04:16:31PM -0700, Josh Elsasser wrote: >> >> On Thu, Oct 10, 2013 at 09:29:40AM +0200, J?r?mie Courr?ges-Anglas wrote: >> >> > >> >> > So instead of struggling with clisp, let's just update sbcl first. >> >> > Regress tests results and diff below. I'm postponing clisp for now. >> >> > >> >> > More tests on amd64 / ok? >> >> >> >> There should be a build-time (and probably runtime) dependency on gmp, >> >> or else the gmp contrib should be disabled. I'm not sure if it's right >> >> to enforce a runtime dependency when few users will use sb-gmp, but it >> >> would also be annoying to start splitting off contribs into separate >> >> packages. >> >> gmp is opened using load-shared-object (dlopen), the build system >> doesn't search for it (but we should keep in mind that one day it >> might use sb-grovel to detect the size and signedness of gmp objects). >> Given this, plus the fact that it is a relatively new and probably >> seldom used module, I don't think adding gmp to bdeps/rdeps would add >> much value. >> >> What I should have done, though, is to put gmp in TEST_DEPENDS. >> >> Josh, do you agree with this? > > Will the port build correctly without gmp installed? I would assume > that the sb-gmp contrib would fail to build, and then the port bail > out when files from the plist are missing. I'm fine with leaving it > out of the runtime deps, but think that it should be declared as a > build dep if it's really needed then.
I've just tested yesterday evening, with the gmp headers and libs made unreachable (it's a bit hard to pkg_delete gmp since it's widely used). sb-gmp is still built and installed. As krw@ pointed out privately, my last diff had some unwanted .fasl in the PLIST (the ones generated at the ''make test'' step). I should have checked twice, sorry. Here's a more correct diff. Please give it a shot... Index: Makefile =================================================================== RCS file: /home/cvs/ports/lang/sbcl/Makefile,v retrieving revision 1.20 diff -u -p -r1.20 Makefile --- Makefile 15 Sep 2013 16:34:00 -0000 1.20 +++ Makefile 12 Oct 2013 08:10:07 -0000 @@ -5,8 +5,7 @@ ONLY_FOR_ARCHS = amd64 i386 powerpc COMMENT= compiler and runtime system for ANSI Common Lisp -V = 1.1.8 -REVISION= 0 +V = 1.1.12 DISTNAME= sbcl-${V}-source PKGNAME= sbcl-${V} WRKDIST= ${WRKDIR}/sbcl-${V} @@ -36,6 +35,7 @@ BOOTSTRAP_CMD= ${LOCALBASE}/bin/sbcl \ BUILD_DEPENDS += lang/clisp BOOTSTRAP_CMD = ${LOCALBASE}/bin/clisp -q -norc .endif +TEST_DEPENDS = devel/gmp .for arch in amd64 i386 powerpc . if ${MACHINE_ARCH} == ${arch} Index: distinfo =================================================================== RCS file: /home/cvs/ports/lang/sbcl/distinfo,v retrieving revision 1.9 diff -u -p -r1.9 distinfo --- distinfo 26 Jun 2013 17:44:03 -0000 1.9 +++ distinfo 11 Oct 2013 14:54:02 -0000 @@ -1,2 +1,2 @@ -SHA256 (sbcl-1.1.8-source.tar.bz2) = N8pU0Bj0nAleC/V1wurIJdzkhYmp3hrHv661JaK+rLo= -SIZE (sbcl-1.1.8-source.tar.bz2) = 4108784 +SHA256 (sbcl-1.1.12-source.tar.bz2) = jJQSy9tgG2Nv8+PHkIykbZ2X3P7ewz62NNsTEi81dFc= +SIZE (sbcl-1.1.12-source.tar.bz2) = 4217764 Index: patches/patch-src_code_unix_lisp =================================================================== RCS file: /home/cvs/ports/lang/sbcl/patches/patch-src_code_unix_lisp,v retrieving revision 1.1 diff -u -p -r1.1 patch-src_code_unix_lisp --- patches/patch-src_code_unix_lisp 15 Sep 2013 16:34:00 -0000 1.1 +++ patches/patch-src_code_unix_lisp 11 Oct 2013 14:54:02 -0000 @@ -1,40 +0,0 @@ -$OpenBSD: patch-src_code_unix_lisp,v 1.1 2013/09/15 16:34:00 jca Exp $ - -Cope with 64-bit time_t. - ---- src/code/unix.lisp.orig Sun Jun 2 15:12:40 2013 -+++ src/code/unix.lisp Sun Sep 15 14:17:59 2013 -@@ -215,16 +215,19 @@ corresponds to NAME, or NIL if there is none." - (tv-sec time-t) ; seconds - (tv-usec suseconds-t))) ; and microseconds - --;; The above definition doesn't work on 64-bit OpenBSD platforms. --;; Both tv_sec and tv_usec are declared as long instead of time_t, and --;; time_t is a typedef for int. --#!+(or openbsd netbsd) -+;; The following definition was used on OpenBSD pre-5.5. -+;; Both tv_sec and tv_usec were declared as long instead of time_t, and -+;; time_t was a typedef for int. -+;; Note: time_t is 64-bit on all architectures, starting from OpenBSD 5.5. -+;; FIXME: it seems recent NetBSD releases use a 64-bit time_t too. -+#!+netbsd - (define-alien-type nil - (struct timeval - (tv-sec long) ; seconds - (tv-usec long))) ; and microseconds - --#!+win32 -+;; OpenBSD 5.5 uses this struct layout. -+#!+(or win32 openbsd) - (define-alien-type nil - (struct timeval - (tv-sec time-t) ; seconds -@@ -948,6 +951,8 @@ avoiding atexit(3) hooks, etc. Otherwise exit(2) is ca - ;; Just as with struct timeval, 64-bit OpenBSD has problems with the - ;; above definition. tv_sec is declared as time_t instead of long, - ;; and time_t is a typedef for int. -+;; Note: time_t is 64-bit on all architectures, starting from OpenBSD 5.5 -+;; FIXME: it seems recent NetBSD releases use a 64-bit time_t too. - #!+(or openbsd netbsd) - (define-alien-type nil - (struct timespec Index: pkg/PLIST =================================================================== RCS file: /home/cvs/ports/lang/sbcl/pkg/PLIST,v retrieving revision 1.6 diff -u -p -r1.6 PLIST --- pkg/PLIST 4 Jan 2012 20:16:43 -0000 1.6 +++ pkg/PLIST 12 Oct 2013 08:07:30 -0000 @@ -1,4 +1,4 @@ -@comment $OpenBSD: PLIST,v 1.6 2012/01/04 20:16:43 krw Exp $ +@comment $OpenBSD$ %%amd64%% %%i386%% %%powerpc%% @@ -65,6 +65,8 @@ lib/sbcl/sb-cltl2/sb-cltl2.asd lib/sbcl/sb-cltl2/sb-cltl2.fasl lib/sbcl/sb-cltl2/tests.lisp lib/sbcl/sb-concurrency/ +lib/sbcl/sb-concurrency/frlock.fasl +lib/sbcl/sb-concurrency/frlock.lisp lib/sbcl/sb-concurrency/gate.fasl lib/sbcl/sb-concurrency/gate.lisp lib/sbcl/sb-concurrency/mailbox.fasl @@ -86,6 +88,12 @@ lib/sbcl/sb-cover/test-data-3.lisp lib/sbcl/sb-cover/tests.lisp lib/sbcl/sb-executable/ lib/sbcl/sb-executable/sb-executable.fasl +lib/sbcl/sb-gmp/ +lib/sbcl/sb-gmp/gmp.fasl +lib/sbcl/sb-gmp/gmp.lisp +lib/sbcl/sb-gmp/sb-gmp.asd +lib/sbcl/sb-gmp/sb-gmp.fasl +lib/sbcl/sb-gmp/tests.lisp lib/sbcl/sb-grovel/ lib/sbcl/sb-grovel/def-to-lisp.fasl lib/sbcl/sb-grovel/def-to-lisp.lisp