summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-lisp/sbcl/ChangeLog13
-rw-r--r--dev-lisp/sbcl/Manifest14
-rw-r--r--dev-lisp/sbcl/files/0.8.11/README.Gentoo25
-rw-r--r--dev-lisp/sbcl/files/0.8.11/customize-target-features.lisp19
-rw-r--r--dev-lisp/sbcl/files/0.8.11/customize-target-features.lisp.no-threads19
-rw-r--r--dev-lisp/sbcl/files/0.8.11/install-clc.lisp53
-rw-r--r--dev-lisp/sbcl/files/0.8.11/sbcl-asdf-install.1126
-rw-r--r--dev-lisp/sbcl/files/0.8.11/sbcl-gentoo.patch85
-rw-r--r--dev-lisp/sbcl/files/0.8.11/sbcl.sh80
-rw-r--r--dev-lisp/sbcl/files/0.8.11/sbclrc18
-rw-r--r--dev-lisp/sbcl/files/digest-sbcl-0.8.116
-rw-r--r--dev-lisp/sbcl/sbcl-0.8.10.ebuild4
-rw-r--r--dev-lisp/sbcl/sbcl-0.8.11.ebuild130
13 files changed, 587 insertions, 5 deletions
diff --git a/dev-lisp/sbcl/ChangeLog b/dev-lisp/sbcl/ChangeLog
index d03845259ab7..ed211fc607fe 100644
--- a/dev-lisp/sbcl/ChangeLog
+++ b/dev-lisp/sbcl/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for dev-lisp/sbcl
# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.34 2004/05/13 15:58:52 mkennedy Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.35 2004/06/22 19:53:07 mkennedy Exp $
+
+*sbcl-0.8.11 (14 Jun 2004)
+
+ 14 Jun 2004; <mkennedy@gentoo.org> +files/0.8.11/README.Gentoo,
+ +files/0.8.11/customize-target-features.lisp,
+ +files/0.8.11/customize-target-features.lisp.no-threads,
+ +files/0.8.11/install-clc.lisp, +files/0.8.11/sbcl-asdf-install.1,
+ +files/0.8.11/sbcl-gentoo.patch, +files/0.8.11/sbcl.sh,
+ +files/0.8.11/sbclrc, sbcl-0.8.10.ebuild, +sbcl-0.8.11.ebuild:
+ New upstream version; Support for "nosource" in USE (don't install
+ SBCL source code)
13 May 2004; <mkennedy@gentoo.org> sbcl-0.8.10.ebuild:
Use a more recent SBCL build binary for PPC (was 0.7.13, now 0.8.8).
diff --git a/dev-lisp/sbcl/Manifest b/dev-lisp/sbcl/Manifest
index 3743df10ac83..e0fdbca1873b 100644
--- a/dev-lisp/sbcl/Manifest
+++ b/dev-lisp/sbcl/Manifest
@@ -1,13 +1,15 @@
+MD5 4eec85d987df1c6c61840b78602b652b sbcl-0.8.11.ebuild 3878
MD5 8b7f4671e4014567f46f9f31ad4a79a1 sbcl-0.8.7-r1.ebuild 4243
MD5 1b09978a126a8c2553f0a7f5585c8ebd sbcl-0.8.9.ebuild 3576
MD5 d9de95d255964053cbb21190164766e9 sbcl-0.8.8.ebuild 3496
-MD5 3c5c6957605169bde08a9b131094fa74 sbcl-0.8.10.ebuild 3727
+MD5 05c46a0ce27123cb93c547f88f5ed227 sbcl-0.8.10.ebuild 3726
MD5 87ae9185138866c7c0e699bf736151e2 sbcl-0.8.7.ebuild 4083
-MD5 011203aec01c614abd473a535fa07a70 ChangeLog 8006
+MD5 fa2eb84ee19096bc08e455b4e3144142 ChangeLog 8490
MD5 c93195a12a4bb997ca623db927bb6676 metadata.xml 997
MD5 6e40a080b566cc78dfe522ae34eec0a7 files/install-clc.lisp 1338
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 071f286575536d58bd93efe2f77cd24c files/sbcl.sh 2168
@@ -46,3 +48,11 @@ 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.11/install-clc.lisp 1463
+MD5 6da161778abe09369b613023132fbd50 files/0.8.11/README.Gentoo 888
+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 071f286575536d58bd93efe2f77cd24c files/0.8.11/sbcl.sh 2168
+MD5 653f804ebcd167d167f8163756b7da17 files/0.8.11/sbclrc 639
+MD5 ca5b0679930a68145fa01867307cda5f 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.11/README.Gentoo b/dev-lisp/sbcl/files/0.8.11/README.Gentoo
new file mode 100644
index 000000000000..e2e64f5ef684
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/README.Gentoo
@@ -0,0 +1,25 @@
+-*- outline -*- $Id: README.Gentoo,v 1.1 2004/06/22 19:53:08 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.11/customize-target-features.lisp b/dev-lisp/sbcl/files/0.8.11/customize-target-features.lisp
new file mode 100644
index 000000000000..7663f4802619
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/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.11/customize-target-features.lisp.no-threads b/dev-lisp/sbcl/files/0.8.11/customize-target-features.lisp.no-threads
new file mode 100644
index 000000000000..100d84059509
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/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.11/install-clc.lisp b/dev-lisp/sbcl/files/0.8.11/install-clc.lisp
new file mode 100644
index 000000000000..2f9a28fcab12
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/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.11/sbcl-asdf-install.1 b/dev-lisp/sbcl/files/0.8.11/sbcl-asdf-install.1
new file mode 100644
index 000000000000..4390fea1f1fa
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/sbcl-asdf-install.1
@@ -0,0 +1,126 @@
+.TH SBCL-ASDF-INSTALL 1 "$Date: 2004/06/22 19:53:08 $"
+.AT 3
+.SH NAME
+SBCL-ASDF-INSTALL -- "Download an Install ASDF Systems"
+
+.SH DESCRIPTION
+
+Downloads and installs an ASDF system or anything else that looks
+convincingly like one, including updating the ASDF:*CENTRAL-REGISTRY*
+symlinks for all the toplevel .asd files it contains. Please read
+this file before use: in particular: this is an automatic tool that
+downloads and compiles stuff it finds on the 'net. Please look at the
+SECURITY section and be sure you understand the implications
+
+
+.SH USAGE
+
+This can be used either from within an SBCL instance:
+
+* (require 'asdf-install)
+* (asdf-install:install 'xlunit) ; for example
+
+or standalone from the shell:
+
+$ sbcl-asdf-install xlunit
+
+Each argument may be -
+
+ - The name of a cliki page. asdf-install visits that page and finds
+ the download location from the `:(package)' tag - usually rendered
+ as "Download ASDF package from ..."
+
+ - A URL, which is downloaded directly
+
+ - A local tar.gz file, which is installed
+
+
+.SH SECURITY CONCERNS: READ THIS CAREFULLY
+
+When you invoke asdf-install, you are asking SBCL to download,
+compile, and install software from some random site on the web. Given
+that it's indirected through a page on CLiki, any malicious third party
+doesn't even need to hack the distribution server to replace the
+package with something else: he can just edit the link.
+
+For this reason, we encourage package providers to crypto-sign their
+packages (see details at the URL in the PACKAGE CREATION section) and
+users to check the signatures. asdf-install has three levels of
+automatic signature checking: "on", "off" and "unknown sites", which
+can be set using the configuration variables described in
+CUSTOMIZATION below. The default is "unknown sites", which will
+expect a GPG signature on all downloads except those from
+presumed-good sites. The current default presumed-good sites are
+CCLAN nodes, and two web sites run by SBCL maintainers: again, see
+below for customization details
+
+
+.SH CUSTOMIZATION
+
+If the file $HOME/.asdf-install exists, it is loaded. This can be
+used to override the default values of exported special variables.
+Presently these are
+
+.TP 3
+\--
+*PROXY*
+ defaults to $http_proxy environment variable
+.TP 3
+\-
+*CCLAN-MIRROR*
+ preferred/nearest CCLAN node. See the list at
+http://ww.telent.net/cclan-choose-mirror
+.TP 3
+\-
+*SBCL-HOME*
+ Set from $SBCL_HOME environment variable. This should already be
+correct for whatever SBCL is running, if it's been installed correctly
+.TP 3
+\-
+*VERIFY-GPG-SIGNATURES*
+ Verify GPG signatures for the downloaded packages?
+ NIL - no, T - yes, :UNKNOWN-LOCATIONS - only for URLs which aren't in CCLAN and don't begin with one of the prefixes in *SAFE-URL-PREFIXES*
+.TP 3
+\-
+*LOCATIONS*
+ Possible places in the filesystem to install packages into. See default
+value for format
+.TP 3
+\-
+*SAFE-URL-PREFIXES*
+ List of locations for which GPG signature checking won't be done when
+*verify-gpg-signatures* is :unknown-locations
+
+
+.SH PACKAGE CREATION
+
+If you want to create your own packages that can be installed using this
+loader, see the "Making your package downloadable..." section at
+<http://www.cliki.net/asdf-install>
+
+
+.SH HACKERS NOTE
+
+Listen very carefully: I will say this only as often as it appears to
+be necessary to say it. asdf-install is not a good example of how to
+write a URL parser, HTTP client, or anything else, really.
+Well-written extensible and robust URL parsers, HTTP clients, FTP
+clients, etc would definitely be nice things to have, but it would be
+nicer to have them in CCLAN where anyone can use them - after having
+downloaded them with asdf-install - than in SBCL contrib where they're
+restricted to SBCL users and can only be updated once a month via SBCL
+developers. This is a bootstrap tool, and as such, will tend to
+resist changes that make it longer or dependent on more other
+packages, unless they also add to its usefulness for bootstrapping.
+
+
+.SH TODO
+
+a) gpg signature checking would be better if it actually checked against
+a list of "trusted to write Lisp" keys, instead of just "trusted to be
+who they say they are"
+
+e) nice to have: resume half-done downloads instead of starting from scratch
+every time. but right now we're dealing in fairly small packages, this is not
+an immediate concern
+
diff --git a/dev-lisp/sbcl/files/0.8.11/sbcl-gentoo.patch b/dev-lisp/sbcl/files/0.8.11/sbcl-gentoo.patch
new file mode 100644
index 000000000000..b6d8a4dd2489
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/sbcl-gentoo.patch
@@ -0,0 +1,85 @@
+diff -ru sbcl-0.8.11.orig/contrib/sb-posix/posix-tests.lisp sbcl-0.8.11/contrib/sb-posix/posix-tests.lisp
+--- sbcl-0.8.11.orig/contrib/sb-posix/posix-tests.lisp 2004-03-15 09:24:53.000000000 -0600
++++ sbcl-0.8.11/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.11.orig/src/runtime/GNUmakefile sbcl-0.8.11/src/runtime/GNUmakefile
+--- sbcl-0.8.11.orig/src/runtime/GNUmakefile 2004-04-10 08:37:23.000000000 -0500
++++ sbcl-0.8.11/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.11.orig/src/runtime/thread.c sbcl-0.8.11/src/runtime/thread.c
+--- sbcl-0.8.11.orig/src/runtime/thread.c 2004-04-19 14:40:48.000000000 -0500
++++ sbcl-0.8.11/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.11/sbcl.sh b/dev-lisp/sbcl/files/0.8.11/sbcl.sh
new file mode 100644
index 000000000000..d0ebaf86fa5d
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/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.11/sbclrc b/dev-lisp/sbcl/files/0.8.11/sbclrc
new file mode 100644
index 000000000000..91f31720d896
--- /dev/null
+++ b/dev-lisp/sbcl/files/0.8.11/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.11 b/dev-lisp/sbcl/files/digest-sbcl-0.8.11
new file mode 100644
index 000000000000..aca7f83ebb26
--- /dev/null
+++ b/dev-lisp/sbcl/files/digest-sbcl-0.8.11
@@ -0,0 +1,6 @@
+MD5 2fcf2ff8703249af465a05158911b65e sbcl-0.8.11-source.tar.bz2 2128159
+MD5 767a6969e060ce473c814be6aee40f64 sbcl-0.8.11-html.tar.bz2 47433
+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.10.ebuild b/dev-lisp/sbcl/sbcl-0.8.10.ebuild
index 784fb5d9903d..78c98b9d0d07 100644
--- a/dev-lisp/sbcl/sbcl-0.8.10.ebuild
+++ b/dev-lisp/sbcl/sbcl-0.8.10.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-0.8.10.ebuild,v 1.2 2004/05/13 15:58:52 mkennedy Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-0.8.10.ebuild,v 1.3 2004/06/22 19:53:07 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"
DEPEND="dev-lisp/common-lisp-controller
diff --git a/dev-lisp/sbcl/sbcl-0.8.11.ebuild b/dev-lisp/sbcl/sbcl-0.8.11.ebuild
new file mode 100644
index 000000000000..83554039882f
--- /dev/null
+++ b/dev-lisp/sbcl/sbcl-0.8.11.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# 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.1 2004/06/22 19:53:07 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 ${FILESDIR}/${PV}/sbcl-asdf-install.1 # Gentoo specific (from Debian)
+
+ 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
+}