On Sun, Apr 12, 2009 at 03:24:00PM -0400, Taylor Venable wrote:
> On Sun, Apr 12, 2009 at 02:22:27PM -0400, Taylor Venable wrote:
> > On 2009-03-06 I sent out a patch to update CLISP from 2.43p0 to 2.47;
> > I haven't heard anything back on that, so I've updated that patch to
> > reflect the fact that CLISP is now at 2.43p1 and I am resending it.
>
> I forgot that this needs to be a unified diff; it is attached.
I have been working on a clisp update as well. I've mainly been
focusing on getting clisp working on other platforms like sparc64, but
I still have a couple of cleanups and fixes that you should take a
look at.
In particular your LIB_DEPENDS line looks wrong, and you can just add
ac_cv_prog_DVIPDF='' to CONFIGURE_ENV to avoid patching the
autoconf-generated configure script. You also don't need to run
makemake anymore, the toplevel configure script does that now.
Index: Makefile
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/clisp/Makefile,v
retrieving revision 1.31
diff -u -N Makefile
--- Makefile 5 Mar 2009 23:44:38 -0000 1.31
+++ Makefile 13 Apr 2009 04:34:47 -0000
@@ -2,10 +2,9 @@
ONLY_FOR_ARCHS= amd64 i386
-COMMENT= ANSI Common Lisp compiler
+COMMENT= ANSI Common Lisp implementation
-DISTNAME= clisp-2.43
-PKGNAME= ${DISTNAME}p1
+DISTNAME= clisp-2.47
CATEGORIES= lang
HOMEPAGE= http://clisp.cons.org/
@@ -17,7 +16,8 @@
MODULES= devel/gettext
-LIB_DEPENDS= sigsegv::devel/libsigsegv
+LIB_DEPENDS= avcall,callback:ffcall->=1.10p0:devel/ffcall \
+ sigsegv::devel/libsigsegv
WANTLIB= c m ncurses readline
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=clisp/}
@@ -25,28 +25,16 @@
USE_LIBTOOL= Yes
CONFIGURE_STYLE=gnu old
-CONFIGURE_ARGS= --with-gmalloc \
- --srcdir=${WRKSRC} ${WRKBUILD}
-MAKEMAKE_ARGS= --fsstnd=openbsd \
- --prefix=${PREFIX} \
- --with-dynamic-ffi \
- --with-gmalloc \
+CONFIGURE_ARGS= --srcdir=${WRKSRC} \
+ --fsstnd=openbsd \
--mandir=${PREFIX}/man \
+ --docdir=${PREFIX}/share/doc/clisp \
--vimdir=${PREFIX}/share/doc/clisp \
- --docdir=${PREFIX}/share/doc/clisp
-.if ${MACHINE_ARCH} == "amd64"
-MAKEMAKE_ARGS+= --disable-mmap
-.endif
+ --with-gmalloc \
+ --disable-mmap \
+ ${WRKBUILD}
+CONFIGURE_ENV= ac_cv_prog_DVIPDF=''
SEPARATE_BUILD= simple
-MODGNU_CONFIG_GUESS_DIRS= ${WRKSRC}/ffcall/autoconf
USE_GMAKE= Yes
-MAKE_FLAGS= INSTALL='install -c' \
- INSTALL_PROGRAM='install -c -s -m 555' \
- INSTALL_DATA='install -c -m 644'
-
-
-post-configure:
- @cd ${WRKBUILD} && ./makemake ${MAKEMAKE_ARGS} >Makefile && \
- make config.lisp
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/clisp/distinfo,v
retrieving revision 1.8
diff -u -N distinfo
--- distinfo 25 Nov 2007 22:16:21 -0000 1.8
+++ distinfo 4 Apr 2009 03:19:27 -0000
@@ -1,5 +1,5 @@
-MD5 (clisp-2.43.tar.bz2) = Rc96tijKuD6Zzqp1qogLYw==
-RMD160 (clisp-2.43.tar.bz2) = MIgTJUPJIOArSCyQMXQro08v4Bc=
-SHA1 (clisp-2.43.tar.bz2) = hePo9iazHfsVgQDmMeoXv0g2T60=
-SHA256 (clisp-2.43.tar.bz2) = tSE8zFnWXBkPR8Dk8E1WihpmvLKK5e1ZcF5ZxrixHoM=
-SIZE (clisp-2.43.tar.bz2) = 8143871
+MD5 (clisp-2.47.tar.bz2) = j6ibsT6GX8fHFQuCaC81rw==
+RMD160 (clisp-2.47.tar.bz2) = 03awsWaUu69g5h/DRlv831dw4JM=
+SHA1 (clisp-2.47.tar.bz2) = Y3Sb8HQJzuE0wZVUfm2RFVS2GdY=
+SHA256 (clisp-2.47.tar.bz2) = VlJWpQyspEqWm3RAyYazIDoLlnm6vQ8dvLxhpPRiLts=
+SIZE (clisp-2.47.tar.bz2) = 7543689
Index: patches/patch-configure
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/clisp/patches/patch-configure,v
retrieving revision 1.2
diff -u -N patches/patch-configure
--- patches/patch-configure 25 Nov 2007 22:16:21 -0000 1.2
+++ patches/patch-configure 4 Apr 2009 22:25:25 -0000
@@ -1,7 +1,22 @@
+The src/ configure script chokes on --vimdir, so don't pass it through.
+XXX is it really necessary to patch the stack check to always fail?
+
$OpenBSD: patch-configure,v 1.2 2007/11/25 22:16:21 jasper Exp $
---- configure.orig Sun Nov 11 22:42:57 2007
-+++ configure Sun Nov 25 21:16:30 2007
-@@ -731,8 +731,7 @@ stacksizelimit=`ulimit -s 2>/dev/null || :` # cygwin /
+--- configure.orig Thu Oct 23 15:29:53 2008
++++ configure Sat Apr 4 13:44:31 2009
+@@ -402,11 +402,9 @@ do
+ passnext=both ;;
+
+ --vimdir=* | --vimdi=* | --vimd=* | --vim=* | --vi=*)
+- subdir_configure_args="$subdir_configure_args $arg"
+ makemake_args="$makemake_args --vimdir="`getarg "$arg"` ;;
+
+ --vimdir | --vimdi | --vimd | --vim | --vi)
+- subdir_configure_args="$subdir_configure_args $arg"
+ makemake_args="$makemake_args --vimdir="
+ prev=vimdir
+ passnext=both ;;
+@@ -726,8 +724,7 @@ stacksizelimit=`ulimit -s 2>/dev/null || :` # cygwin /
# need 3 separate test calls because of "integer expression expected" errors
# when $stacksizelimit is "" or "unlimited" (no short-circuiting!)
set +e;
@@ -10,4 +25,4 @@
+STACK_TOO_SMALL=0 # 0=true => need to reset; 1=false => big enough
set -e
- cd $ABS_DIRNAME
+ cd "$ABS_DIRNAME"
Index: patches/patch-src_configure
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/clisp/patches/patch-src_configure,v
retrieving revision 1.4
diff -u -N patches/patch-src_configure
--- patches/patch-src_configure 25 Nov 2007 22:16:21 -0000 1.4
+++ /dev/null 13 Apr 2009 04:34:06 -0000
@@ -1,47 +0,0 @@
-$OpenBSD: patch-src_configure,v 1.4 2007/11/25 22:16:21 jasper Exp $
---- src/configure.orig Sun Nov 25 21:14:31 2007
-+++ src/configure Sun Nov 25 21:14:54 2007
-@@ -21713,43 +21713,6 @@ echo "${ECHO_T}no" >&6; }
- fi
-
-
--# Extract the first word of "dvipdf", so it can be a program name with args.
--set dummy dvipdf; ac_word=$2
--{ echo "$as_me:$LINENO: checking for $ac_word" >&5
--echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
--if test "${ac_cv_prog_DVIPDF+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
-- if test -n "$DVIPDF"; then
-- ac_cv_prog_DVIPDF="$DVIPDF" # Let the user override the test.
--else
--as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
--for as_dir in $PATH
--do
-- IFS=$as_save_IFS
-- test -z "$as_dir" && as_dir=.
-- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x
"$as_dir/$ac_word$ac_exec_ext"; }; then
-- ac_cv_prog_DVIPDF="dvipdf"
-- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-- break 2
-- fi
--done
--done
--IFS=$as_save_IFS
--
--fi
--fi
--DVIPDF=$ac_cv_prog_DVIPDF
--if test -n "$DVIPDF"; then
-- { echo "$as_me:$LINENO: result: $DVIPDF" >&5
--echo "${ECHO_T}$DVIPDF" >&6; }
--else
-- { echo "$as_me:$LINENO: result: no" >&5
--echo "${ECHO_T}no" >&6; }
--fi
--
--
- for ac_prog in gzip zip compress
- do
- # Extract the first word of "$ac_prog", so it can be a program name with
args.
Index: patches/patch-src_makemake_in
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/clisp/patches/patch-src_makemake_in,v
retrieving revision 1.9
diff -u -N patches/patch-src_makemake_in
--- patches/patch-src_makemake_in 25 Nov 2007 22:16:21 -0000 1.9
+++ patches/patch-src_makemake_in 5 Apr 2009 01:19:12 -0000
@@ -1,7 +1,9 @@
+Executable images are broken on OpenBSD, so skip the check-exec-image test.
+
$OpenBSD: patch-src_makemake_in,v 1.9 2007/11/25 22:16:21 jasper Exp $
---- src/makemake.in.orig Sun Nov 25 21:15:04 2007
-+++ src/makemake.in Sun Nov 25 21:15:40 2007
-@@ -1872,7 +1872,7 @@ echol "# This can also be used for pre-test and post-r
+--- src/makemake.in.orig Thu Oct 23 15:27:58 2008
++++ src/makemake.in Sat Apr 4 15:16:03 2009
+@@ -1826,7 +1826,7 @@ echol "# This can also be used for pre-test and post-r
echol "# make distrib VERSION_SUFFIX=pre"
echol "VERSION_SUFFIX="
echol "# The distribution's top directory"
@@ -10,3 +12,12 @@
echol
echol '# Directories used by "make install":'
echol "prefix = ${PREFIX}"
+@@ -2932,7 +2932,7 @@ fi
+ CLISP_="${HERE_}lisp${LEXE} -M ${HERE_}lispinit.mem
${localeflags}${someflags}"
+
+ if [ $CROSS = false ] ; then
+- CHECK_DEPS="check-recompile check-fresh-line check-script check-exec-image
check-tests"
++ CHECK_DEPS="check-recompile check-fresh-line check-script check-tests"
+
+ echol "# check the sources:"
+ echol "# 1. subr.d, fsubr.d, subrkw.d and all the LISPFUNs must add up"
Index: patches/patch-tests_socket_tst
===================================================================
RCS file: patches/patch-tests_socket_tst
diff -u -N patches/patch-tests_socket_tst
--- /dev/null 12 Apr 2009 21:40:14 -0000
+++ patches/patch-tests_socket_tst 4 Apr 2009 23:54:41 -0000
@@ -0,0 +1,27 @@
+Patch this test to pass even if a nonblocking connect() to localhost
+fails immediately with ECONNREFUSED, instead of failing on the first
+read attempt.
+
+$OpenBSD$
+--- tests/socket.tst.orig Mon Jun 30 12:33:01 2008
++++ tests/socket.tst Sat Apr 4 16:37:44 2009
+@@ -515,10 +515,15 @@ T
+ ;; no one should be listening on 12345
+ ;; <http://article.gmane.org/gmane.lisp.clisp.general/12286>
+ (socket:socket-connect 12345 "localhost" :timeout 30) ERROR ; ECONNREFUSED
+-(open-stream-p (setq *socket-1* (socket:socket-connect
+- 12345 "localhost" :timeout 0))) T
+-(read-line *socket-1*) ERROR ; ECONNREFUSED
+-(close *socket-1*) T
++(or (null (setq *socket-1* (ignore-errors (socket:socket-connect
++ 12345 "localhost" :timeout 0))))
++ (open-stream-p *socket-1*)) T
++(if (null *socket-1*)
++ (error "dummy")
++ (read-line *socket-1*)) ERROR ; ECONNREFUSED
++(if (null *socket-1*)
++ T
++ (close *socket-1*)) T
+
+ (let ((interfaces '(nil "localhost" "0.0.0.0" "127.0.0.1")))
+ (mapcar (lambda (i)
Index: pkg/PLIST
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/clisp/pkg/PLIST,v
retrieving revision 1.11
diff -u -N pkg/PLIST
--- pkg/PLIST 5 Mar 2009 23:44:38 -0000 1.11
+++ pkg/PLIST 4 Apr 2009 21:39:38 -0000
@@ -4,8 +4,6 @@
lib/clisp/base/
lib/clisp/base/calls.o
lib/clisp/base/gettext.o
-lib/clisp/base/libavcall.a
-lib/clisp/base/libcallback.a
lib/clisp/base/libnoreadline.a
lib/clisp/base/lisp.a
@bin lib/clisp/base/lisp.run
@@ -27,8 +25,6 @@
lib/clisp/full/
lib/clisp/full/calls.o
lib/clisp/full/gettext.o
-lib/clisp/full/libavcall.a
-lib/clisp/full/libcallback.a
lib/clisp/full/libnoreadline.a
lib/clisp/full/lisp.a
@bin lib/clisp/full/lisp.run
@@ -47,7 +43,6 @@
lib/clisp/linkkit/clisp.h
lib/clisp/linkkit/modprep.lisp
lib/clisp/linkkit/modules.c
-lib/clisp/linkkit/modules.d
@man man/man1/clisp.1
share/doc/clisp/
share/doc/clisp/ANNOUNCE