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 -0000 1.3
+++ lang/sbcl/Makefile 31 Jul 2010 13:47:20 -0000
@@ -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 -0000 1.2
+++ lang/sbcl/distinfo 30 Jul 2010 17:32:19 -0000
@@ -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
-0000 1.2
+++ lang/sbcl/patches/patch-contrib_asdf-module.mk 30 Jul 2010 19:25:28
-0000
@@ -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.orig Tue Apr 28 09:02:13 2009
-+++ contrib/asdf-module.mk Tue Jul 7 17:57:02 2009
+--- contrib/asdf-module.mk.orig Thu 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
-0000 1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -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.lisp Mon 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 something ever needs to be done differently for one OS, then
- ;;; split out the different part into per-os functions.
-@@ -43,6 +46,8 @@
- (setf *core-pathname*
- (merge-pathnames (native-pathname *core-string*)))
- (/show0 "setting *RUNTIME-PATHNAME*")
-- (let ((exe (os-get-runtime-executable-path)))
-- (setf *runtime-pathname* (when exe (native-pathname exe))))
-+ (let ((exe (os-get-runtime-executable-path t))
-+ (saved (sb!alien:cast *native-saved-runtime-path* sb!alien:c-string)))
-+ (setf *runtime-pathname*
-+ (when (or exe saved) (native-pathname (or exe saved)))))
- (/show0 "leaving OS-COLD-INIT-OR-REINIT"))
Index: lang/sbcl/patches/patch-src_compiler_ir1util_lisp
===================================================================
RCS file:
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_compiler_ir1util_lisp,v
retrieving revision 1.1
diff -u -N lang/sbcl/patches/patch-src_compiler_ir1util_lisp
--- lang/sbcl/patches/patch-src_compiler_ir1util_lisp 17 Nov 2009 10:45:00
-0000 1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -1,15 +0,0 @@
-$OpenBSD: patch-src_compiler_ir1util_lisp,v 1.1 2009/11/17 10:45:00 pirofti
Exp $
-
-Clisp 2.43 chokes on this declaration.
-
---- src/compiler/ir1util.lisp.orig Wed Jun 17 13:03:36 2009
-+++ src/compiler/ir1util.lisp Mon Jun 29 08:22:24 2009
-@@ -429,7 +429,7 @@
- (lvar-dynamic-extent it)))
-
- (defun flushable-combination-p (call)
-- (declare (combination call))
-+ (declare (type combination call))
- (let ((kind (combination-kind call))
- (info (combination-fun-info call)))
- (when (and (eq kind :known) (fun-info-p info))
Index: lang/sbcl/patches/patch-src_runtime_bsd-os_c
===================================================================
RCS file:
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_runtime_bsd-os_c,v
retrieving revision 1.1
diff -u -N lang/sbcl/patches/patch-src_runtime_bsd-os_c
--- lang/sbcl/patches/patch-src_runtime_bsd-os_c 17 Nov 2009 10:45:00
-0000 1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -1,29 +0,0 @@
-$OpenBSD: patch-src_runtime_bsd-os_c,v 1.1 2009/11/17 10:45:00 pirofti Exp $
-
-Add a flag to os_get_runtime_executable_path() indicating if an
-externally usable path is required, which means we can't use
-/proc/curproc/file even if procfs happens to be mounted.
-
---- src/runtime/bsd-os.c.orig Wed May 13 11:13:48 2009
-+++ src/runtime/bsd-os.c Mon Jun 29 07:53:42 2009
-@@ -465,16 +465,12 @@ os_get_runtime_executable_path()
- }
- #elif defined(LISP_FEATURE_NETBSD) || defined(LISP_FEATURE_OPENBSD)
- char *
--os_get_runtime_executable_path()
-+os_get_runtime_executable_path(int external)
- {
- struct stat sb;
-- char *path = strdup("/proc/curproc/file");
-- if (path && ((stat(path, &sb)) == 0))
-- return path;
-- else {
-- fprintf(stderr, "Couldn't stat /proc/curproc/file; is /proc
mounted?\n");
-- return NULL;
-- }
-+ if (!external && stat("/proc/curproc/file", &sb) == 0)
-+ return copied_string("/proc/curproc/file");
-+ return NULL;
- }
- #else /* Not DARWIN or FREEBSD or NETBSD or OPENBSD */
- char *
Index: lang/sbcl/patches/patch-src_runtime_os_h
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_runtime_os_h,v
retrieving revision 1.1
diff -u -N lang/sbcl/patches/patch-src_runtime_os_h
--- lang/sbcl/patches/patch-src_runtime_os_h 17 Nov 2009 10:45:00 -0000
1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -1,11 +0,0 @@
-$OpenBSD: patch-src_runtime_os_h,v 1.1 2009/11/17 10:45:00 pirofti Exp $
---- src/runtime/os.h.orig Wed Jul 25 14:37:31 2007
-+++ src/runtime/os.h Mon Jun 29 07:53:42 2009
-@@ -175,6 +175,6 @@ int os_get_errno(void);
- /* Return an absolute path to the runtime executable, or NULL if this
- * information is unavailable. If a non-null pathname is returned, it
- * must be 'free'd. */
--extern char *os_get_runtime_executable_path(void);
-+extern char *os_get_runtime_executable_path(int external_path);
-
- #endif
Index: lang/sbcl/patches/patch-src_runtime_runtime.c
===================================================================
RCS file:
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_runtime_runtime.c,v
retrieving revision 1.2
diff -u -N lang/sbcl/patches/patch-src_runtime_runtime.c
--- lang/sbcl/patches/patch-src_runtime_runtime.c 17 Nov 2009 10:45:00
-0000 1.2
+++ lang/sbcl/patches/patch-src_runtime_runtime.c 13 Jul 2010 05:14:43
-0000
@@ -2,14 +2,6 @@
Don't hardcode /usr/local, patch and use SUBST_COMMAND.
-Try to guess the path to the current executable from argv[0] and stash
-it in saved_runtime_path for later. It's needed to check for an
-embedded core, to save an executable core, and to write a shebang line
-in fasls.
-
-Check saved_runtime_path if os_get_runtime_executable_path(0) returns
-NULL, which it always will on OpenBSD unless /proc is mounted.
-
--- src/runtime/runtime.c.orig Thu May 21 09:22:55 2009
+++ src/runtime/runtime.c Mon Jun 29 07:53:42 2009
@@ -67,7 +67,7 @@
@@ -21,127 +13,3 @@
#endif
#ifdef LISP_FEATURE_HPUX
-@@ -127,6 +127,37 @@ copied_existing_filename_or_null(char *filename)
- return copied_string(filename);
- }
- }
-+
-+#ifndef LISP_FEATURE_WIN32
-+char *
-+copied_realpath(const char *pathname)
-+{
-+ char *messy, *tidy;
-+ size_t len;
-+
-+ /* realpath() supposedly can't be counted on to always return
-+ * an absolute path, so we prepend the cwd to relative paths */
-+ messy = NULL;
-+ if (pathname[0] != '/') {
-+ messy = successful_malloc(PATH_MAX + 1);
-+ if (getcwd(messy, PATH_MAX + 1) == NULL) {
-+ free(messy);
-+ return NULL;
-+ }
-+ len = strlen(messy);
-+ snprintf(messy + len, PATH_MAX + 1 - len, "/%s", pathname);
-+ }
-+
-+ tidy = successful_malloc(PATH_MAX + 1);
-+ if (realpath((messy ? messy : pathname), tidy) == NULL) {
-+ free(messy);
-+ free(tidy);
-+ return NULL;
-+ }
-+
-+ return tidy;
-+}
-+#endif /* LISP_FEATURE_WIN32 */
-
- /* miscellaneous chattiness */
-
-@@ -205,11 +236,58 @@ search_for_core ()
- return core;
- }
-
-+/* Try to find the path to an executable from argv[0], this is only
-+ * used when os_get_runtime_executable_path() returns NULL */
-+#ifdef LISP_FEATURE_WIN32
-+char *
-+search_for_executable(const char *argv0)
-+{
-+ return NULL;
-+}
-+#else /* LISP_FEATURE_WIN32 */
-+char *
-+search_for_executable(const char *argv0)
-+{
-+ char *search, *start, *end, *buf;
-+
-+ /* If argv[0] contains a slash then it's probably an absolute path
-+ * or relative to the current directory, so check if it exists. */
-+ if (strchr(argv0, '/') != NULL && access(argv0, F_OK) == 0)
-+ return copied_realpath(argv0);
-+
-+ /* Bail on an absolute path which doesn't exist */
-+ if (argv0[0] == '/')
-+ return NULL;
-+
-+ /* Otherwise check if argv[0] exists relative to any directory in PATH */
-+ search = getenv("PATH");
-+ if (search == NULL)
-+ return NULL;
-+ search = copied_string(search);
-+ buf = successful_malloc(PATH_MAX + 1);
-+ for (start = search; (end = strchr(start, ':')) != NULL; start = end + 1)
{
-+ *end = '\0';
-+ snprintf(buf, PATH_MAX + 1, "%s/%s", start, argv0);
-+ if (access(buf, F_OK) == 0) {
-+ free(search);
-+ search = copied_realpath(buf);
-+ free(buf);
-+ return search;
-+ }
-+ }
-+
-+ free(search);
-+ free(buf);
-+ return NULL;
-+}
-+#endif /* LISP_FEATURE_WIN32 */
-+
- char **posix_argv;
- char *core_string;
-
- struct runtime_options *runtime_options;
-
-+char *saved_runtime_path = NULL;
-
- int
- main(int argc, char *argv[], char *envp[])
-@@ -241,15 +319,22 @@ main(int argc, char *argv[], char *envp[])
-
- runtime_options = NULL;
-
-+ /* Save the argv[0] derived runtime path in case
-+ * os_get_runtime_executable_path(1) isn't able to get an
-+ * externally-usable path later on. */
-+ saved_runtime_path = search_for_executable(argv[0]);
-+
- /* Check early to see if this executable has an embedded core,
- * which also populates runtime_options if the core has runtime
- * options */
-- runtime_path = os_get_runtime_executable_path();
-- if (runtime_path) {
-- os_vm_offset_t offset = search_for_embedded_core(runtime_path);
-+ runtime_path = os_get_runtime_executable_path(0);
-+ if (runtime_path || saved_runtime_path) {
-+ os_vm_offset_t offset = search_for_embedded_core(
-+ runtime_path ? runtime_path : saved_runtime_path);
- if (offset != -1) {
- embedded_core_offset = offset;
-- core = runtime_path;
-+ core = (runtime_path ? runtime_path :
-+ copied_string(saved_runtime_path));
- } else {
- free(runtime_path);
- }
Index: lang/sbcl/patches/patch-src_runtime_runtime_h
===================================================================
RCS file:
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_runtime_runtime_h,v
retrieving revision 1.1
diff -u -N lang/sbcl/patches/patch-src_runtime_runtime_h
--- lang/sbcl/patches/patch-src_runtime_runtime_h 17 Nov 2009 10:45:00
-0000 1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -1,11 +0,0 @@
-$OpenBSD: patch-src_runtime_runtime_h,v 1.1 2009/11/17 10:45:00 pirofti Exp $
---- src/runtime/runtime.h.orig Mon Jun 22 06:00:14 2009
-+++ src/runtime/runtime.h Mon Jun 29 07:53:42 2009
-@@ -254,4 +254,7 @@ struct runtime_options {
- size_t thread_control_stack_size;
- };
-
-+/* saved runtime path computed from argv[0] */
-+extern char *saved_runtime_path;
-+
- #endif /* _SBCL_RUNTIME_H_ */
Index: lang/sbcl/patches/patch-src_runtime_save_c
===================================================================
RCS file:
/home/cvsync/openbsd/ports/lang/sbcl/patches/patch-src_runtime_save_c,v
retrieving revision 1.1
diff -u -N lang/sbcl/patches/patch-src_runtime_save_c
--- lang/sbcl/patches/patch-src_runtime_save_c 17 Nov 2009 10:45:00 -0000
1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -1,75 +0,0 @@
-$OpenBSD: patch-src_runtime_save_c,v 1.1 2009/11/17 10:45:00 pirofti Exp $
-
-Fall back to saved_runtime_path if os_get_runtime_executable_path(0)
-returns NULL.
-
-Search for the current build_id when loading the runtime from disk to
-save an executable core. This provided some protection against
-accidentally embedding a core in the wrong runtime, which may be more
-likely when using saved_runtime_path.
-
---- src/runtime/save.c.orig Sat Jan 17 02:43:57 2009
-+++ src/runtime/save.c Mon Jun 29 07:53:42 2009
-@@ -376,6 +376,25 @@ save_to_filehandle(FILE *file, char *filename, lispobj
- exit(0);
- }
-
-+/* Check if the build_id for the current runtime is present in a
-+ * buffer. */
-+int
-+check_runtime_build_id(void *buf, size_t size)
-+{
-+ size_t idlen;
-+ char *pos;
-+
-+ idlen = strlen(build_id) - 1;
-+ while ((pos = memchr(buf, build_id[0], size)) != NULL) {
-+ size -= (pos + 1) - (char *)buf;
-+ buf = (pos + 1);
-+ if (idlen <= size && memcmp(buf, build_id + 1, idlen) == 0)
-+ return 1;
-+ }
-+
-+ return 0;
-+}
-+
- /* Slurp the executable portion of the runtime into a malloced buffer
- * and return it. Places the size in bytes of the runtime into
- * 'size_out'. Returns NULL if the runtime cannot be loaded from
-@@ -407,6 +426,12 @@ load_runtime(char *runtime_path, size_t *size_out)
- goto lose;
- }
-
-+ if (!check_runtime_build_id(buf, size)) {
-+ fprintf(stderr, "Failed to locate current build_id in runtime: %s\n",
-+ runtime_path);
-+ goto lose;
-+ }
-+
- fclose(input);
- *size_out = size;
- return buf;
-@@ -453,15 +478,19 @@ prepare_to_save(char *filename, boolean prepend_runtim
- char *runtime_path;
-
- if (prepend_runtime) {
-- runtime_path = os_get_runtime_executable_path();
-+ runtime_path = os_get_runtime_executable_path(0);
-
-- if (runtime_path == NULL) {
-+ if (runtime_path == NULL && saved_runtime_path == NULL) {
- fprintf(stderr, "Unable to get default runtime path.\n");
- return NULL;
- }
-
-- *runtime_bytes = load_runtime(runtime_path, runtime_size);
-- free(runtime_path);
-+ if (runtime_path == NULL)
-+ *runtime_bytes = load_runtime(saved_runtime_path, runtime_size);
-+ else {
-+ *runtime_bytes = load_runtime(runtime_path, runtime_size);
-+ free(runtime_path);
-+ }
-
- if (*runtime_bytes == NULL)
- return 0;
Index: lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_c
===================================================================
RCS file: lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_c
diff -u -N lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_c
--- /dev/null 31 Jul 2010 07:46:02 -0000
+++ lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_c 30 Jul 2010 19:31:03
-0000
@@ -0,0 +1,36 @@
+$OpenBSD$
+
+Fix FP exceptions after src/sys/arch/amd64/amd64/machdep.c 1.110
+
+--- src/runtime/x86-64-bsd-os.c.orig Fri Nov 20 13:30:08 2009
++++ src/runtime/x86-64-bsd-os.c Fri Jul 30 12:25:17 2010
+@@ -8,6 +8,10 @@
+ #include <machine/fpu.h>
+ #endif
+
++#if defined(LISP_FEATURE_OPENBSD)
++#include <machine/fpu.h>
++#endif
++
+ #ifdef LISP_FEATURE_MACH_EXCEPTION_HANDLER
+ #include <mach/mach.h>
+
+@@ -180,5 +184,18 @@ os_restore_fp_control(os_context_t *context)
+ asm ("ldmxcsr %0" : : "m" (temp));
+ /* same for x87 FPU. */
+ asm ("fldcw %0" : : "m" (ex->en_cw));
++}
++#endif
++
++#if defined(LISP_FEATURE_OPENBSD)
++void
++os_restore_fp_control(os_context_t *context)
++{
++ if (context->sc_fpstate != NULL) {
++ u_int32_t mxcsr = context->sc_fpstate->fx_mxcsr & ~0x3F;
++ u_int16_t cw = context->sc_fpstate->fx_fcw;
++ asm ("ldmxcsr %0" : : "m" (mxcsr));
++ asm ("fldcw %0" : : "m" (cw));
++ }
+ }
+ #endif
Index: lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_h
===================================================================
RCS file: lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_h
diff -u -N lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_h
--- /dev/null 31 Jul 2010 07:46:02 -0000
+++ lang/sbcl/patches/patch-src_runtime_x86-64-bsd-os_h 30 Jul 2010 19:31:12
-0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Fix FP exceptions after src/sys/arch/amd64/amd64/machdep.c 1.110
+
+--- src/runtime/x86-64-bsd-os.h.orig Wed Jul 25 14:37:31 2007
++++ src/runtime/x86-64-bsd-os.h Fri Jul 30 12:25:17 2010
+@@ -41,4 +41,9 @@ arch_os_context_mxcsr_addr(os_context_t *context)
+ }
+ #endif
+
++#if defined LISP_FEATURE_OPENBSD
++#define RESTORE_FP_CONTROL_FROM_CONTEXT
++void os_restore_fp_control(os_context_t *context);
++#endif
++
+ #endif /* _X86_64_BSD_OS_H */
Index: lang/sbcl/patches/patch-tests_swap-lispobjs_impure_lisp
===================================================================
RCS file: lang/sbcl/patches/patch-tests_swap-lispobjs_impure_lisp
diff -u -N lang/sbcl/patches/patch-tests_swap-lispobjs_impure_lisp
--- /dev/null 31 Jul 2010 07:46:02 -0000
+++ lang/sbcl/patches/patch-tests_swap-lispobjs_impure_lisp 30 Jul 2010
21:06:46 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- tests/swap-lispobjs.impure.lisp.orig Fri Jul 30 14:06:20 2010
++++ tests/swap-lispobjs.impure.lisp Fri Jul 30 14:06:20 2010
+@@ -32,7 +32,7 @@
+ (run "cc" "-O3"
+ "-I" "../src/runtime/"
+ "swap-lispobjs.c"
+- #+(and (or linux freebsd) (or x86-64 ppc mips)) "-fPIC"
++ #+(and (or linux freebsd openbsd) (or x86-64 ppc mips)) "-fPIC"
+ #+(and x86-64 darwin) "-arch" #+(and x86-64 darwin) "x86_64"
+ #+darwin "-bundle" #-darwin "-shared"
+ "-o" "swap-lispobjs.so")
Index: lang/sbcl/pkg/MESSAGE
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/sbcl/pkg/MESSAGE,v
retrieving revision 1.1.1.1
diff -u -N lang/sbcl/pkg/MESSAGE
--- lang/sbcl/pkg/MESSAGE 14 Apr 2008 12:29:40 -0000 1.1.1.1
+++ /dev/null 31 Jul 2010 14:41:48 -0000
@@ -1,2 +0,0 @@
-To run or dump a copy of the SBCL runtime with an embedded core, /proc
-must be mounted.
Index: lang/sbcl/pkg/PFRAG.amd64
===================================================================
RCS file: lang/sbcl/pkg/PFRAG.amd64
diff -u -N lang/sbcl/pkg/PFRAG.amd64
--- /dev/null 31 Jul 2010 07:46:02 -0000
+++ lang/sbcl/pkg/PFRAG.amd64 13 Jul 2010 05:14:43 -0000
@@ -0,0 +1,2 @@
+...@comment $OpenBSD$
+lib/sbcl/sb-rotate-byte/x86-64-vm.fasl
Index: lang/sbcl/pkg/PFRAG.powerpc
===================================================================
RCS file: lang/sbcl/pkg/PFRAG.powerpc
diff -u -N lang/sbcl/pkg/PFRAG.powerpc
--- /dev/null 31 Jul 2010 07:46:02 -0000
+++ lang/sbcl/pkg/PFRAG.powerpc 31 Jul 2010 13:47:20 -0000
@@ -0,0 +1,2 @@
+...@comment $OpenBSD$
+lib/sbcl/sb-rotate-byte/ppc-vm.fasl
Index: lang/sbcl/pkg/PLIST
===================================================================
RCS file: /home/cvsync/openbsd/ports/lang/sbcl/pkg/PLIST,v
retrieving revision 1.2
diff -u -N lang/sbcl/pkg/PLIST
--- lang/sbcl/pkg/PLIST 17 Nov 2009 10:45:00 -0000 1.2
+++ lang/sbcl/pkg/PLIST 31 Jul 2010 13:47:20 -0000
@@ -1,5 +1,7 @@
@comment $OpenBSD: PLIST,v 1.2 2009/11/17 10:45:00 pirofti Exp $
+%%amd64%%
%%i386%%
+%%powerpc%%
@bin bin/sbcl
@info info/asdf.info
@info info/sbcl.info
@@ -62,6 +64,15 @@
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/mailbox.fasl
+lib/sbcl/sb-concurrency/mailbox.lisp
+lib/sbcl/sb-concurrency/package.fasl
+lib/sbcl/sb-concurrency/package.lisp
+lib/sbcl/sb-concurrency/queue.fasl
+lib/sbcl/sb-concurrency/queue.lisp
+lib/sbcl/sb-concurrency/sb-concurrency.asd
+lib/sbcl/sb-concurrency/sb-concurrency.fasl
lib/sbcl/sb-cover/
lib/sbcl/sb-cover/cover.fasl
lib/sbcl/sb-cover/cover.lisp
@@ -113,6 +124,9 @@
lib/sbcl/sb-posix/sb-posix.asd
lib/sbcl/sb-posix/sb-posix.fasl
lib/sbcl/sb-queue/
+lib/sbcl/sb-queue/package.fasl
+lib/sbcl/sb-queue/package.lisp
+lib/sbcl/sb-queue/sb-queue.asd
lib/sbcl/sb-queue/sb-queue.fasl
lib/sbcl/sb-rotate-byte/
lib/sbcl/sb-rotate-byte/compiler.fasl
@@ -125,6 +139,7 @@
lib/sbcl/sb-rotate-byte/rotate-byte.lisp
lib/sbcl/sb-rotate-byte/sb-rotate-byte.asd
lib/sbcl/sb-rotate-byte/sb-rotate-byte.fasl
+lib/sbcl/sb-rotate-byte/x86-64-vm.lisp
lib/sbcl/sb-rotate-byte/x86-vm.lisp
lib/sbcl/sb-rt/
lib/sbcl/sb-rt/rt.fasl
@@ -171,36 +186,47 @@
share/doc/sbcl/COPYING
share/doc/sbcl/CREDITS
share/doc/sbcl/NEWS
+share/doc/sbcl/asdf.html
share/doc/sbcl/asdf.pdf
share/doc/sbcl/html/
share/doc/sbcl/html/asdf/
share/doc/sbcl/html/asdf/A-more-involved-example.html
share/doc/sbcl/html/asdf/Common-attributes-of-components.html
-share/doc/sbcl/html/asdf/Compilation-error-and-warning-handling.html
share/doc/sbcl/html/asdf/Components.html
share/doc/sbcl/html/asdf/Concept-Index.html
+share/doc/sbcl/html/asdf/Configuring-ASDF.html
+share/doc/sbcl/html/asdf/Controlling-where-ASDF-saves-compiled-files.html
+share/doc/sbcl/html/asdf/Controlling-where-ASDF-searches-for-systems.html
share/doc/sbcl/html/asdf/Creating-new-component-types.html
share/doc/sbcl/html/asdf/Creating-new-operations.html
share/doc/sbcl/html/asdf/Defining-systems-with-defsystem.html
share/doc/sbcl/html/asdf/Error-handling.html
+share/doc/sbcl/html/asdf/FAQ.html
share/doc/sbcl/html/asdf/Function-and-Class-Index.html
share/doc/sbcl/html/asdf/Getting-the-latest-version.html
share/doc/sbcl/html/asdf/Inspiration.html
+share/doc/sbcl/html/asdf/Introduction.html
+share/doc/sbcl/html/asdf/Loading-ASDF.html
+share/doc/sbcl/html/asdf/Miscellaneous-additional-functionality.html
share/doc/sbcl/html/asdf/Operations.html
+share/doc/sbcl/html/asdf/Other-code-in-_002easd-files.html
share/doc/sbcl/html/asdf/Pre_002ddefined-subclasses-of-component.html
-share/doc/sbcl/html/asdf/Predefined-operations-of-asdf.html
+share/doc/sbcl/html/asdf/Predefined-operations-of-ASDF.html
share/doc/sbcl/html/asdf/TODO-list.html
share/doc/sbcl/html/asdf/The-defsystem-form.html
share/doc/sbcl/html/asdf/The-defsystem-grammar.html
-share/doc/sbcl/html/asdf/The-object-model-of-asdf.html
-share/doc/sbcl/html/asdf/Using-asdf-to-load-systems.html
+share/doc/sbcl/html/asdf/The-object-model-of-ASDF.html
+share/doc/sbcl/html/asdf/Using-ASDF.html
share/doc/sbcl/html/asdf/Variable-Index.html
share/doc/sbcl/html/asdf/index.html
-share/doc/sbcl/html/asdf/missing-bits-in-implementation.html
+share/doc/sbcl/html/asdf/operate.html
+share/doc/sbcl/html/asdf/report_002dbugs.html
+share/doc/sbcl/html/asdf/test_002dop.html
share/doc/sbcl/html/sbcl/
share/doc/sbcl/html/sbcl/ANSI-Conformance.html
share/doc/sbcl/html/sbcl/Accessing-Foreign-Values.html
share/doc/sbcl/html/sbcl/Additional-Documentation-Files.html
+share/doc/sbcl/html/sbcl/Atomic-Operations.html
share/doc/sbcl/html/sbcl/Beyond-the-ANSI-Standard.html
share/doc/sbcl/html/sbcl/Binary-stream-methods.html
share/doc/sbcl/html/sbcl/Bivalent-Streams.html
@@ -267,14 +293,15 @@
share/doc/sbcl/html/sbcl/Editor-Integration.html
share/doc/sbcl/html/sbcl/Efficiency-Hacks.html
share/doc/sbcl/html/sbcl/Efficiency.html
+share/doc/sbcl/html/sbcl/Enabling-and-Disabling-the-Debugger.html
share/doc/sbcl/html/sbcl/End-of-File.html
share/doc/sbcl/html/sbcl/Entry-Point-Details.html
share/doc/sbcl/html/sbcl/Errors-During-Macroexpansion.html
share/doc/sbcl/html/sbcl/Exit-on-Errors.html
share/doc/sbcl/html/sbcl/Exiting-Commands.html
-share/doc/sbcl/html/sbcl/Extensible-Streams.html
share/doc/sbcl/html/sbcl/Extensions.html
share/doc/sbcl/html/sbcl/External-Foreign-Variables.html
+share/doc/sbcl/html/sbcl/External-Formats.html
share/doc/sbcl/html/sbcl/FASL-Format.html
share/doc/sbcl/html/sbcl/File_002ddescriptors.html
share/doc/sbcl/html/sbcl/Filenames.html
@@ -296,6 +323,7 @@
share/doc/sbcl/html/sbcl/Function-common_002dlisp_003amake_002dhash_002dtable.html
share/doc/sbcl/html/sbcl/Function-common_002dlisp_003arequire.html
share/doc/sbcl/html/sbcl/Function-sb_002dalien_003aload_002dshared_002dobject.html
+share/doc/sbcl/html/sbcl/Function-sb_002dalien_003aunload_002dshared_002dobject.html
share/doc/sbcl/html/sbcl/Function-sb_002dbsd_002dsockets_003aget_002dhost_002dby_002daddress.html
share/doc/sbcl/html/sbcl/Function-sb_002dbsd_002dsockets_003aget_002dhost_002dby_002dname.html
share/doc/sbcl/html/sbcl/Function-sb_002dbsd_002dsockets_003aget_002dprotocol_002dby_002dname.html
@@ -310,6 +338,24 @@
share/doc/sbcl/html/sbcl/Function-sb_002dbsd_002dsockets_003asockopt_002dpass_002dcredentials.html
share/doc/sbcl/html/sbcl/Function-sb_002dbsd_002dsockets_003asockopt_002dreuse_002daddress.html
share/doc/sbcl/html/sbcl/Function-sb_002dbsd_002dsockets_003asockopt_002dtcp_002dnodelay.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003adequeue.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003aenqueue.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003alist_002dmailbox_002dmessages.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003alist_002dqueue_002dcontents.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003amailbox_002dcount.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003amailbox_002dempty_002dp.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003amailbox_002dname.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003amailboxp.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003amake_002dmailbox.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003amake_002dqueue.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003aqueue_002dcount.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003aqueue_002dempty_002dp.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003aqueue_002dname.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003aqueuep.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003areceive_002dmessage.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003areceive_002dmessage_002dno_002dhang.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003areceive_002dpending_002dmessages.html
+share/doc/sbcl/html/sbcl/Function-sb_002dconcurrency_003asend_002dmessage.html
share/doc/sbcl/html/sbcl/Function-sb_002dcover_003aclear_002dcoverage.html
share/doc/sbcl/html/sbcl/Function-sb_002dcover_003areport.html
share/doc/sbcl/html/sbcl/Function-sb_002dcover_003areset_002dcoverage.html
@@ -319,8 +365,20 @@
share/doc/sbcl/html/sbcl/Function-sb_002dcover_003asave_002dcoverage_002din_002dfile.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003aadd_002dimplementation_002dpackage.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003aarray_002dstorage_002dvector.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003abytes_002dconsed_002dbetween_002dgcs.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003acancel_002dfinalization.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003adescribe_002dcompiler_002dpolicy.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003adisable_002ddebugger.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003aenable_002ddebugger.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003afinalize.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003agc.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003ageneration_002daverage_002dage.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003ageneration_002dbytes_002dallocated.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003ageneration_002dbytes_002dconsed_002dbetween_002dgcs.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003ageneration_002dminimum_002dage_002dbefore_002dgc.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003ageneration_002dnumber_002dof_002dgcs.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003ageneration_002dnumber_002dof_002dgcs_002dbefore_002dpromotion.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003aget_002dbytes_002dconsed.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003ahash_002dtable_002dsynchronized_002dp.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003ahash_002dtable_002dweakness.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003alist_002dall_002dtimers.html
@@ -348,6 +406,7 @@
share/doc/sbcl/html/sbcl/Function-sb_002dext_003apurify.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003aquit.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003aremove_002dimplementation_002dpackage.html
+share/doc/sbcl/html/sbcl/Function-sb_002dext_003arestrict_002dcompiler_002dpolicy.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003arun_002dprogram.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003asave_002dlisp_002dand_002ddie.html
share/doc/sbcl/html/sbcl/Function-sb_002dext_003aschedule_002dtimer.html
@@ -367,14 +426,6 @@
share/doc/sbcl/html/sbcl/Function-sb_002dposix_003asyslog.html
share/doc/sbcl/html/sbcl/Function-sb_002dprofile_003areport.html
share/doc/sbcl/html/sbcl/Function-sb_002dprofile_003areset.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003adequeue.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003aenqueue.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003alist_002dqueue_002dcontents.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003amake_002dqueue.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003aqueue_002dcount.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003aqueue_002dempty_002dp.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003aqueue_002dname.html
-share/doc/sbcl/html/sbcl/Function-sb_002dqueue_003aqueuep.html
share/doc/sbcl/html/sbcl/Function-sb_002drotate_002dbyte_003arotate_002dbyte.html
share/doc/sbcl/html/sbcl/Function-sb_002dsprof_003aprofile_002dcall_002dcounts.html
share/doc/sbcl/html/sbcl/Function-sb_002dsprof_003areport.html
@@ -405,6 +456,7 @@
share/doc/sbcl/html/sbcl/Function-sb_002dthread_003athread_002derror_002dthread.html
share/doc/sbcl/html/sbcl/Function-sb_002dthread_003athread_002dname.html
share/doc/sbcl/html/sbcl/Function-sb_002dthread_003athread_002dyield.html
+share/doc/sbcl/html/sbcl/Function-sb_002dthread_003atry_002dsemaphore.html
share/doc/sbcl/html/sbcl/Function-sb_002dthread_003await_002don_002dsemaphore.html
share/doc/sbcl/html/sbcl/Function-sb_002dthread_003awaitqueue_002dname.html
share/doc/sbcl/html/sbcl/Functions-with-idiosyncratic-bindings.html
@@ -484,6 +536,10 @@
share/doc/sbcl/html/sbcl/Macro-common_002dlisp_003astep.html
share/doc/sbcl/html/sbcl/Macro-common_002dlisp_003atrace.html
share/doc/sbcl/html/sbcl/Macro-common_002dlisp_003auntrace.html
+share/doc/sbcl/html/sbcl/Macro-common_002dlisp_003awith_002dcompilation_002dunit.html
+share/doc/sbcl/html/sbcl/Macro-sb_002dext_003aatomic_002ddecf.html
+share/doc/sbcl/html/sbcl/Macro-sb_002dext_003aatomic_002dincf.html
+share/doc/sbcl/html/sbcl/Macro-sb_002dext_003acompare_002dand_002dswap.html
share/doc/sbcl/html/sbcl/Macro-sb_002dext_003adefglobal.html
share/doc/sbcl/html/sbcl/Macro-sb_002dext_003adefine_002dhash_002dtable_002dtest.html
share/doc/sbcl/html/sbcl/Macro-sb_002dext_003awith_002dlocked_002dhash_002dtable.html
@@ -496,7 +552,7 @@
share/doc/sbcl/html/sbcl/Macro-sb_002dthread_003awith_002dmutex.html
share/doc/sbcl/html/sbcl/Macro-sb_002dthread_003awith_002drecursive_002dlock.html
share/doc/sbcl/html/sbcl/Metaobject-Protocol.html
-share/doc/sbcl/html/sbcl/Method-sb_002dbsd_002dsockets_003asocket_002dmake_002dstream-_0028_0028socket-socket_0029-_0026key-input-output-_0028element_002dtype-_0027character_0029-_0028buffering-full_0029-_0028external_002dformat-default_0029-timeout_0029.html
+share/doc/sbcl/html/sbcl/Method-sb_002dbsd_002dsockets_003asocket_002dmake_002dstream-_0028_0028socket-socket_0029-_0026key-input-output-_0028element_002dtype-_0027character_0029-_0028buffering-full_0029-_0028external_002dformat-default_0029-timeout-auto_002dclose_0029.html
share/doc/sbcl/html/sbcl/Methods-common-to-all-streams.html
share/doc/sbcl/html/sbcl/Miscellaneous-Efficiency-Issues.html
share/doc/sbcl/html/sbcl/Miscellaneous-Extensions.html
@@ -534,6 +590,7 @@
share/doc/sbcl/html/sbcl/Runtime-Options.html
share/doc/sbcl/html/sbcl/SBCL-Homepage.html
share/doc/sbcl/html/sbcl/Saving-a-Core-Image.html
+share/doc/sbcl/html/sbcl/Section-sb_002dconcurrency_003aqueue.html
share/doc/sbcl/html/sbcl/Semaphores.html
share/doc/sbcl/html/sbcl/Sessions_002fDebugging.html
share/doc/sbcl/html/sbcl/Shebang-Scripts.html
@@ -554,8 +611,10 @@
share/doc/sbcl/html/sbcl/Statistical-Profiler.html
share/doc/sbcl/html/sbcl/Step_002dBy_002dStep-Example-of-the-Foreign-Function-Interface.html
share/doc/sbcl/html/sbcl/Stopping-SBCL.html
+share/doc/sbcl/html/sbcl/Streams.html
+share/doc/sbcl/html/sbcl/Structure-sb_002dconcurrency_003amailbox.html
+share/doc/sbcl/html/sbcl/Structure-sb_002dconcurrency_003aqueue.html
share/doc/sbcl/html/sbcl/Structure-sb_002dext_003atimer.html
-share/doc/sbcl/html/sbcl/Structure-sb_002dqueue_003aqueue.html
share/doc/sbcl/html/sbcl/Structure-sb_002dthread_003amutex.html
share/doc/sbcl/html/sbcl/Structure-sb_002dthread_003asemaphore.html
share/doc/sbcl/html/sbcl/Structure-sb_002dthread_003athread.html
@@ -595,6 +654,7 @@
share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002adebug_002dprint_002dvariable_002dalist_002a.html
share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002aed_002dfunctions_002a.html
share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002aexit_002dhooks_002a.html
+share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002agc_002drun_002dtime_002a.html
share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002ainit_002dhooks_002a.html
share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002ainvoke_002ddebugger_002dhook_002a.html
share/doc/sbcl/html/sbcl/Variable-sb_002dext_003a_002amodule_002dprovider_002dfunctions_002a.html
@@ -609,10 +669,12 @@
share/doc/sbcl/html/sbcl/define_002dalien_002droutine-Example.html
share/doc/sbcl/html/sbcl/index.html
share/doc/sbcl/html/sbcl/sb_002daclrepl.html
+share/doc/sbcl/html/sbcl/sb_002dconcurrency.html
share/doc/sbcl/html/sbcl/sb_002dcover.html
share/doc/sbcl/html/sbcl/sb_002dgrovel.html
share/doc/sbcl/html/sbcl/sb_002dmd5.html
share/doc/sbcl/html/sbcl/sb_002dposix.html
share/doc/sbcl/html/sbcl/sb_002dqueue.html
share/doc/sbcl/html/sbcl/sb_002drotate_002dbyte.html
+share/doc/sbcl/sbcl.html
share/doc/sbcl/sbcl.pdf