Re: Update lang/sbcl (adds powerpc support)

2010-08-16 Thread Thomas de Grivel

On 08/17/10 01:48, Thomas de Grivel wrote:

On 08/15/10 02:47, Josh Elsasser wrote:

On Sat, Aug 14, 2010 at 11:50:44PM +0200, Thomas de Grivel wrote:

On 08/14/10 21:46, Josh Elsasser wrote:

On Sat, Aug 14, 2010 at 08:38:27PM +0200, Thomas de Grivel wrote:

On 07/31/10 19:14, Josh Elsasser wrote:

The included patch updates sbcl to 1.0.41, which eliminates a number
of patches and adds powerpc support. Note that this adds and removes
several files in pkg/ and patches/, so patch -E is your friend.

[snipped]





I'd love to test it.
Your patch almost applies to CVS head.


$ cd /usr/ports/lang/sbcl/ make clean build
=== Cleaning for sbcl-1.0.41
=== sbcl-1.0.41 depends on: texlive_base-* - found
=== sbcl-1.0.41 depends on: clisp-* - found
=== sbcl-1.0.41 depends on: gmake-* - found
=== sbcl-1.0.41 depends on: bzip2-* - found
=== Verifying specs: c m util c m util
=== found c.56.0 m.5.2 util.11.1
=== Checking files for sbcl-1.0.41
`/usr/ports/distfiles/sbcl-1.0.41-source.tar.bz2' is up to date.

(SHA256) sbcl-1.0.41-source.tar.bz2: OK

=== Extracting for sbcl-1.0.41
=== Patching for sbcl-1.0.41
2 out of 4 hunks failed--saving rejects to src/runtime/runtime.c.rej
*** patch-src_runtime_runtime.c did not apply cleanly
=== Ignoring patchfile patch-src_runtime_runtime.c.rej
*** Error code 1

Stop in /usr/ports/lang/sbcl (line 2241 of
/usr/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /usr/ports/lang/sbcl (line 2116 of
/usr/ports/infrastructure/mk/bsd.port.mk).

-

Here is the rejected patch :

$ cat patches/patch-src_runtime_runtime.c.rej

[snipped]



The fact that you have a .rej file in patches/ indicates that my patch
did not apply cleanly for you (the patch that patches the patches in
patches/)

I tested just now and it applies fine against a clean tree, with -E to
remove all the obsolete patches. Are you sure that your ports tree was
clean and updated to HEAD when you applied the patch from my email?


I think because i tried multiple times using this command :

cd /usr/ports rm -rf lang/sbcl cvs up lang/sbcl patch -E
sbcl-1.0.41.diff


I realize maybe thunderbird messed the patch being taken as message
body. I'll try with evolution but could you please send it as an
attachment also ?



Here's the original patch I sent to the list:

http://www.elsasser.org/misc/ports-sbcl-1.0.41-ppc.diff

Are you sure you are updating to HEAD and not a branch or something?
You might want to update with -A. Also, are you sure that the cvs
mirror is up to date?


Thanks. CVS was ok, it was thunderbird mangling two lines with ^L. Now
to some real testing, your patch applies neatly =)


I think you forgot to 'make plist'. When i do, my pkg/PLIST has several 
more .fasl files in it.


Otherwise regressions tests run OK !

Too bad there are no support for OpenBSD threads on SBCL yet, i wonder 
how much effort it would be to add. Common Lisp and OpenBSD ought to 
work together, they would definitely provide a major Do The Right 
Thing environment.


$ uname -a
OpenBSD adrenochrome.my.domain 4.8 GENERIC.MP#297 amd64

$ cd /usr/ports/lang/sbcl  make regress
[...]
Finished running tests.
Status:
 Expected failure:packages.impure.lisp / USE-PACKAGE-CONFLICT-SET
 Expected failure:packages.impure.lisp / IMPORT-SINGLE-CONFLICT
ok
//apparent success (reached end of run-tests.sh normally)
Tue Aug 17 03:16:56 CEST 2010

--
Thomas de Grivel
http://b.lowh.net/billitch



Update lang/sbcl (adds powerpc support)

2010-07-31 Thread Josh Elsasser
The included patch updates sbcl to 1.0.41, which eliminates a number
of patches and adds powerpc support. Note that this adds and removes
several files in pkg/ and patches/, so patch -E is your friend.

Index: lang/sbcl/Makefile
===
RCS file: /home/cvsync/openbsd/ports/lang/sbcl/Makefile,v
retrieving revision 1.3
diff -u -N lang/sbcl/Makefile
--- lang/sbcl/Makefile  17 Nov 2009 10:44:59 -  1.3
+++ lang/sbcl/Makefile  31 Jul 2010 13:47:20 -
@@ -1,11 +1,12 @@
+
 # $OpenBSD: Makefile,v 1.3 2009/11/17 10:44:59 pirofti Exp $
 
 # not yet ported to other arches
-ONLY_FOR_ARCHS =   amd64 i386
+ONLY_FOR_ARCHS =   amd64 i386 powerpc
 
 COMMENT=   compiler and runtime system for ANSI Common Lisp
 
-V =1.0.31
+V =1.0.41
 DISTNAME=  sbcl-${V}-source
 PKGNAME=   sbcl-${V}
 WRKDIST=   ${WRKDIR}/sbcl-${V}
@@ -39,11 +40,13 @@
 BOOTSTRAP_CMD =${LOCALBASE}/bin/clisp -q -norc
 .endif
 
-.if ${MACHINE_ARCH} == i386
-PKG_ARGS +=-Di386=1
-.else
-PKG_ARGS +=-Di386=0
-.endif
+.for arch in amd64 i386 powerpc
+. if ${MACHINE_ARCH} == ${arch}
+PKG_ARGS +=-D${arch}=1
+. else
+PKG_ARGS +=-D${arch}=0
+. endif
+.endfor
 
 USE_GMAKE= Yes
 PORTHOME=  ${TMPDIR}
Index: lang/sbcl/distinfo
===
RCS file: /home/cvsync/openbsd/ports/lang/sbcl/distinfo,v
retrieving revision 1.2
diff -u -N lang/sbcl/distinfo
--- lang/sbcl/distinfo  17 Nov 2009 10:45:00 -  1.2
+++ lang/sbcl/distinfo  30 Jul 2010 17:32:19 -
@@ -1,5 +1,5 @@
-MD5 (sbcl-1.0.31-source.tar.bz2) = ph/QmacsLT+hClcpjzyb9g==
-RMD160 (sbcl-1.0.31-source.tar.bz2) = 6UyQl/9BOEccF5v+Hx4sM+by4Wk=
-SHA1 (sbcl-1.0.31-source.tar.bz2) = Skt03hdPlwUKJ4WsRVmqbdSKPQk=
-SHA256 (sbcl-1.0.31-source.tar.bz2) = 
0CZNbkpJ5tGBwnNI8H3nM8CYYMnNdKH76Objy3yiidw=
-SIZE (sbcl-1.0.31-source.tar.bz2) = 3354506
+MD5 (sbcl-1.0.41-source.tar.bz2) = zfF6y5kfvcnTwTJj9cK7BA==
+RMD160 (sbcl-1.0.41-source.tar.bz2) = sgIi+IgMT0mvDEDeI215UUOVKOk=
+SHA1 (sbcl-1.0.41-source.tar.bz2) = t41Ubvm7PGFn3YoK8HNKuer+0fo=
+SHA256 (sbcl-1.0.41-source.tar.bz2) = 
M9snVS6xtnDf2aPNMnnMDAeELzlpPO4WcAGTtjIFMAU=
+SIZE (sbcl-1.0.41-source.tar.bz2) = 3428046
Index: lang/sbcl/patches/patch-contrib_asdf-module.mk
===
RCS file: 
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-contrib_asdf-module.mk,v
retrieving revision 1.2
diff -u -N lang/sbcl/patches/patch-contrib_asdf-module.mk
--- lang/sbcl/patches/patch-contrib_asdf-module.mk  17 Nov 2009 10:45:00 
-  1.2
+++ lang/sbcl/patches/patch-contrib_asdf-module.mk  30 Jul 2010 19:25:28 
-
@@ -5,8 +5,8 @@
 Don't copy every single file when installing the contribs, only the
 ones that are actually needed to load the system.
 
 contrib/asdf-module.mk.origTue Apr 28 09:02:13 2009
-+++ contrib/asdf-module.mk Tue Jul  7 17:57:02 2009
+--- contrib/asdf-module.mk.origThu Jan 28 11:46:39 2010
 contrib/asdf-module.mk Fri Jul 30 12:24:33 2010
 @@ -22,7 +22,8 @@ endif
  
  export CC SBCL EXTRA_CFLAGS EXTRA_LDFLAGS
@@ -22,5 +22,5 @@
  # preserve owner, so chown after installing for the current user.
  install: $(EXTRA_INSTALL_TARGETS)
 -  tar cf - . | ( cd $(BUILD_ROOT)$(INSTALL_DIR)  tar xpvf - )
--  find $(BUILD_ROOT)$(INSTALL_DIR) -type f -exec chown `id -u`:`id -g` 
{} \;
+-  find $(BUILD_ROOT)$(INSTALL_DIR) -exec chown `id -u`:`id -g` {} \;
 +  cp -p $(SYSTEM).asd *.lisp *.fasl $(BUILD_ROOT)$(INSTALL_DIR)
Index: lang/sbcl/patches/patch-src_code_common-os_lisp
===
RCS file: 
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_code_common-os_lisp,v
retrieving revision 1.1
diff -u -N lang/sbcl/patches/patch-src_code_common-os_lisp
--- lang/sbcl/patches/patch-src_code_common-os_lisp 17 Nov 2009 10:45:00 
-  1.1
+++ /dev/null   31 Jul 2010 14:41:48 -
@@ -1,30 +0,0 @@
-$OpenBSD: patch-src_code_common-os_lisp,v 1.1 2009/11/17 10:45:00 pirofti Exp $
-
-If os_get_runtime_executable_path(1) returns NULL then try to use
-saved_runtime_path, which fixes the shebang line in fasls.
-
 src/code/common-os.lisp.orig   Wed Jun 24 07:33:19 2009
-+++ src/code/common-os.lispMon Jun 29 07:53:42 2009
-@@ -15,7 +15,10 @@
- 
- (sb!alien:define-alien-variable (posix_argv *native-posix-argv*) (* (* 
char)))
- (sb!alien:define-alien-variable (core_string *native-core-string*) (* char))
--(sb!alien:define-alien-routine os-get-runtime-executable-path 
sb!alien:c-string)
-+(sb!alien:define-alien-routine
-+ os-get-runtime-executable-path sb!alien:c-string (external-path boolean))
-+(sb!alien:define-alien-variable
-+ (saved_runtime_path *native-saved-runtime-path*) (* char))
- 
- ;;; if