summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lisp/cmucl/files')
-rw-r--r--dev-lisp/cmucl/files/19c/README.Gentoo31
-rw-r--r--dev-lisp/cmucl/files/19c/cmucl.sh95
-rw-r--r--dev-lisp/cmucl/files/19c/herald-save.lisp-gentoo.patch18
-rw-r--r--dev-lisp/cmucl/files/19c/install-clc.lisp55
-rw-r--r--dev-lisp/cmucl/files/19c/site-init.lisp.in58
-rw-r--r--dev-lisp/cmucl/files/digest-cmucl-19c3
6 files changed, 260 insertions, 0 deletions
diff --git a/dev-lisp/cmucl/files/19c/README.Gentoo b/dev-lisp/cmucl/files/19c/README.Gentoo
new file mode 100644
index 000000000000..885807587fb5
--- /dev/null
+++ b/dev-lisp/cmucl/files/19c/README.Gentoo
@@ -0,0 +1,31 @@
+
+* README.Gentoo -- Gentoo Specific Notes for dev-lisp/cmucl
+
+** About dev-lisp/cmucl
+
+The dev-lisp/cmucl ebuild in portage aim to provide a port of
+Debian's package of CMUCL. Thus the Gentoo CMUCL port should be
+binary compatible with the Debian port.
+
+** Linux Miscellaneous Binary Support
+
+You can have your compiled Lisp .x86f files automatically executed
+like any other binary by executing the following command:
+
+ echo ':lisp:E::x86f::/usr/bin/lisp-start:' \
+ >/proc/sys/fs/binfmt_misc/register
+
+Note: you need kernel support for this. A good place to put the
+above command is in your /etc/conf.d/localstart.
+
+** Credit
+
+This Gentoo package, like many other Gentoo packages in the dev-lisp
+category, benifit from the Debian Project's work.
+
+ -- Matthew Kennedy <mkennedy@gentoo.org>
+
+
+Local Variables: ***
+mode: outline ***
+End: ***
diff --git a/dev-lisp/cmucl/files/19c/cmucl.sh b/dev-lisp/cmucl/files/19c/cmucl.sh
new file mode 100644
index 000000000000..16772da268f0
--- /dev/null
+++ b/dev-lisp/cmucl/files/19c/cmucl.sh
@@ -0,0 +1,95 @@
+#!/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
+
+IMAGE=/usr/lib/cmucl/lisp.core
+DIR=cmucl
+
+case $1 in
+ rebuild)
+ echo $0 rebuilding...
+ shift
+ while [ ! -z "$1" ] ; do
+ echo rebuilding $1
+ /usr/bin/lisp -core $IMAGE -eval "
+(let ((*gc-verbose* nil)
+ (*compile-print* nil)
+ (*compile-progress* nil)
+ (*compile-verbose* nil)
+ (*require-verbose* nil)
+ (*load-verbose* nil))
+ (load \"/etc/common-lisp/cmucl/site-init.lisp\"))
+(let ((*gc-verbose* nil)
+ (*compile-print* t)
+ (*compile-progress* nil)
+ (*compile-verbose* t)
+ (*require-verbose* t)
+ (*load-verbose* t)
+ (mk::*load-source-if-no-binary* nil)
+ (mk::*bother-user-if-no-binary* nil)
+ (mk::*compile-during-load* t))
+
+ (handler-case
+ (progn
+ (with-compilation-unit (:optimize '((inhibit-warnings 3)))
+ (common-lisp-controller:compile-library :$1))
+ (unix:unix-exit 0))
+ (error (e)
+ (ignore-errors (format t \"~&Built Error: ~A~%\" e))
+ (finish-output)
+ (unix:unix-exit 1)))))" -nositeinit -noinit -batch -quiet || exit 1
+ shift
+ done
+ ;;
+ remove)
+ echo $0 removing packages...
+ shift
+ while [ ! -z "$1" ] ; do
+ rm -rf "/usr/lib/common-lisp/$DIR/$1"
+ shift
+ done
+ rmdir /usr/lib/common-lisp/$DIR 2> /dev/null
+ ;;
+ install-defsystem|install-clc)
+ echo installing the clc...
+ ( cd /usr/lib/cmucl
+ [ -f $IMAGE ] && rm -f $IMAGE
+ /usr/bin/lisp \
+ -core ${IMAGE%.core}-dist.core -load /usr/lib/cmucl/install-clc.lisp \
+ -nositeinit -noinit -batch -quiet && \
+ mv new-lisp.core $IMAGE || (echo FAILED ; ln ${IMAGE%.core}-dist.core $IMAGE ) )
+ ;;
+ remove-defsystem|remove-clc)
+ [ -f $IMAGE ] && rm -f $IMAGE
+ ;;
+ make-user-image)
+ if [ ! -f $1 ] ; then
+ echo Cannot find file $1 to load and dump!
+ exit 321
+ fi
+ /usr/bin/lisp -core $IMAGE -eval "
+(load \"$1\")
+ ;;
+ ;; Enable the garbage collector. But first fake it into thinking that
+ ;; we don't need to garbage collect. The save-lisp is going to call
+ ;; purify so any garbage will be collected then.
+#-gengc (setf lisp::*need-to-collect-garbage* nil)
+(gc-on)
+ ;;
+ ;; Save the lisp.
+(setf ext:*batch-mode* nil)
+(save-lisp #p\"home:lisp.core\")" -nositeinit -noinit -batch -quiet && echo New image created
+ ;;
+ *)
+ echo $0 unkown command $1
+ echo known commands: install-clc, remove-clc,rebuild and remove
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/dev-lisp/cmucl/files/19c/herald-save.lisp-gentoo.patch b/dev-lisp/cmucl/files/19c/herald-save.lisp-gentoo.patch
new file mode 100644
index 000000000000..adecda7f3e4f
--- /dev/null
+++ b/dev-lisp/cmucl/files/19c/herald-save.lisp-gentoo.patch
@@ -0,0 +1,18 @@
+diff -ur cmucl-19c-release-20051115.orig.orig/src/code/save.lisp cmucl-19c-release-20051115.orig/src/code/save.lisp
+--- cmucl-19c-release-20051115.orig.orig/src/code/save.lisp 2005-12-07 12:27:38.000000000 -0600
++++ cmucl-19c-release-20051115.orig/src/code/save.lisp 2005-12-07 12:29:30.000000000 -0600
+@@ -297,11 +297,9 @@
+ ))
+
+ (setf (getf *herald-items* :bugs)
+- '("For support see http://www.cons.org/cmucl/support.html Send bug reports to the debian BTS."
+- terpri
+- "or to "
+- "pvaneynd@debian.org" terpri
+- "type (help) for help, (quit) to exit, and (demo) to see the demos" terpri
++ '("For support see http://www.cons.org/cmucl/support.html" terpri
++ "Send bug reports to http://bugs.gentoo.org" terpri
++ "Type (help) for help or (quit) to exit." terpri
+ terpri
+ "Loaded subsystems:"))
+
diff --git a/dev-lisp/cmucl/files/19c/install-clc.lisp b/dev-lisp/cmucl/files/19c/install-clc.lisp
new file mode 100644
index 000000000000..23642b16ffee
--- /dev/null
+++ b/dev-lisp/cmucl/files/19c/install-clc.lisp
@@ -0,0 +1,55 @@
+;;; -*- Mode: LISP; Package: CL-USER -*-
+;;;
+;;; Copyright Peter Van Eynde, 2001
+;;;
+;;; License: LGPL v2
+;;;
+(in-package "COMMON-LISP-USER")
+
+(unless (ignore-errors
+ (load "/usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp"))
+ (unix:unix-exit 1))
+
+;; (unless (ignore-errors
+ (common-lisp-controller:init-common-lisp-controller
+ "/usr/lib/common-lisp/cmucl/"
+ :version 3)
+;; t)
+;; (format t "~%Error during init of common-lisp-controller~%")
+;; (unix:unix-exit 1))
+
+(in-package :common-lisp-controller)
+
+(defun send-clc-command (command package)
+ (let ((process
+ (ext:run-program "/usr/bin/clc-send-command"
+ (list
+ (ecase command
+ (:recompile "recompile")
+ (:remove "remove"))
+ (format nil "~A" package)
+ "cmucl"
+ "--quiet")
+ :wait t)))
+ (if (= (ext:process-exit-code process)
+ 0)
+ ;; no error
+ (values)
+ (error "An error happend during ~A of ~A for ~A~%Please see /usr/share/doc/common-lisp-controller/REPORTING-BUGS.gz"
+ (ecase command
+ (:recompile "recompilation")
+ (:remove "removal"))
+ package
+ "cmucl"))))
+
+(in-package "COMMON-LISP-USER")
+
+(unless (ignore-errors
+ ;; it loaded, configure it for common-lisp-controller use:
+ (format t "~%Saving to new-lisp.core...")
+ (ext:gc :full t)
+ (setf ext:*batch-mode* nil)
+ (ext:save-lisp "new-lisp.core"
+ :purify t))
+ (unix:unix-exit 1))
+
diff --git a/dev-lisp/cmucl/files/19c/site-init.lisp.in b/dev-lisp/cmucl/files/19c/site-init.lisp.in
new file mode 100644
index 000000000000..ad145414ca43
--- /dev/null
+++ b/dev-lisp/cmucl/files/19c/site-init.lisp.in
@@ -0,0 +1,58 @@
+;;; -*- Mode: Lisp; Package: System -*-
+;;;
+;;; **********************************************************************
+;;; This code was written as part of the CMU Common Lisp project at
+;;; Carnegie Mellon University, and has been placed in the public domain.
+;;;
+
+;;; Heavy modifications by Peter Van Eynde
+
+;;; More modifications for Gentoo by Matthew Kennedy
+;;; <mkennedy@gentoo.org>
+
+(in-package "SYSTEM")
+
+(if (probe-file "/etc/lisp-config.lisp")
+ (load "/etc/lisp-config.lisp")
+ (format t "~%;;; Warning: There is no /etc/lisp-config.lisp file (which should have been created during emerge"))
+
+;;; If you have sources installed on your system, un-comment the following form
+;;; and change it to point to the source location. This will allow the Hemlock
+;;; "Edit Definition" command and the debugger to find sources for functions in
+;;; the core.
+(setf (ext:search-list "target:")
+ '(
+ "/usr/share/common-lisp/source/cmucl/" ; object dir
+ ))
+
+(setf (ext:search-list "library:") '("/usr/lib/cmucl/"))
+;;; for safety...
+
+;;; optional extentions to the lisp image: delete if you
+;;; don't like them :-).
+(in-package :common-lisp-user)
+
+;;; newbie functions, delete if you don't like them
+
+(defun help ()
+ (format t "~
+Welcome to the Gentoo GNU/Linux port of CMUCL.
+
+If you aren't running this with ILISP (see: app-emacs/ilisp or
+app-xemacs/ilisp) in Emacs, or don't intend to use Hemlock
+(see: dev-lisp/cmucl-source) then you deserve to lose. :-)
+
+The CMUCL REPL does not have GNU Readline-like support, however
+you may wish to install rlwap (see: app-misc/rlwrap) to achieve
+the same effect.
+
+If you think you found a bug, please use http://bugs.gentoo.org
+
+Read the documentation in /usr/share/doc/@PF@.
+
+(quit) exit Lisp
+(describe 'foo) gives information about foo
+(inspect '*foo*) interactively inspects *foo*
+(apropos \"foo\") briefly describe all symbols which match \"foo\"
+"))
+
diff --git a/dev-lisp/cmucl/files/digest-cmucl-19c b/dev-lisp/cmucl/files/digest-cmucl-19c
new file mode 100644
index 000000000000..69707ef18263
--- /dev/null
+++ b/dev-lisp/cmucl/files/digest-cmucl-19c
@@ -0,0 +1,3 @@
+MD5 04bf7da2a49a309080bf504d0b1e8c28 cmucl-19c-x86-linux.tar.bz2 7305922
+MD5 b36c4da92e315ec6403a52420156fdc6 cmucl_19c-release-20051115-1.diff.gz 1506111
+MD5 9f7d1bae564e50c7b64a2e2cf4ae5f59 cmucl_19c-release-20051115.orig.tar.gz 4654304