summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Kennedy <mkennedy@gentoo.org>2004-07-10 19:56:21 +0000
committerMatthew Kennedy <mkennedy@gentoo.org>2004-07-10 19:56:21 +0000
commite8b31146c8747c700e2c2cfe8a5c0f651c3ffd22 (patch)
tree59a95df0e99bc14962d93245f3bc3f763280fb0b /dev-lisp/sbcl
parentversion bump. please test with >sys-devel/gcc-3.3.2 - see bug #43449 for deta... (diff)
downloadhistorical-e8b31146c8747c700e2c2cfe8a5c0f651c3ffd22.tar.gz
historical-e8b31146c8747c700e2c2cfe8a5c0f651c3ffd22.tar.bz2
historical-e8b31146c8747c700e2c2cfe8a5c0f651c3ffd22.zip
*** empty log message ***
Diffstat (limited to 'dev-lisp/sbcl')
-rw-r--r--dev-lisp/sbcl/ChangeLog12
-rw-r--r--dev-lisp/sbcl/Manifest80
-rw-r--r--dev-lisp/sbcl/files/0.8.12/README.Gentoo25
-rw-r--r--dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp19
-rw-r--r--dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp.no-threads19
-rw-r--r--dev-lisp/sbcl/files/0.8.12/install-clc.lisp53
-rw-r--r--dev-lisp/sbcl/files/0.8.12/sbcl-gentoo.patch85
-rw-r--r--dev-lisp/sbcl/files/0.8.12/sbcl.sh80
-rw-r--r--dev-lisp/sbcl/files/0.8.12/sbclrc18
-rw-r--r--dev-lisp/sbcl/files/digest-sbcl-0.8.126
-rw-r--r--dev-lisp/sbcl/sbcl-0.8.11.ebuild4
-rw-r--r--dev-lisp/sbcl/sbcl-0.8.12.ebuild130
12 files changed, 493 insertions, 38 deletions
diff --git a/dev-lisp/sbcl/ChangeLog b/dev-lisp/sbcl/ChangeLog
index d35f1210604d..9e9a74fc2993 100644
--- a/dev-lisp/sbcl/ChangeLog
+++ b/dev-lisp/sbcl/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for dev-lisp/sbcl
# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.36 2004/06/25 00:00:49 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.37 2004/07/10 19:55:14 mkennedy Exp $
+
+*sbcl-0.8.12 (10 Jul 2004)
+
+ 10 Jul 2004; <mkennedy@gentoo.org> +files/0.8.12/README.Gentoo,
+ +files/0.8.12/customize-target-features.lisp,
+ +files/0.8.12/customize-target-features.lisp.no-threads,
+ +files/0.8.12/install-clc.lisp, +files/0.8.12/sbcl-gentoo.patch,
+ +files/0.8.12/sbcl.sh, +files/0.8.12/sbclrc, sbcl-0.8.11.ebuild,
+ +sbcl-0.8.12.ebuild:
+ New upstream version.
*sbcl-0.8.11 (14 Jun 2004)
diff --git a/dev-lisp/sbcl/Manifest b/dev-lisp/sbcl/Manifest
index fd25be9d3938..d894948029ab 100644
--- a/dev-lisp/sbcl/Manifest
+++ b/dev-lisp/sbcl/Manifest
@@ -1,58 +1,68 @@
-MD5 88838d899eb117390ec723d3a00c5805 sbcl-0.8.9.ebuild 3569
-MD5 123e7f6bf44015b795319c71129cb2b3 sbcl-0.8.11.ebuild 3869
+MD5 123e7f6bf44015b795319c71129cb2b3 sbcl-0.8.12.ebuild 3869
+MD5 403dd603e85310f106ca6e8b6680d47a sbcl-0.8.11.ebuild 3868
MD5 09ca7de40173206338891e2a9723c6f7 sbcl-0.8.7-r1.ebuild 4236
+MD5 88838d899eb117390ec723d3a00c5805 sbcl-0.8.9.ebuild 3569
MD5 ac7500d912d63c8a62b0116b2948b995 sbcl-0.8.8.ebuild 3489
MD5 4cf68e2406e345e39267d1b8060d7a7d sbcl-0.8.10.ebuild 3717
+MD5 35329bbe93e1b1d0ac162f8ee2ea9914 sbcl-0.8.7.ebuild 4076
MD5 3b6f67b7ce82cadd5b615bbd7662afb6 ChangeLog 8481
MD5 c93195a12a4bb997ca623db927bb6676 metadata.xml 997
-MD5 35329bbe93e1b1d0ac162f8ee2ea9914 sbcl-0.8.7.ebuild 4076
MD5 6e40a080b566cc78dfe522ae34eec0a7 files/install-clc.lisp 1338
-MD5 3e968969b9da3f3637feb09076b819a2 files/sbcl.rc 640
-MD5 071f286575536d58bd93efe2f77cd24c files/sbcl.sh 2168
+MD5 5bb7b04d0735d7a7bd968381fd1ea095 files/digest-sbcl-0.8.9 467
+MD5 d4bfc144f303942ff574404fbd2e078d files/digest-sbcl-0.8.7 528
+MD5 58c5c983d699b9861baa3716b4bcc733 files/digest-sbcl-0.8.11 468
MD5 47993934f65e81900eff345eec6fabe5 files/gc.lisp-linux-2.6.patch 664
MD5 d4bfc144f303942ff574404fbd2e078d files/digest-sbcl-0.8.7-r1 528
-MD5 d4bfc144f303942ff574404fbd2e078d files/digest-sbcl-0.8.7 528
-MD5 8f65effa5ebc5a69e7e80277c9fee2ad files/digest-sbcl-0.8.8 467
-MD5 5bb7b04d0735d7a7bd968381fd1ea095 files/digest-sbcl-0.8.9 467
+MD5 071f286575536d58bd93efe2f77cd24c files/sbcl.sh 2168
MD5 7168d7b3e9acb5ffd3cd4f4383416c97 files/digest-sbcl-0.8.10 468
-MD5 58c5c983d699b9861baa3716b4bcc733 files/digest-sbcl-0.8.11 468
-MD5 24a9e0ee9cf55fc23d01535520f03edc files/0.8.7/install-clc.lisp-gentoo.patch 675
+MD5 8f65effa5ebc5a69e7e80277c9fee2ad files/digest-sbcl-0.8.8 467
+MD5 69afd15544b984478ca6de7cac998145 files/digest-sbcl-0.8.12 468
+MD5 3e968969b9da3f3637feb09076b819a2 files/sbcl.rc 640
+MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.10/install-clc.lisp 1463
+MD5 35e2f72a0d987cbc1e659368ad33827c files/0.8.10/README.Gentoo 696
+MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.10/customize-target-features.lisp.no-threads 577
+MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.10/customize-target-features.lisp 574
+MD5 071f286575536d58bd93efe2f77cd24c files/0.8.10/sbcl.sh 2168
+MD5 653f804ebcd167d167f8163756b7da17 files/0.8.10/sbclrc 639
+MD5 ca5b0679930a68145fa01867307cda5f files/0.8.10/sbcl-asdf-install.1 4382
+MD5 89a7c57ad4ebff645a7f4d920b587c56 files/0.8.10/sbcl-gentoo.patch 2934
+MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.9/install-clc.lisp 1463
+MD5 35e2f72a0d987cbc1e659368ad33827c files/0.8.9/README.Gentoo 696
+MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.9/customize-target-features.lisp.no-threads 577
+MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.9/customize-target-features.lisp 574
+MD5 071f286575536d58bd93efe2f77cd24c files/0.8.9/sbcl.sh 2168
+MD5 aa140a501b7d2e396d7ff0caf8200a19 files/0.8.9/GNUmakefile-SBCL_HOME-gentoo.patch 511
+MD5 653f804ebcd167d167f8163756b7da17 files/0.8.9/sbclrc 639
+MD5 f74f3ff0acfa78effde7428f1e554b13 files/0.8.9/sbcl-asdf-install.1 4382
+MD5 0d6cbcc75da545b9a06db6c7982c4feb files/0.8.9/posix-tests.lisp-sandbox-gentoo.patch 714
+MD5 6bd69b507b65c1673290970c034a307c files/0.8.7/README.Gentoo 695
MD5 b8407a8b953cc86ccab6b4c9b3148024 files/0.8.7/customize-target-features.lisp.no-threads 557
MD5 62313101e0dfbc6a70bd0a0f9b6c3304 files/0.8.7/customize-target-features.lisp 555
-MD5 6bd69b507b65c1673290970c034a307c files/0.8.7/README.Gentoo 695
+MD5 24a9e0ee9cf55fc23d01535520f03edc files/0.8.7/install-clc.lisp-gentoo.patch 675
MD5 f03239faafd7bab9fb5f858b3cdfdf3b files/0.8.7/posix-tests.lisp-sandbox-gentoo.patch 1860
MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.8/install-clc.lisp 1463
-MD5 3e968969b9da3f3637feb09076b819a2 files/0.8.8/sbcl.rc 640
-MD5 630e6f165f6d0651342150929af8e506 files/0.8.8/sbcl.sh 2169
-MD5 f908831e67d70633c015f9900cf14668 files/0.8.8/sbcl-asdf-install.1 4382
+MD5 35e2f72a0d987cbc1e659368ad33827c files/0.8.8/README.Gentoo 696
MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.8/customize-target-features.lisp.no-threads 577
MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.8/customize-target-features.lisp 574
-MD5 35e2f72a0d987cbc1e659368ad33827c files/0.8.8/README.Gentoo 696
+MD5 630e6f165f6d0651342150929af8e506 files/0.8.8/sbcl.sh 2169
+MD5 3e968969b9da3f3637feb09076b819a2 files/0.8.8/sbcl.rc 640
MD5 653f804ebcd167d167f8163756b7da17 files/0.8.8/sbclrc 639
+MD5 f908831e67d70633c015f9900cf14668 files/0.8.8/sbcl-asdf-install.1 4382
MD5 f03239faafd7bab9fb5f858b3cdfdf3b files/0.8.8/posix-tests.lisp-sandbox-gentoo.patch 1860
MD5 caa3d8db6f86703586d56a0546cf7e1a files/0.8.8/sbcl-gentoo.patch 1341
-MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.9/install-clc.lisp 1463
-MD5 071f286575536d58bd93efe2f77cd24c files/0.8.9/sbcl.sh 2168
-MD5 aa140a501b7d2e396d7ff0caf8200a19 files/0.8.9/GNUmakefile-SBCL_HOME-gentoo.patch 511
-MD5 f74f3ff0acfa78effde7428f1e554b13 files/0.8.9/sbcl-asdf-install.1 4382
-MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.9/customize-target-features.lisp.no-threads 577
-MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.9/customize-target-features.lisp 574
-MD5 35e2f72a0d987cbc1e659368ad33827c files/0.8.9/README.Gentoo 696
-MD5 653f804ebcd167d167f8163756b7da17 files/0.8.9/sbclrc 639
-MD5 0d6cbcc75da545b9a06db6c7982c4feb files/0.8.9/posix-tests.lisp-sandbox-gentoo.patch 714
-MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.10/install-clc.lisp 1463
-MD5 071f286575536d58bd93efe2f77cd24c files/0.8.10/sbcl.sh 2168
-MD5 ca5b0679930a68145fa01867307cda5f files/0.8.10/sbcl-asdf-install.1 4382
-MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.10/customize-target-features.lisp.no-threads 577
-MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.10/customize-target-features.lisp 574
-MD5 35e2f72a0d987cbc1e659368ad33827c files/0.8.10/README.Gentoo 696
-MD5 653f804ebcd167d167f8163756b7da17 files/0.8.10/sbclrc 639
-MD5 89a7c57ad4ebff645a7f4d920b587c56 files/0.8.10/sbcl-gentoo.patch 2934
+MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.12/install-clc.lisp 1463
+MD5 57811d1f63f778c15fbd1a640e1df14f files/0.8.12/README.Gentoo 941
+MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.12/customize-target-features.lisp.no-threads 577
+MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.12/customize-target-features.lisp 574
+MD5 071f286575536d58bd93efe2f77cd24c files/0.8.12/sbcl.sh 2168
+MD5 653f804ebcd167d167f8163756b7da17 files/0.8.12/sbclrc 639
+MD5 1fdf7a30ed940c16b3506b389d6ab68b files/0.8.12/sbcl-asdf-install.1 4382
+MD5 20dbe881efddafc4628530cbafe460f6 files/0.8.12/sbcl-gentoo.patch 2596
MD5 ab7a8d4c4cdc70154ab5aaec9cdacb6d files/0.8.11/install-clc.lisp 1463
-MD5 071f286575536d58bd93efe2f77cd24c files/0.8.11/sbcl.sh 2168
-MD5 1fdf7a30ed940c16b3506b389d6ab68b files/0.8.11/sbcl-asdf-install.1 4382
+MD5 57811d1f63f778c15fbd1a640e1df14f files/0.8.11/README.Gentoo 941
MD5 a0edd1aecd1416792590693e5a6d2cb3 files/0.8.11/customize-target-features.lisp.no-threads 577
MD5 6f05f494b80fa25732a658deec4133c8 files/0.8.11/customize-target-features.lisp 574
-MD5 57811d1f63f778c15fbd1a640e1df14f files/0.8.11/README.Gentoo 941
+MD5 071f286575536d58bd93efe2f77cd24c files/0.8.11/sbcl.sh 2168
MD5 653f804ebcd167d167f8163756b7da17 files/0.8.11/sbclrc 639
+MD5 1fdf7a30ed940c16b3506b389d6ab68b files/0.8.11/sbcl-asdf-install.1 4382
MD5 37fe3ea27d78f4addbf0bbc74522cf4d files/0.8.11/sbcl-gentoo.patch 2596
diff --git a/dev-lisp/sbcl/files/0.8.12/README.Gentoo b/dev-lisp/sbcl/files/0.8.12/README.Gentoo
new file mode 100644
index 000000000000..5e9693103d32
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/README.Gentoo
@@ -0,0 +1,25 @@
+-*- outline -*- $Id: README.Gentoo,v 1.1 2004/07/10 19:55:14 mkennedy Exp $
+
+Gentoo GNU/Linux specific notes for SBCL
+----------------------------------------
+
+This is the README.Gentoo file from /usr/share/doc/@PF@/
+directory.
+
+ * The Gentoo port uses patches from the Debian project's SBCL port.
+
+ * An SBCL with support for multi-threading on GNU/Linux for x86 is
+ available with 'USE="threads" emerge dev-lisp/sbcl'
+
+ * asdf-install is installed as sbcl-asdf-install (the man-page is
+ similarly named).
+
+ * Support for the Common Lisp Controller is available.
+
+ * If "nosource" is not in your USE flags, then SBCL's source will
+ also be installed (in /usr/lib/sbcl/src). This is handy with
+ ILISP or SLIME's `edit-definition' functions.
+
+If you encounter any problems or have suggestions, use
+http://bugs.gentoo.org. Please don't bother the upstream authors
+unless you are absolutely certain it is not Gentoo-related.
diff --git a/dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp b/dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp
new file mode 100644
index 000000000000..7663f4802619
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp
@@ -0,0 +1,19 @@
+;;;; -*- Lisp -*-
+
+;;;; This is the features customization lambda form we will use if the
+;;;; user has "threads" in USE *and* they are building for the x86
+;;;; architecture.
+
+;;;; :sb-futex is dependent on the presence of a Linux 2.6.x kernel.
+;;;; For users of Linux 2.4.x kernels, this is still okay to enable,
+;;;; as SBCL will fall back if the futex system-call is not present.
+
+(lambda (list)
+ (flet ((enable (x)
+ (pushnew x list))
+ (disable (x)
+ (setf list (remove x list))))
+ (enable :sb-thread)
+ (enable :sb-futex)
+ (disable :sb-test))
+ list)
diff --git a/dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp.no-threads b/dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp.no-threads
new file mode 100644
index 000000000000..100d84059509
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/customize-target-features.lisp.no-threads
@@ -0,0 +1,19 @@
+;;;; -*- Lisp -*-
+
+;;;; This is the features customization lambda form we will use if the
+;;;; user has "threads" in USE *and* they are building for the x86
+;;;; architecture.
+
+;;;; :sb-futex is dependent on the presence of a Linux 2.6.x kernel.
+;;;; For users of Linux 2.4.x kernels, this is still okay to enable,
+;;;; as SBCL will fall back if the futex system-call is not present.
+
+(lambda (list)
+ (flet ((enable (x)
+ (pushnew x list))
+ (disable (x)
+ (setf list (remove x list))))
+ (disable :sb-thread)
+ (disable :sb-futex)
+ (disable :sb-test))
+ list)
diff --git a/dev-lisp/sbcl/files/0.8.12/install-clc.lisp b/dev-lisp/sbcl/files/0.8.12/install-clc.lisp
new file mode 100644
index 000000000000..2f9a28fcab12
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/install-clc.lisp
@@ -0,0 +1,53 @@
+;;; -*- Mode: LISP; Package: CL-USER -*-
+;;;
+;;; Copyright (C) Peter Van Eynde 2001 and Kevin Rosenberg 2002-2003
+;;;
+;;; License: LGPL v2
+;;;
+;;; Some modifications for Gentoo, Matthew Kennedy <mkennedy@gentoo.org>
+;;;
+
+(in-package "COMMON-LISP-USER")
+
+(unless (ignore-errors
+ (load "/usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp"))
+ (sb-unix:unix-exit 1))
+
+(unless (ignore-errors
+ (common-lisp-controller:init-common-lisp-controller
+ "/usr/lib/common-lisp/sbcl/"
+ :version 3)
+ t)
+ (format t "~%Error during init of common-lisp-controller~%")
+ (sb-unix:unix-exit 1))
+
+(in-package :common-lisp-controller)
+
+(defun send-clc-command (command package)
+ (let ((process
+ (sb-ext:run-program "/usr/bin/clc-send-command"
+ (list
+ (ecase command
+ (:recompile "recompile")
+ (:remove "remove"))
+ (format nil "~A" package)
+ "sbcl"
+ "--quiet")
+ :wait t)))
+ (if (= (sb-ext:process-exit-code process) 0)
+ (values)
+ (error "An error happened during ~A of ~A for ~A~%Please see /usr/share/doc/common-lisp-controller/REPORTING-BUGS.gz"
+ (ecase command
+ (:recompile "recompilation")
+ (:remove "removal"))
+ package
+ "sbcl"))))
+
+(in-package :common-lisp-user)
+
+(ignore-errors
+ (format t "~%Saving to sbcl-new.core...")
+ (sb-ext:gc :full t)
+;(setf ext:*batch-mode* nil)
+ (sb-ext:save-lisp-and-die "sbcl-new.core"
+ :purify t))
diff --git a/dev-lisp/sbcl/files/0.8.12/sbcl-gentoo.patch b/dev-lisp/sbcl/files/0.8.12/sbcl-gentoo.patch
new file mode 100644
index 000000000000..139970e61c2c
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/sbcl-gentoo.patch
@@ -0,0 +1,85 @@
+diff -ru sbcl-0.8.12.orig/contrib/sb-posix/posix-tests.lisp sbcl-0.8.12/contrib/sb-posix/posix-tests.lisp
+--- sbcl-0.8.12.orig/contrib/sb-posix/posix-tests.lisp 2004-03-15 09:24:53.000000000 -0600
++++ sbcl-0.8.12/contrib/sb-posix/posix-tests.lisp 2004-04-28 14:47:50.179460512 -0500
+@@ -96,7 +96,7 @@
+ (sb-posix:syscall-errno c)))
+ #.sb-posix::eexist)
+
+-(deftest mkdir.error.2
++#+nil (deftest mkdir.error.2
+ (handler-case
+ (sb-posix:mkdir "/" 0)
+ (sb-posix:syscall-error (c)
+@@ -149,7 +149,7 @@
+ (sb-posix:syscall-errno c)))
+ #.sb-posix::enotdir)
+
+-(deftest rmdir.error.3
++#+nil (deftest rmdir.error.3
+ (handler-case
+ (sb-posix:rmdir "/")
+ (sb-posix:syscall-error (c)
+diff -ru sbcl-0.8.12.orig/src/runtime/GNUmakefile sbcl-0.8.12/src/runtime/GNUmakefile
+--- sbcl-0.8.12.orig/src/runtime/GNUmakefile 2004-04-10 08:37:23.000000000 -0500
++++ sbcl-0.8.12/src/runtime/GNUmakefile 2004-04-28 14:46:29.556717032 -0500
+@@ -33,6 +33,7 @@
+ # symlink to Config-foo.
+ include Config
+
++CFLAGS += -DSBCL_HOME='"/usr/lib/sbcl"'
+
+ C_SRCS = alloc.c backtrace.c breakpoint.c coreparse.c \
+ dynbind.c gc-common.c globals.c interr.c interrupt.c \
+diff -ru sbcl-0.8.12.orig/src/runtime/thread.c sbcl-0.8.12/src/runtime/thread.c
+--- sbcl-0.8.12.orig/src/runtime/thread.c 2004-04-19 14:40:48.000000000 -0500
++++ sbcl-0.8.12/src/runtime/thread.c 2004-04-28 17:03:38.072792448 -0500
+@@ -215,24 +215,6 @@
+ } else lose("can't create initial thread");
+ }
+
+-#ifdef LISP_FEATURE_SB_THREAD
+-pid_t create_thread(lispobj initial_function) {
+- struct thread *th=create_thread_struct(initial_function);
+- pid_t kid_pid=clone(new_thread_trampoline,
+- (((void*)th->control_stack_start)+
+- THREAD_CONTROL_STACK_SIZE-4),
+- CLONE_FILES|SIG_THREAD_EXIT|CLONE_VM,th);
+-
+- if(th && kid_pid>0) {
+- link_thread(th,kid_pid);
+- return th->pid;
+- } else {
+- destroy_thread(th);
+- return 0;
+- }
+-}
+-#endif
+-
+ void destroy_thread (struct thread *th)
+ {
+ /* precondition: the unix task has already been killed and exited.
+@@ -258,6 +240,23 @@
+ 32*SIGSTKSZ);
+ }
+
++#ifdef LISP_FEATURE_SB_THREAD
++pid_t create_thread(lispobj initial_function) {
++ struct thread *th=create_thread_struct(initial_function);
++ pid_t kid_pid=clone(new_thread_trampoline,
++ (((void*)th->control_stack_start)+
++ THREAD_CONTROL_STACK_SIZE-4),
++ CLONE_FILES|SIG_THREAD_EXIT|CLONE_VM,th);
++
++ if(th && kid_pid>0) {
++ link_thread(th,kid_pid);
++ return th->pid;
++ } else {
++ destroy_thread(th);
++ return 0;
++ }
++}
++#endif
+
+ struct thread *find_thread_by_pid(pid_t pid)
+ {
+
diff --git a/dev-lisp/sbcl/files/0.8.12/sbcl.sh b/dev-lisp/sbcl/files/0.8.12/sbcl.sh
new file mode 100644
index 000000000000..d0ebaf86fa5d
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/sbcl.sh
@@ -0,0 +1,80 @@
+#!/bin/sh
+
+if [ ! -f /usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp ] ; then
+ cat <<EOF
+$0: cannot find the common-lisp-controller source.
+EOF
+ exit 0
+fi
+
+build_error()
+{
+ echo "Build failure $1"
+ exit 1
+}
+
+case $1 in
+ rebuild)
+ echo $0 rebuilding...
+ shift
+ echo rebuilding $1
+ sbcl --noinform --sysinit /etc/sbclrc --userinit /dev/null \
+ --disable-debugger \
+ --eval \
+"(handler-case
+ (progn
+ (c-l-c:compile-library (quote $1))
+ (sb-unix:unix-exit 0))
+ (error (e)
+ (ignore-errors (format t \"~&Build error: ~A~%\" e))
+ (finish-output)
+ (sb-unix:unix-exit 1)))" || build_error
+ ;;
+ remove)
+ echo $0 removing packages...
+ shift
+ while [ ! -z "$1" ] ; do
+ rm -rf "/usr/lib/common-lisp/sbcl/$1"
+ shift
+ done
+ ;;
+ install-defsystem | install-clc)
+ echo $0 loading and dumping clc.
+ ( cd /usr/lib/sbcl
+ sbcl --core /usr/lib/sbcl/sbcl-dist.core \
+ --noinform --sysinit /etc/sbclrc --userinit /dev/null \
+ --load "/usr/lib/sbcl/install-clc.lisp" 2> /dev/null
+ mv sbcl-new.core sbcl.core || (echo FAILED ; cp sbcl-dist.core sbcl.core ) )
+ ;;
+ remove-defsystem | remove-clc)
+ echo $0 removing clc-enabled image
+ cp /usr/lib/sbcl/sbcl-dist.core /usr/lib/sbcl/sbcl.core
+ ;;
+ make-user-image)
+ if [ ! -f "$2" ] ; then
+ echo "Trying to make-user image, but can not find file $2" >&2
+ exit 1
+ fi
+ sbcl --core /usr/lib/sbcl/sbcl-dist.core \
+ --noinform --sysinit /dev/null --userinit /dev/null \
+ --eval \
+"(handler-case
+ (progn
+ (load \"$2\")
+ (sb-ext:gc :full t)
+ (sb-ext:save-lisp-and-die \"/usr/lib/sbcl/sbcl-new.core\" :purify t))
+ (sb-unix:unix-exit 0))
+ (error (e)
+ (ignore-errors (format t \"make-user-image error: ~A~%\" e))
+ (finish-output)
+ (sb-unix:unix-exit 1)))"
+ mv sbcl-new.core sbcl.core || (echo FAILED ; cp sbcl-dist.core sbcl.core )
+ ;;
+ *)
+ echo $0 unkown command $1
+ echo known commands: rebuild, remove, make-user-image, install-clc and remove-clc
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/dev-lisp/sbcl/files/0.8.12/sbclrc b/dev-lisp/sbcl/files/0.8.12/sbclrc
new file mode 100644
index 000000000000..91f31720d896
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.12/sbclrc
@@ -0,0 +1,18 @@
+;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CL-USER -*-
+
+;;; This file is installed as /etc/sbcl.rc and run on every invocation
+;;; of SBCL
+
+(if (probe-file "/etc/lisp-config.lisp")
+ (load "/etc/lisp-config.lisp")
+ (format t "~%;;; Warning: there is no /etc/lisp-config.lisp file"))
+
+;;; The following is required if you want source location functions to
+;;; work (such as those called when you use M-. (edit definition) in
+;;; ILISP or SLIME)
+
+(setf (logical-pathname-translations "SYS")
+ '(("SYS:SRC;**;*.*.*" #p"/usr/lib/sbcl/src/**/*.*")
+ ("SYS:CONTRIB;**;*.*.*" #p"/usr/lib/sbcl/**/*.*")))
+
+;;; sbclrc ends here
diff --git a/dev-lisp/sbcl/files/digest-sbcl-0.8.12 b/dev-lisp/sbcl/files/digest-sbcl-0.8.12
new file mode 100644
index 000000000000..d6794af5d137
--- /dev/null
+++ b/dev-lisp/sbcl/files/digest-sbcl-0.8.12
@@ -0,0 +1,6 @@
+MD5 f23a177b2813740563f9e3f364e1dee8 sbcl-0.8.12-source.tar.bz2 2136436
+MD5 7b1efeece65af1a5dde8529afa743b3f sbcl-0.8.12-html.tar.bz2 47430
+MD5 6c193e328cdb472787ef78401ee5294c sbcl-0.8.1-x86-linux-binary.tar.bz2 6348098
+MD5 b5a5c93185ae03392ff6000a4a425222 sbcl-0.8.8-ppc-linux-binary.tar.bz2 6831954
+MD5 7cb56cd42b1f5797d26316e79aaccb06 sbcl-0.7.13-sparc-linux-binary.tar.bz2 5670293
+MD5 29ad145f1fc45c65b8d65b39013bc43f sbcl-0.7.10-mips-linux-binary.tar.gz 7473873
diff --git a/dev-lisp/sbcl/sbcl-0.8.11.ebuild b/dev-lisp/sbcl/sbcl-0.8.11.ebuild
index a2d73175044d..5a4ddee78226 100644
--- a/dev-lisp/sbcl/sbcl-0.8.11.ebuild
+++ b/dev-lisp/sbcl/sbcl-0.8.11.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-0.8.11.ebuild,v 1.2 2004/06/25 00:00:49 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-0.8.11.ebuild,v 1.3 2004/07/10 19:55:14 mkennedy Exp $
inherit common-lisp-common eutils
@@ -19,7 +19,7 @@ SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~x86 ~ppc ~sparc ~mips"
+KEYWORDS="x86 ~ppc ~sparc ~mips"
IUSE="threads doc nosource"
DEPEND="dev-lisp/common-lisp-controller
diff --git a/dev-lisp/sbcl/sbcl-0.8.12.ebuild b/dev-lisp/sbcl/sbcl-0.8.12.ebuild
new file mode 100644
index 000000000000..774d3e2a9a46
--- /dev/null
+++ b/dev-lisp/sbcl/sbcl-0.8.12.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-0.8.12.ebuild,v 1.1 2004/07/10 19:55:14 mkennedy Exp $
+
+inherit common-lisp-common eutils
+
+BV_X86=0.8.1
+BV_PPC=0.8.8
+BV_SPARC=0.7.13
+BV_MIPS=0.7.10
+DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp."
+HOMEPAGE="http://sbcl.sourceforge.net/"
+SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
+ mirror://sourceforge/sbcl/${P}-html.tar.bz2
+ x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
+ ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-ppc-linux-binary.tar.bz2 )
+ sparc? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2 )
+ mips? ( mirror://sourceforge/sbcl/${PN}-${BV_MIPS}-mips-linux-binary.tar.gz )"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~x86 ~ppc ~sparc ~mips"
+IUSE="threads doc nosource"
+
+DEPEND="dev-lisp/common-lisp-controller
+ sys-apps/texinfo
+ doc? ( virtual/tetex )"
+
+PROVIDE="virtual/commonlisp"
+
+src_unpack() {
+ if use x86; then
+ unpack ${PN}-${BV_X86}-x86-linux-binary.tar.bz2
+ mv ${PN}-${BV_X86} x86-binary
+ elif use ppc; then
+ unpack ${PN}-${BV_PPC}-ppc-linux-binary.tar.bz2
+ mv ${PN}-${BV_PPC}-ppc-linux ppc-binary
+ elif use sparc; then
+ unpack ${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2
+ echo mv ${PN}-${BV_SPARC} sparc-binary || die
+ mv ${PN}-${BV_SPARC} sparc-binary || die
+ elif use mips; then
+ unpack ${PN}-${BV_SPARC}-mips-linux-binary.tar.gz
+ mv ${PN}-${BV_SPARC}-mips-linux mips-binary
+ fi
+
+ unpack ${P}-source.tar.bz2
+ epatch ${FILESDIR}/${PV}/sbcl-gentoo.patch
+
+ # Currently, thread support is only available for x86. These
+ # features expressions also disable :sb-test.
+ if use x86 && use threads; then
+ cp ${FILESDIR}/${PV}/customize-target-features.lisp \
+ ${S}/customize-target-features.lisp
+ else
+ cp ${FILESDIR}/${PV}/customize-target-features.lisp.no-threads \
+ ${S}/customize-target-features.lisp
+ fi
+
+ find ${S} -type f -name .cvsignore -exec rm -f '{}' \;
+ find ${S} -type d -name CVS \) -exec rm -rf '{}' \;
+ find ${S} -type f -name \*.c -exec chmod 644 '{}' \;
+}
+
+src_compile() {
+ local bindir
+ use x86 && bindir=../x86-binary
+ use ppc && bindir=../ppc-binary
+ use sparc && bindir=../sparc-binary
+ use mips && bindir=../mips-binary
+
+ # TODO: allow the user to chose between SBCL, CMUCL and CLISP for bootstrapping
+ # build with previous SBCL
+ PATH=${bindir}/src/runtime:${PATH} SBCL_HOME=${bindir}/output GNUMAKE=make \
+ ./make.sh 'sbcl --sysinit /dev/null --userinit /dev/null --noprogrammer --core ${bindir}/output/sbcl.core' \
+ || die
+
+ # build with CMUCL
+# GNUMAKE=make ./make.sh 'lisp -batch'
+
+ # Generation texinfo documentation
+ cd ${S}/doc/manual
+ make info
+ use doc && make ps pdf
+
+}
+
+src_install() {
+ unset SBCL_HOME
+
+ insinto /etc/
+ doins ${FILESDIR}/${PV}/sbclrc # Gentoo specific (from Debian)
+
+ exeinto /usr/lib/common-lisp/bin
+ doexe ${FILESDIR}/${PV}/sbcl.sh # Gentoo specific (from Debian)
+
+ dodir /usr/share/man
+ INSTALL_ROOT=${D}/usr sh install.sh
+ mv ${D}/usr/lib/sbcl/sbcl.core ${D}/usr/lib/sbcl/sbcl-dist.core
+
+ insinto /usr/lib/sbcl
+ doins ${FILESDIR}/${PV}/install-clc.lisp # Gentoo specific (from Debian)
+
+ doman doc/sbcl-asdf-install.1
+
+ dodoc BUGS COPYING CREDITS INSTALL NEWS OPTIMIZATIONS PRINCIPLES README STYLE SUPPORT TLA TODO
+ dodoc ${FILESDIR}/${PV}/README.Gentoo
+ dohtml doc/html/*
+
+ doinfo ${S}/doc/manual/*.info
+ use doc && dodoc ${S}/doc/manual/*.{pdf,ps}
+
+ keepdir /usr/lib/common-lisp/sbcl
+
+ if ! use nosource; then
+ # install the SBCL source
+ find ${S}/src -type f -name \*.fasl |xargs rm -f
+ mv ${S}/src ${D}/usr/lib/sbcl/
+ fi
+
+ impl-save-timestamp-hack sbcl || die
+}
+
+pkg_postinst() {
+ standard-impl-postinst sbcl
+}
+
+pkg_postrm() {
+ standard-impl-postrm sbcl /usr/bin/sbcl
+}