summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomás Touceda <chiiph@gentoo.org>2010-05-12 04:14:47 +0000
committerTomás Touceda <chiiph@gentoo.org>2010-05-12 04:14:47 +0000
commit4ca7862170090d6dce0056a9b71421a44b95742d (patch)
tree40a79903729d8d1c4d86153b8eea7f5dc4d12ba4 /dev-lisp/cmucl
parentInitial ebuild by James Le Cuirot #319041. (diff)
downloadgentoo-2-4ca7862170090d6dce0056a9b71421a44b95742d.tar.gz
gentoo-2-4ca7862170090d6dce0056a9b71421a44b95742d.tar.bz2
gentoo-2-4ca7862170090d6dce0056a9b71421a44b95742d.zip
Version bump to 20a.
(Portage version: 2.2_rc67/cvs/Linux i686)
Diffstat (limited to 'dev-lisp/cmucl')
-rw-r--r--dev-lisp/cmucl/ChangeLog11
-rw-r--r--dev-lisp/cmucl/cmucl-20a.ebuild78
-rw-r--r--dev-lisp/cmucl/files/20a-multiplefixes.patch118
-rw-r--r--dev-lisp/cmucl/files/20a-patch000.patch16
-rw-r--r--dev-lisp/cmucl/files/fix-man-and-doc-installation.patch42
5 files changed, 263 insertions, 2 deletions
diff --git a/dev-lisp/cmucl/ChangeLog b/dev-lisp/cmucl/ChangeLog
index c7d35b079e12..4a308ba4f071 100644
--- a/dev-lisp/cmucl/ChangeLog
+++ b/dev-lisp/cmucl/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-lisp/cmucl
-# Copyright 2000-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/cmucl/ChangeLog,v 1.31 2008/09/04 06:21:19 opfer Exp $
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/cmucl/ChangeLog,v 1.32 2010/05/12 04:14:47 chiiph Exp $
+
+*cmucl-20a (12 May 2010)
+
+ 12 May 2010; Tomas Touceda <chiiph@gentoo.org>
+ +files/20a-multiplefixes.patch, +cmucl-20a.ebuild,
+ +files/20a-patch000.patch, +files/fix-man-and-doc-installation.patch:
+ Version bump to 20a.
04 Sep 2008; Christian Faulhammer <opfer@gentoo.org> cmucl-19c.ebuild:
change dependency from virtual/tetex to virtual/latex-base
diff --git a/dev-lisp/cmucl/cmucl-20a.ebuild b/dev-lisp/cmucl/cmucl-20a.ebuild
new file mode 100644
index 000000000000..bccfc4455e7b
--- /dev/null
+++ b/dev-lisp/cmucl/cmucl-20a.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/cmucl/cmucl-20a.ebuild,v 1.1 2010/05/12 04:14:47 chiiph Exp $
+
+EAPI="3"
+
+inherit eutils toolchain-funcs
+
+MY_PV=${PV:0:3}
+
+DESCRIPTION="CMU Common Lisp is an implementation of ANSI Common Lisp"
+HOMEPAGE="http://www.cons.org/cmucl/"
+SRC_URI="http://common-lisp.net/project/cmucl/downloads/release/${MY_PV}/cmucl-src-${MY_PV}.tar.bz2
+ http://common-lisp.net/project/cmucl/downloads/release/${MY_PV}/cmucl-${MY_PV}-x86-linux.tar.bz2"
+RESTRICT="mirror"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="X source sse2"
+
+RDEPEND="x11-libs/openmotif"
+DEPEND="${RDEPEND}
+ sys-devel/bc"
+PDEPEND="dev-lisp/gentoo-init"
+
+PROVIDE="virtual/commonlisp"
+
+S="${WORKDIR}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/fix-man-and-doc-installation.patch
+ epatch "${FILESDIR}"/${MY_PV}-patch000.patch
+ epatch "${FILESDIR}"/${MY_PV}-multiplefixes.patch
+}
+
+src_compile() {
+ local cfpu="sse2"
+ if ! use sse2; then
+ cfpu="x87"
+ fi
+
+ einfo ${cfpu}
+
+ local copts="-u"
+
+ if use X; then
+ copts=""
+ fi
+
+ copts+=" -f ${cfpu}"
+
+ local buildimage="bin/lisp -core lib/cmucl/lib/lisp-${cfpu}.core -batch -noinit -nositeinit"
+ env CC="$(tc-getCC)" src/tools/build.sh -C "" -o "${buildimage}" ${copts} || die "Cannot build the compiler"
+}
+
+src_install() {
+ env MANDIR=share/man/man1 DOCDIR=share/doc/${PF} \
+ src/tools/make-dist.sh -S -g -G root -O root build-4 ${MY_PV} x86 linux || die "Cannot build installation archive"
+
+ tar xzpf cmucl-${MY_PV}-x86-linux.tar.gz -C "${D}"/usr || die "Cannot install main system"
+ if use X ; then
+ tar xzpf cmucl-${MY_PV}-x86-linux.extra.tar.gz -C "${D}"/usr || die "Cannot install extra files"
+ fi
+ if use source; then
+ dodir /usr/share/common-lisp/source/${PN} || die "dodir failed"
+ tar --strip-components 1 -xzpf cmucl-src-${MY_PV}.tar.gz \
+ -C "${D}"/usr/share/common-lisp/source/${PN} \
+ || die "tar failed"
+ fi
+
+ # Install site config file
+ sed "s,@PF@,${PF},g ; s,@VERSION@,$(date +%F),g" \
+ < "${FILESDIR}"/site-init.lisp.in \
+ > "${D}"/usr/$(get_libdir)/cmucl/site-init.lisp || die "sed failed"
+ insinto /etc
+ doins "${FILESDIR}"/cmuclrc || die "doins failed"
+}
diff --git a/dev-lisp/cmucl/files/20a-multiplefixes.patch b/dev-lisp/cmucl/files/20a-multiplefixes.patch
new file mode 100644
index 000000000000..ef2d66ff818e
--- /dev/null
+++ b/dev-lisp/cmucl/files/20a-multiplefixes.patch
@@ -0,0 +1,118 @@
+diff -Naur work.old/src/lisp/alpha-assem.S work/src/lisp/alpha-assem.S
+--- work.old/src/lisp/alpha-assem.S 2003-03-06 11:13:09.000000000 -0300
++++ work/src/lisp/alpha-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -297,3 +297,7 @@
+ function_end_breakpoint_end:
+
+
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/amd64-assem.S work/src/lisp/amd64-assem.S
+--- work.old/src/lisp/amd64-assem.S 2004-07-27 19:03:53.000000000 -0300
++++ work/src/lisp/amd64-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -1051,3 +1051,7 @@
+ .end
+
+ #endif /* LINKAGE_TABLE */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/backtrace.c work/src/lisp/backtrace.c
+--- work.old/src/lisp/backtrace.c 2009-06-11 13:04:01.000000000 -0300
++++ work/src/lisp/backtrace.c 2010-05-10 00:06:22.000000000 -0300
+@@ -3,6 +3,8 @@
+ * Simple backtrace facility. More or less from Rob's lisp version.
+ */
+
++#include "os-common.h"
++
+ #include <stdio.h>
+ #include <signal.h>
+ #include "lisp.h"
+diff -Naur work.old/src/lisp/hppa-assem.S work/src/lisp/hppa-assem.S
+--- work.old/src/lisp/hppa-assem.S 2002-08-23 14:05:35.000000000 -0300
++++ work/src/lisp/hppa-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -460,3 +460,7 @@
+
+ .export function_end_breakpoint_end
+ function_end_breakpoint_end
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/linux-stubs.S work/src/lisp/linux-stubs.S
+--- work.old/src/lisp/linux-stubs.S 2005-08-17 00:40:16.000000000 -0300
++++ work/src/lisp/linux-stubs.S 2010-05-10 00:06:34.000000000 -0300
+@@ -995,3 +995,7 @@
+ /* doe(yperr_string) */
+ /* doe(ypprot_err) */
+ #endif /* defined(LINKAGE_TABLE) && !defined(__FreeBSD__) */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/lisp.c work/src/lisp/lisp.c
+--- work.old/src/lisp/lisp.c 2009-07-13 16:41:54.000000000 -0300
++++ work/src/lisp/lisp.c 2010-05-10 00:05:55.000000000 -0300
+@@ -5,6 +5,9 @@
+ *
+ */
+
++#include "os-common.h"
++#include <time.h>
++
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <limits.h>
+diff -Naur work.old/src/lisp/mips-assem.S work/src/lisp/mips-assem.S
+--- work.old/src/lisp/mips-assem.S 2002-08-23 14:01:02.000000000 -0300
++++ work/src/lisp/mips-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -402,3 +402,7 @@
+ move v0, a1
+ j _restore_state
+ .end save_state
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/os-common.h work/src/lisp/os-common.h
+--- work.old/src/lisp/os-common.h 1969-12-31 21:00:00.000000000 -0300
++++ work/src/lisp/os-common.h 2010-05-10 00:06:22.000000000 -0300
+@@ -0,0 +1 @@
++char* convert_lisp_string(char* c_string, void* lisp_string, int len);
+diff -Naur work.old/src/lisp/ppc-assem.S work/src/lisp/ppc-assem.S
+--- work.old/src/lisp/ppc-assem.S 2006-02-25 01:35:58.000000000 -0300
++++ work/src/lisp/ppc-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -721,3 +721,7 @@
+ SET_SIZE(fpu_restore)
+
+ #endif
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/sparc-assem.S work/src/lisp/sparc-assem.S
+--- work.old/src/lisp/sparc-assem.S 2003-10-23 23:57:00.000000000 -0300
++++ work/src/lisp/sparc-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -837,3 +837,7 @@
+ * End:
+ */
+
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/x86-assem.S work/src/lisp/x86-assem.S
+--- work.old/src/lisp/x86-assem.S 2008-12-24 02:36:40.000000000 -0200
++++ work/src/lisp/x86-assem.S 2010-05-10 00:06:34.000000000 -0300
+@@ -798,3 +798,7 @@
+ ENDFUNC(undefined_foreign_symbol_trap)
+
+ #endif /* LINKAGE_TABLE */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
diff --git a/dev-lisp/cmucl/files/20a-patch000.patch b/dev-lisp/cmucl/files/20a-patch000.patch
new file mode 100644
index 000000000000..e11c11ca37f8
--- /dev/null
+++ b/dev-lisp/cmucl/files/20a-patch000.patch
@@ -0,0 +1,16 @@
+diff -ur cmucl.orig/src/code/print.lisp cmucl/src/code/print.lisp
+--- cmucl.orig/src/code/print.lisp 2009-07-06 17:42:34.000000000 +0200
++++ cmucl/src/code/print.lisp 2009-11-09 01:47:01.000000000 +0100
+@@ -2190,8 +2190,11 @@
+ (set-bit #\_ extension-attribute)
+ (set-bit #\. dot-attribute)
+ (set-bit #\/ slash-attribute)
++ (set-bit #\` funny-attribute)
++ (set-bit #\| funny-attribute)
+
+- ;; Make anything not explicitly allowed funny...
++ ;; For everything else, derive the attribute from the Unicode
++ ;; properties of the character.
+ (dotimes (i char-code-limit)
+ (when (zerop (aref character-attributes i))
+ (let* ((char (code-char i)))
diff --git a/dev-lisp/cmucl/files/fix-man-and-doc-installation.patch b/dev-lisp/cmucl/files/fix-man-and-doc-installation.patch
new file mode 100644
index 000000000000..0fe122255c90
--- /dev/null
+++ b/dev-lisp/cmucl/files/fix-man-and-doc-installation.patch
@@ -0,0 +1,42 @@
+Index: tools/make-main-dist.sh
+===================================================================
+RCS file: /project/cmucl/cvsroot/src/tools/make-main-dist.sh,v
+retrieving revision 1.18
+diff -u -w -u -r1.18 make-main-dist.sh
+--- cmucl/src/tools/make-main-dist.sh 13 Aug 2009 14:22:56 -0000 1.18
++++ cmucl/src/tools/make-main-dist.sh 30 Sep 2009 14:26:41 -0000
+@@ -29,6 +29,7 @@
+ fi
+
+ DESTDIR=${INSTALL_DIR:-release-$$}
++DOCDIR=${DOCDIR:-doc/cmucl}
+ MANDIR=${MANDIR:-man/man1}
+ TARGET="`echo $1 | sed 's:/*$::'`"
+ VERSION=$2
+@@ -81,11 +82,11 @@
+ # set -x
+ echo Installing main components
+ install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/bin
+-install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/doc/cmucl
+ install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl
+ install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib
+ install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/subsystems
+ install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/ext-formats
++install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/${DOCDIR}
+ install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/${MANDIR}
+ install ${GROUP} ${OWNER} -m 0755 $TARGET/lisp/lisp $DESTDIR/bin/
+ if [ "$EXECUTABLE" = "true" ]
+@@ -126,11 +127,11 @@
+ $DESTDIR/${MANDIR}/
+ install ${GROUP} ${OWNER} -m 0644 src/general-info/lisp.1 \
+ $DESTDIR/${MANDIR}/
+-install ${GROUP} ${OWNER} -m 0644 src/general-info/README $DESTDIR/doc/cmucl/
++install ${GROUP} ${OWNER} -m 0644 src/general-info/README $DESTDIR/${DOCDIR}
+ if [ -f src/general-info/release-$VERSION.txt ]
+ then
+ install ${GROUP} ${OWNER} -m 0644 src/general-info/release-$VERSION.txt \
+- $DESTDIR/doc/cmucl/
++ $DESTDIR/${DOCDIR}
+ fi
+
+ if [ -z "$INSTALL_DIR" ]; then