summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Kennedy <mkennedy@gentoo.org>2006-07-23 06:17:08 +0000
committerMatthew Kennedy <mkennedy@gentoo.org>2006-07-23 06:17:08 +0000
commit2a8d5524ccbeb5ae0805177a3fb9028f4c2030ba (patch)
treed7ffa7886e1ff7ab4a608d8a65ff853248b279df /dev-lisp
parentppc stable, bug #141454 (diff)
downloadgentoo-2-2a8d5524ccbeb5ae0805177a3fb9028f4c2030ba.tar.gz
gentoo-2-2a8d5524ccbeb5ae0805177a3fb9028f4c2030ba.tar.bz2
gentoo-2-2a8d5524ccbeb5ae0805177a3fb9028f4c2030ba.zip
New upstream version; Depend on libsigsegv >= 2.4; Don't unset CFLAGS, CLISP 2.39 now respects them.
(Portage version: 2.1.1_pre3-r3)
Diffstat (limited to 'dev-lisp')
-rw-r--r--dev-lisp/clisp/ChangeLog11
-rw-r--r--dev-lisp/clisp/clisp-2.39.ebuild124
-rw-r--r--dev-lisp/clisp/files/2.39/README.Gentoo11
-rw-r--r--dev-lisp/clisp/files/2.39/clisp.sh118
-rw-r--r--dev-lisp/clisp/files/2.39/fastcgi-Makefile-gentoo.patch16
-rw-r--r--dev-lisp/clisp/files/2.39/install-clc.lisp15
-rw-r--r--dev-lisp/clisp/files/digest-clisp-2.393
7 files changed, 297 insertions, 1 deletions
diff --git a/dev-lisp/clisp/ChangeLog b/dev-lisp/clisp/ChangeLog
index 7fb4468ced49..96571046a0e1 100644
--- a/dev-lisp/clisp/ChangeLog
+++ b/dev-lisp/clisp/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for dev-lisp/clisp
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/clisp/ChangeLog,v 1.52 2006/05/01 19:29:48 mkennedy Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/clisp/ChangeLog,v 1.53 2006/07/23 06:17:08 mkennedy Exp $
+
+*clisp-2.39 (23 Jul 2006)
+
+ 23 Jul 2006; Matthew Kennedy <mkennedy@gentoo.org>
+ +files/2.39/README.Gentoo, +files/2.39/clisp.sh,
+ +files/2.39/fastcgi-Makefile-gentoo.patch, +files/2.39/install-clc.lisp,
+ +clisp-2.39.ebuild:
+ New upstream version; Depend on libsigsegv >= 2.4; Don't unset CFLAGS, CLISP
+ 2.39 now respects them.
01 May 2006; Matthew Kennedy <mkennedy@gentoo.org>
files/digest-clisp-2.38, Manifest:
diff --git a/dev-lisp/clisp/clisp-2.39.ebuild b/dev-lisp/clisp/clisp-2.39.ebuild
new file mode 100644
index 000000000000..245055504073
--- /dev/null
+++ b/dev-lisp/clisp/clisp-2.39.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/clisp/clisp-2.39.ebuild,v 1.1 2006/07/23 06:17:08 mkennedy Exp $
+
+inherit flag-o-matic common-lisp-common-2 eutils toolchain-funcs
+
+DESCRIPTION="A portable, bytecode-compiled implementation of Common Lisp"
+HOMEPAGE="http://clisp.sourceforge.net/"
+SRC_URI="mirror://sourceforge/clisp/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~amd64 ~ppc-macos -sparc ~x86"
+IUSE="X new-clx fastcgi pcre postgres readline zlib"
+
+RDEPEND=">=dev-libs/libsigsegv-2.4
+ >=dev-lisp/common-lisp-controller-4.27
+ sys-devel/gettext
+ virtual/tetex
+ fastcgi? ( dev-libs/fcgi )
+ postgres? ( >=dev-db/postgresql-8.0 )
+ readline? ( sys-libs/readline )
+ pcre? ( dev-libs/libpcre )
+ zlib? ( sys-libs/zlib )
+ X? ( new-clx? ( || ( x11-libs/libXpm virtual/x11 ) ) )"
+
+DEPEND="${RDEPEND}
+ X? ( new-clx? ( || ( ( x11-misc/imake x11-proto/xextproto ) virtual/x11 ) ) )"
+
+PROVIDE="virtual/commonlisp"
+
+pkg_setup() {
+ if use X; then
+ if use new-clx; then
+ einfo "CLISP will be built with NEW-CLX support which is a C binding to Xorg libraries."
+ else
+ einfo "CLISP will be built with MIT-CLX support."
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ epatch ${FILESDIR}/${PV}/fastcgi-Makefile-gentoo.patch
+}
+
+src_compile() {
+ CC="$(tc-getCC)"
+ local myconf="--with-dynamic-ffi
+ --with-module=wildcard
+ --with-module=rawsock"
+ use ppc-macos || myconf="${myconf} --with-module=bindings/glibc"
+ use readline || myconf="${myconf} --with-noreadline"
+ if use X; then
+ if use new-clx; then
+ myconf="${myconf} --with-module=clx/new-clx"
+ else
+ myconf="${myconf} --with-module=clx/mit-clx"
+ fi
+ fi
+ if use postgres; then
+ myconf="${myconf} --with-module=postgresql"
+ CC="${CC} -I $(pg_config --includedir)"
+ fi
+ use fastcgi && myconf="${myconf} --with-module=fastcgi"
+ use pcre && myconf="${myconf} --with-module=pcre"
+ use zlib && myconf="${myconf} --with-module=zlib"
+ einfo "Configuring with ${myconf}"
+ ./configure --prefix=/usr ${myconf} build || die "./configure failed"
+ cd build
+ ./makemake ${myconf} >Makefile
+ emake -j1 config.lisp
+ sed -i 's,"vi","nano",g' config.lisp
+ sed -i 's,http://www.lisp.org/HyperSpec/,http://www.lispworks.com/reference/HyperSpec/,g' config.lisp
+ emake -j1 || die
+}
+
+src_install() {
+ pushd build
+ make DESTDIR=${D} prefix=/usr install-bin || die
+ doman clisp.1
+ dodoc SUMMARY README* NEWS MAGIC.add GNU-GPL COPYRIGHT \
+ ANNOUNCE clisp.dvi clisp.html
+ rm -f ${D}/usr/lib/clisp/base/*
+ (cd ${D}/usr/lib/clisp/base && ln -s ../full/* .)
+ chmod a+x ${D}/usr/lib/clisp/clisp-link
+ popd
+ # install common-lisp-controller profile
+ exeinto /usr/lib/common-lisp/bin
+ doexe ${FILESDIR}/${PV}/clisp.sh
+ insinto /usr/lib/clisp
+ doins ${FILESDIR}/${PV}/install-clc.lisp
+ dodoc ${FILESDIR}/${PV}/README.Gentoo
+ keepdir /usr/lib/common-lisp/clisp
+
+ dohtml doc/impnotes.{css,html}
+ dohtml build/clisp.html
+ dohtml doc/clisp.png
+ dodoc build/clisp.{ps,pdf}
+ dodoc doc/{editors,CLOS-guide,LISP-tutorial}.txt
+}
+
+pkg_preinst() {
+ local clisp_dir=/usr/lib/clisp
+ local old_mem=$clisp_dir/full/lispinit.mem
+ local new_mem=$clisp_dir/full/lispinit-new.mem
+ local clean_mem=$clisp_dir/full/lispinit-clean.mem
+ local lisp_run=$clisp_dir/full/lisp.run
+ rm -f $old_mem $new_mem $clean_mem $lisp_run
+}
+
+pkg_postinst() {
+ standard-impl-postinst clisp
+}
+
+pkg_postrm() {
+ standard-impl-postrm clisp /usr/bin/clisp
+}
+
+pkg_postrm() {
+ if [ ! -x /usr/bin/clisp ]; then
+ rm -rf /usr/lib/clisp/ || die
+ fi
+}
diff --git a/dev-lisp/clisp/files/2.39/README.Gentoo b/dev-lisp/clisp/files/2.39/README.Gentoo
new file mode 100644
index 000000000000..6bec925fb0d3
--- /dev/null
+++ b/dev-lisp/clisp/files/2.39/README.Gentoo
@@ -0,0 +1,11 @@
+ -*-outline-*-
+
+* Gentoo Specific Notes
+
+The CLISP port for Gentoo uses Common Lisp Controller related code
+(install-clc.lisp and clisp.sh) from Debian. This code contains the following
+copyright:
+
+ ;;;; Copyright (c) 2004 Kevin M. Rosenberg
+ ;;;; GNU GPL v2 license
+
diff --git a/dev-lisp/clisp/files/2.39/clisp.sh b/dev-lisp/clisp/files/2.39/clisp.sh
new file mode 100644
index 000000000000..f5ed6a1d8fce
--- /dev/null
+++ b/dev-lisp/clisp/files/2.39/clisp.sh
@@ -0,0 +1,118 @@
+#!/bin/sh
+# Copyright (c) 2002 Kevin M. Rosenberg
+# GNU GPL v2 license
+
+if [ ! -f /usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp ] ; then
+ echo "*** Can't find common-lisp-controller.lisp ***" >&2
+ echo "Please report this as a bug" &>2
+ exit 1
+fi
+
+clisp_dir=/usr/lib/clisp
+clc_lib_dir=/usr/lib/common-lisp/clisp
+
+builder=/usr/bin/clisp
+old_mem=$clisp_dir/full/lispinit.mem
+new_mem=$clisp_dir/full/lispinit-new.mem
+clean_mem=$clisp_dir/full/lispinit-clean.mem
+
+lisp_error()
+{
+ echo "Error running $builder" >&2
+ exit 1
+}
+
+mem_error()
+{
+ echo "Error moving new lisp image $new_mem" >&2
+ exit 1
+}
+
+
+case $1 in
+ rebuild)
+ echo $0 Rebuilding packages...
+ shift
+ while [ -x $builder ] && [ ! -z "$1" ] ; do
+ echo ...rebuilding $1
+ $builder -norc -q -M $old_mem -x "
+(let ((*compile-print* nil)
+ (*compile-progress* nil)
+ (*compile-verbose* nil)
+ (*require-verbose* nil)
+ (*load-verbose* nil)
+ (mk::*load-source-if-no-binary* nil)
+ (mk::*bother-user-if-no-binary* nil)
+ (mk::*compile-during-load* t))
+ (handler-case
+ (progn
+ (c-l-c:compile-library (quote $1))
+ (ext:exit 0)
+ )
+ (error (e)
+ (ignore-errors (format t \"~&Build error: ~A~%\" e))
+ (finish-output)
+ (ext:exit 1))))" || exit 1
+ shift
+ done
+ ;;
+ remove)
+ echo $0 Removing packages...
+ shift
+ while [ ! -z "$1" ] ; do
+ echo ...removing package $1
+ rm -rf "${clc_lib_dir}/$1"
+ shift
+ done
+ rmdir $clc_lib_dir 2> /dev/null
+ ;;
+ install-clc)
+ echo Installing clc...
+ if [ ! -f $clean_mem ]; then
+ cp $old_mem $clean_mem
+ fi
+ if [ -x $clisp_dir/$lisp_builder ]; then
+ $builder -norc -q -M $clean_mem \
+ -x "
+(handler-case
+ (progn
+ (when (find-package :c-l-c) ; have to remove
+ (delete-package :c-l-c)) ; for clisp workaround
+ (load \"$clisp_dir/install-clc.lisp\")
+ (saveinitmem \"${new_mem}\")
+ (ext:exit 0))
+ (error (e)
+ (ignore-errors (format t \"~&install-clc error: ~A~%\" e))
+ (finish-output)
+ (ext:exit 1)))" || lisp_error
+ mv $new_mem $old_mem || mem_error
+ fi
+ ;;
+ remove-clc)
+ if [ -f $clean_mem ]; then
+ cp $clean_mem $old_mem
+ else
+ echo "Warning: Can't find original image file $clean_mem. Aborting." >& 2
+ fi
+ ;;
+ make-user-image)
+ if [ ! -f $2 ] ; then
+ echo "Trying to make-user image, but can not find file $2" >&2
+ exit 1
+ fi
+ $builder -norc -q -M $old_mem \
+ -x "(progn
+ (load \"$2\")
+ (saveinitmem \"${new_mem}\"))
+ (ext:exit 0)" || lisp_error
+ mv $new_mem $old_mem || mem_error
+ ;;
+ *)
+ echo "`basename $0`: Unknown command $1" >&2
+ echo "Known commands are:" >&2
+ echo "install-clc, remove-clc, rebuild, remove, and make-user-image" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/dev-lisp/clisp/files/2.39/fastcgi-Makefile-gentoo.patch b/dev-lisp/clisp/files/2.39/fastcgi-Makefile-gentoo.patch
new file mode 100644
index 000000000000..982ec67458ef
--- /dev/null
+++ b/dev-lisp/clisp/files/2.39/fastcgi-Makefile-gentoo.patch
@@ -0,0 +1,16 @@
+diff -ur clisp-2.39.orig/modules/fastcgi/Makefile.in clisp-2.39/modules/fastcgi/Makefile.in
+--- clisp-2.39.orig/modules/fastcgi/Makefile.in 2004-08-12 09:38:36.000000000 -0500
++++ clisp-2.39/modules/fastcgi/Makefile.in 2006-04-24 15:14:38.000000000 -0500
+@@ -23,10 +23,10 @@
+ $(CLISP) -c fastcgi.lisp
+
+ fastcgi.o: fastcgi.c
+- $(CC) $(CPPFLAGS) $(CFLAGS) $(INCLUDES) -I.. -c fastcgi.c
++ $(CC) $(CPPFLAGS) $(CFLAGS) -I$(INCLUDES) -I.. -c fastcgi.c
+
+ fastcgi_wrappers.o: fastcgi_wrappers.c
+- $(CC) $(CPPFLAGS) $(CFLAGS) $(INCLUDES) -I.. -c fastcgi_wrappers.c
++ $(CC) $(CPPFLAGS) $(CFLAGS) -I$(INCLUDES) -I.. -c fastcgi_wrappers.c
+
+ # Make a module
+ clisp-module : all
diff --git a/dev-lisp/clisp/files/2.39/install-clc.lisp b/dev-lisp/clisp/files/2.39/install-clc.lisp
new file mode 100644
index 000000000000..06cb217d32cf
--- /dev/null
+++ b/dev-lisp/clisp/files/2.39/install-clc.lisp
@@ -0,0 +1,15 @@
+;;;; -*- Mode: Lisp; Package: CL-USER -*-
+;;;; Copyright (c) 2004 Kevin M. Rosenberg
+;;;; GNU GPL v2 license
+
+(in-package #:cl-user)
+
+(handler-case
+ (load "/usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp")
+ (error (e)
+ (format t "Error during loading of common-lisp-controller.lisp: ~A~%" e)))
+
+(handler-case
+ (common-lisp-controller:init-common-lisp-controller-v4 "clisp")
+ (error (e)
+ (format t "Error during init-common-lisp-controller-v4: ~A~%" e)))
diff --git a/dev-lisp/clisp/files/digest-clisp-2.39 b/dev-lisp/clisp/files/digest-clisp-2.39
new file mode 100644
index 000000000000..5f462c75265c
--- /dev/null
+++ b/dev-lisp/clisp/files/digest-clisp-2.39
@@ -0,0 +1,3 @@
+MD5 70ea408e7c9b69d5feb5e408084ecfff clisp-2.39.tar.bz2 8071957
+RMD160 b31e53cb97a116c683543ee74093fe2a05ed9ea4 clisp-2.39.tar.bz2 8071957
+SHA256 9e7db421d076420d60652e7bdaf8241e36d1db6a4cad2a8253afc9952200bbb7 clisp-2.39.tar.bz2 8071957