diff options
author | Matthew Kennedy <mkennedy@gentoo.org> | 2003-11-10 00:52:40 +0000 |
---|---|---|
committer | Matthew Kennedy <mkennedy@gentoo.org> | 2003-11-10 00:52:40 +0000 |
commit | 11d0c5e73e9000cc77ace02451c1762ad321854e (patch) | |
tree | c77d54af6d10cad2251f4cfc1862742efc69b81d /dev-lisp | |
parent | *** empty log message *** (diff) | |
download | gentoo-2-11d0c5e73e9000cc77ace02451c1762ad321854e.tar.gz gentoo-2-11d0c5e73e9000cc77ace02451c1762ad321854e.tar.bz2 gentoo-2-11d0c5e73e9000cc77ace02451c1762ad321854e.zip |
*** empty log message ***
Diffstat (limited to 'dev-lisp')
-rw-r--r-- | dev-lisp/sbcl-mt/ChangeLog | 9 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/Manifest | 9 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/files/digest-sbcl-mt-0.8.5 | 2 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/files/install-clc.lisp | 46 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/files/sbcl-0.8.5-mt-gentoo.patch | 64 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/files/sbcl-mt.sh | 81 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/sbcl-mt-0.8.4.35.ebuild | 4 | ||||
-rw-r--r-- | dev-lisp/sbcl-mt/sbcl-mt-0.8.5.ebuild | 107 |
8 files changed, 314 insertions, 8 deletions
diff --git a/dev-lisp/sbcl-mt/ChangeLog b/dev-lisp/sbcl-mt/ChangeLog index 7b02beb71bce..e9e0592d69bb 100644 --- a/dev-lisp/sbcl-mt/ChangeLog +++ b/dev-lisp/sbcl-mt/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-lisp/sbcl-mt # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl-mt/ChangeLog,v 1.2 2003/10/22 19:53:13 mkennedy Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl-mt/ChangeLog,v 1.3 2003/11/10 00:52:37 mkennedy Exp $ + +*sbcl-mt-0.8.5 (09 Nov 2003) + + 09 Nov 2003; <mkennedy@gentoo.org> sbcl-mt-0.8.4.35.ebuild, + sbcl-mt-0.8.5.ebuild, files/install-clc.lisp, + files/sbcl-0.8.5-mt-gentoo.patch, files/sbcl-mt.sh: + new upstream. *sbcl-mt-0.8.4.35 (22 Oct 2003) diff --git a/dev-lisp/sbcl-mt/Manifest b/dev-lisp/sbcl-mt/Manifest index 842a391682e9..c954d4ea3467 100644 --- a/dev-lisp/sbcl-mt/Manifest +++ b/dev-lisp/sbcl-mt/Manifest @@ -1,11 +1,9 @@ -MD5 c6c7f055b4f75934bec704585987f721 ChangeLog 903 +MD5 c81090bb9438cc8eacac710dd22cc374 ChangeLog 1114 MD5 9b65b0341efc8f4b29498aad23315229 metadata.xml 164 MD5 25639d8f67b4d39d6c75c008e7fe3b75 sbcl-mt-0.8.4.20-r1.ebuild 3935 MD5 56aabbea7700e1bc93d3930b6328283c sbcl-mt-0.8.4.20.ebuild 3889 -MD5 7f50c4244095cb72d21a73a85e3c21a5 sbcl-mt-0.8.4.35.ebuild 3934 -MD5 5eedd6788a60dfa627b316d546e99463 sbcl-mt-0.8.4.35.ebuild.~1.1.~ 3934 -MD5 7bde95222537eabe202c68050621f3ed sbcl-mt-0.8.5.ebuild 3369 -MD5 7f50c4244095cb72d21a73a85e3c21a5 sbcl-mt-0.8.5.ebuild~ 3934 +MD5 0b996ce84c8dd186e936966f3b441725 sbcl-mt-0.8.4.35.ebuild 3934 +MD5 f76517e66665b499a0f1b34d7251af66 sbcl-mt-0.8.5.ebuild 3387 MD5 738c5c7d7535f7b9b8297fc13827af81 files/customize-target-features.lisp 70 MD5 40b2d24e6e377144d83e098abd83d2be files/digest-sbcl-mt-0.8.4.20 224 MD5 40b2d24e6e377144d83e098abd83d2be files/digest-sbcl-mt-0.8.4.20-r1 224 @@ -14,3 +12,4 @@ MD5 332a3c014d85b29da7ef39caa1b147b7 files/sbcl-mt.rc 296 MD5 14c5b455a08735b51c914371b079ef1e files/sbcl-0.8.5-mt-gentoo.patch 2824 MD5 5134bfd068bf2c14d3fe8dba14c17cbd files/install-clc.lisp 1347 MD5 0d1a737d06a031b76c3011e560af6bfd files/digest-sbcl-mt-0.8.5 149 +MD5 d52459dae9e29b5de235c09670d39370 files/sbcl-mt.sh 2224 diff --git a/dev-lisp/sbcl-mt/files/digest-sbcl-mt-0.8.5 b/dev-lisp/sbcl-mt/files/digest-sbcl-mt-0.8.5 new file mode 100644 index 000000000000..9f72545b4e92 --- /dev/null +++ b/dev-lisp/sbcl-mt/files/digest-sbcl-mt-0.8.5 @@ -0,0 +1,2 @@ +MD5 2d935319b1f985a32660412005085e42 sbcl_0.8.5.orig.tar.gz 2547892 +MD5 6c193e328cdb472787ef78401ee5294c sbcl-0.8.1-x86-linux-binary.tar.bz2 6348098 diff --git a/dev-lisp/sbcl-mt/files/install-clc.lisp b/dev-lisp/sbcl-mt/files/install-clc.lisp new file mode 100644 index 000000000000..b15e3ee0d36f --- /dev/null +++ b/dev-lisp/sbcl-mt/files/install-clc.lisp @@ -0,0 +1,46 @@ +;;; -*- Mode: LISP; Package: CL-USER -*- +;;; +;;; Copyright (C) Peter Van Eynde 2001 and Kevin Rosenberg 2002-2003 +;;; +;;; License: LGPL v2 +;;; +(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-mt/" + :version 3) + t) + (format t "~%Error during init of common-lisp-controller~%") + (sb-unix:unix-exit 1)) + +(defun common-lisp-controller: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-mt" + "--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-mt")))) + +(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-mt/files/sbcl-0.8.5-mt-gentoo.patch b/dev-lisp/sbcl-mt/files/sbcl-0.8.5-mt-gentoo.patch new file mode 100644 index 000000000000..5972b09211d4 --- /dev/null +++ b/dev-lisp/sbcl-mt/files/sbcl-0.8.5-mt-gentoo.patch @@ -0,0 +1,64 @@ +diff -ur sbcl-0.8.5.orig/contrib/sb-executable/sb-executable.lisp sbcl-0.8.5/contrib/sb-executable/sb-executable.lisp +--- sbcl-0.8.5.orig/contrib/sb-executable/sb-executable.lisp 2003-11-09 13:55:48.720817048 -0600 ++++ sbcl-0.8.5/contrib/sb-executable/sb-executable.lisp 2003-11-09 13:57:10.399400016 -0600 +@@ -37,7 +37,7 @@ + (or initial-function 'values))) out) + (dolist (input-file (if (listp fasls) fasls (list fasls))) + (with-open-file (in (merge-pathnames input-file +- (make-pathname :type "fasl")) ++ (make-pathname :type "faslmt")) + :element-type '(unsigned-byte 8)) + (copy-stream in out)))) + (let* ((out-name (namestring output-file)) +Only in sbcl-0.8.5/contrib/sb-executable: sb-executable.lisp~ +diff -ur sbcl-0.8.5.orig/contrib/vanilla-module.mk sbcl-0.8.5/contrib/vanilla-module.mk +--- sbcl-0.8.5.orig/contrib/vanilla-module.mk 2003-11-09 13:55:48.713818112 -0600 ++++ sbcl-0.8.5/contrib/vanilla-module.mk 2003-11-09 13:56:33.275043776 -0600 +@@ -2,7 +2,7 @@ + $(MODULE).fasl: $(MODULE).lisp ../../output/sbcl.core + $(SBCL) --eval '(compile-file "$(MODULE)")' </dev/null + +-test:: $(MODULE).fasl ++test:: $(MODULE).faslmt + + install: + cp $(MODULE).fasl $(BUILD_ROOT)$(INSTALL_DIR) +Only in sbcl-0.8.5/contrib: vanilla-module.mk~ +diff -ur sbcl-0.8.5.orig/src/code/early-fasl.lisp sbcl-0.8.5/src/code/early-fasl.lisp +--- sbcl-0.8.5.orig/src/code/early-fasl.lisp 2003-11-09 13:55:48.754811880 -0600 ++++ sbcl-0.8.5/src/code/early-fasl.lisp 2003-11-09 13:58:19.335920072 -0600 +@@ -103,7 +103,7 @@ + + ;;; the conventional file extension for our fasl files + (declaim (type simple-string *fasl-file-type*)) +-(defvar *fasl-file-type* "fasl") ++(defvar *fasl-file-type* "faslmt") + + ;;;; information about below-Lisp-level linkage + +Only in sbcl-0.8.5/src/code: early-fasl.lisp~ +diff -ur sbcl-0.8.5.orig/src/compiler/main.lisp sbcl-0.8.5/src/compiler/main.lisp +--- sbcl-0.8.5.orig/src/compiler/main.lisp 2003-11-09 13:55:48.804804280 -0600 ++++ sbcl-0.8.5/src/compiler/main.lisp 2003-11-09 13:58:45.303972328 -0600 +@@ -454,7 +454,7 @@ + + (etypecase *compile-object* + (fasl-output +- (maybe-mumble "fasl") ++ (maybe-mumble "faslmt") + (fasl-dump-component component + *code-segment* + code-length +Only in sbcl-0.8.5/src/compiler: main.lisp~ +diff -ur sbcl-0.8.5.orig/src/runtime/GNUmakefile sbcl-0.8.5/src/runtime/GNUmakefile +--- sbcl-0.8.5.orig/src/runtime/GNUmakefile 2003-11-09 13:55:48.857796224 -0600 ++++ sbcl-0.8.5/src/runtime/GNUmakefile 2003-11-09 14:00:21.496348864 -0600 +@@ -34,6 +34,7 @@ + # symlink to Config-foo. + include Config + ++CFLAGS += -DSBCL_HOME='"/usr/lib/sbcl-mt"' + + C_SRCS = alloc.c backtrace.c breakpoint.c coreparse.c \ + dynbind.c gc-common.c globals.c interr.c interrupt.c \ +Only in sbcl-0.8.5/src/runtime: GNUmakefile~ diff --git a/dev-lisp/sbcl-mt/files/sbcl-mt.sh b/dev-lisp/sbcl-mt/files/sbcl-mt.sh new file mode 100644 index 000000000000..597c034ed601 --- /dev/null +++ b/dev-lisp/sbcl-mt/files/sbcl-mt.sh @@ -0,0 +1,81 @@ +#!/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-mt --noinform --sysinit /etc/sbcl-mt.rc --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-mt/$1" + shift + done + ;; + install-defsystem | install-clc) + echo $0 loading and dumping clc. + ( cd /usr/lib/sbcl-mt + sbcl-mt --core /usr/lib/sbcl-mt/sbcl-dist.core \ + --noinform --sysinit /etc/sbcl-mt.rc --userinit /dev/null \ + --load "/usr/lib/sbcl-mt/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-mt/sbcl-dist.core /usr/lib/sbcl-mt/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-mt --core /usr/lib/sbcl-mt/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-mt/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)))" + cd /usr/lib/sbcl-mt + 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-mt/sbcl-mt-0.8.4.35.ebuild b/dev-lisp/sbcl-mt/sbcl-mt-0.8.4.35.ebuild index dd0284f2c923..5c4f4d19d244 100644 --- a/dev-lisp/sbcl-mt/sbcl-mt-0.8.4.35.ebuild +++ b/dev-lisp/sbcl-mt/sbcl-mt-0.8.4.35.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2003 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl-mt/sbcl-mt-0.8.4.35.ebuild,v 1.1 2003/10/22 19:53:13 mkennedy Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl-mt/sbcl-mt-0.8.4.35.ebuild,v 1.2 2003/11/10 00:52:37 mkennedy Exp $ inherit common-lisp-common @@ -14,7 +14,7 @@ SRC_URI="http://ftp.debian.org/debian/pool/main/s/sbcl-mt/sbcl-mt_${PV}.orig.tar x86? ( mirror://sourceforge/sbcl/sbcl-${BV_X86}-x86-linux-binary.tar.bz2 )" LICENSE="MIT" SLOT="0" -KEYWORDS="-x86" +KEYWORDS="~x86" PROVIDE="virtual/commonlisp" # the SRC_URI trickery needs this DEPEND=">=sys-apps/portage-2.0.27 diff --git a/dev-lisp/sbcl-mt/sbcl-mt-0.8.5.ebuild b/dev-lisp/sbcl-mt/sbcl-mt-0.8.5.ebuild new file mode 100644 index 000000000000..c49b266e0904 --- /dev/null +++ b/dev-lisp/sbcl-mt/sbcl-mt-0.8.5.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2003 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl-mt/sbcl-mt-0.8.5.ebuild,v 1.1 2003/11/10 00:52:37 mkennedy Exp $ + +inherit common-lisp-common + +DEB_PV=1 + +DESCRIPTION="Steel Bank Common Lisp (SBCL) is a Open Source development system for ANSI Common Lisp. It provides an interactive environment including an integrated native compiler, interpreter, and debugger. This is the multreaded version of SBCL" +HOMEPAGE="http://sbcl.sourceforge.net/" +BV_X86=0.8.1 +SRC_URI="http://ftp.debian.org/debian/pool/main/s/sbcl/sbcl_${PV}.orig.tar.gz + x86? ( mirror://sourceforge/sbcl/sbcl-${BV_X86}-x86-linux-binary.tar.bz2 )" +LICENSE="MIT" +SLOT="0" +KEYWORDS="~x86" +PROVIDE="virtual/commonlisp" +# the SRC_URI trickery needs this +DEPEND=">=sys-apps/portage-2.0.27 + dev-lisp/common-lisp-controller + doc? ( app-text/openjade )" + +S=${WORKDIR}/sbcl-${PV} + +src_unpack() { + if use x86; then + unpack sbcl-${BV_X86}-x86-linux-binary.tar.bz2 + mv sbcl-${BV_X86} x86-binary + fi + unpack sbcl_${PV}.orig.tar.gz + epatch ${FILESDIR}/sbcl-${PV}-mt-gentoo.patch + cp ${FILESDIR}/customize-target-features.lisp ${S}/ +} + +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 + 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 + if use doc; then + cd doc && chmod +x make-doc.sh + ./make-doc.sh + fi +} + +src_install() { + unset SBCL_HOME + + insinto /etc/ + doins ${FILESDIR}/sbcl-mt.rc + + exeinto /usr/lib/common-lisp/bin + doexe ${FILESDIR}/sbcl-mt.sh + + INSTALL_ROOT=${D}/usr sh install.sh + mv ${D}/usr/lib/sbcl ${D}/usr/lib/sbcl-mt + mv ${D}/usr/bin/sbcl ${D}/usr/bin/sbcl-mt + dosym /usr/lib/sbcl-mt/asdf-install/asdf-install /usr/bin/sbcl-mt-asdf-install + rm ${D}/usr/bin/sbcl-asdf-install + mv ${D}/usr/lib/sbcl-mt/sbcl.core ${D}/usr/lib/sbcl-mt/sbcl-dist.core + + insinto /usr/lib/sbcl-mt + doins ${FILESDIR}/install-clc.lisp + + dodir /usr/share + mv ${D}/usr/man ${D}/usr/share/ + mv ${D}/usr/share/man/man1/sbcl.1 ${D}/usr/share/man/man1/sbcl-mt.1 + +# doman debian/sbcl-asdf-install.1 + + use doc && dohtml doc/html/* + dodoc BUGS COPYING CREDITS INSTALL NEWS OPTIMIZATIONS PRINCIPLES \ + README STYLE TLA TODO +# do-debian-credits + + find ${D} -type f -name .cvsignore -exec rm -f '{}' \; + find ${D} -type f -name \*.c -exec chmod 644 '{}' \; + + # BIG FAT HACK + # + # Since the Portage emerge step kills file timestamp information, + # we need to compensate by ensuring all .fasl files are more + # recent than their .lisp source. + + dodir /usr/share/${PN} + tar cpvzf ${D}/usr/share/${PN}/portage-timestamp-compensate -C ${D}/usr/lib/${PN} . +} + +pkg_postinst() { + tar xvpzf /usr/share/sbcl-mt/portage-timestamp-compensate -C /usr/lib/sbcl-mt + rm -rf /usr/lib/common-lisp/${PN}/* || true + /usr/bin/clc-autobuild-impl sbcl-mt yes + rm -rf /usr/lib/common-lisp/${PN} || true + /usr/sbin/register-common-lisp-implementation sbcl-mt +} + +pkg_postrm() { + # Since we keep our own time stamps we must manually remove them + # here. + if [ ! -x /usr/bin/sbcl-mt ]; then + rm -rf /usr/lib/sbcl-mt + fi +} |