diff options
Diffstat (limited to 'app-emacs/slime/slime-2.0_p20080731.ebuild')
-rw-r--r-- | app-emacs/slime/slime-2.0_p20080731.ebuild | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/app-emacs/slime/slime-2.0_p20080731.ebuild b/app-emacs/slime/slime-2.0_p20080731.ebuild new file mode 100644 index 000000000000..64157e2a78b9 --- /dev/null +++ b/app-emacs/slime/slime-2.0_p20080731.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit common-lisp elisp eutils + +DESCRIPTION="SLIME, the Superior Lisp Interaction Mode (Extended)" +HOMEPAGE="http://common-lisp.net/project/slime/" +SRC_URI="mirror://gentoo/${P}.tar.bz2 + mirror://gentoo/${P}-patches.tar.bz2" + +LICENSE="GPL-2 xref.lisp" +SLOT="0" +KEYWORDS="amd64 ppc ~sparc x86" +IUSE="doc" + +RDEPEND="virtual/commonlisp dev-lisp/asdf" +DEPEND="${RDEPEND} + doc? ( virtual/texi2dvi )" + +CLPACKAGE=swank +SITEFILE=70${PN}-gentoo.el + +src_unpack() { + unpack ${A} + cd "${S}" + + EPATCH_SUFFIX=patch epatch + mv "${WORKDIR}/swank.asd" "${S}" || die + + # extract date of last update from ChangeLog, bug 233270 + SLIME_CHANGELOG_DATE=$(awk '/^[-0-9]+ / { print $1; exit; }' ChangeLog) + [ -n "${SLIME_CHANGELOG_DATE}" ] || die "cannot determine ChangeLog date" + + sed -i "/(defvar \*swank-wire-protocol-version\*/s:nil:\"${SLIME_CHANGELOG_DATE}\":" swank.lisp \ + || die "sed swank.lisp failed" + sed -i "s:@SLIME-CHANGELOG-DATE@:${SLIME_CHANGELOG_DATE}:" slime.el \ + || die "sed slime.el failed" +} + +src_compile() { + elisp-compile *.el || die "Cannot compile core Elisp files" + BYTECOMPFLAGS="${BYTECOMPFLAGS} -L contrib -l slime" \ + elisp-compile contrib/*.el || die "Cannot compile contrib Elisp files" + emake -j1 -C doc slime.info || die "Cannot build info docs" + if use doc; then + VARTEXFONTS="${T}"/fonts \ + emake -j1 -C doc slime.{ps,pdf} || die "emake doc failed" + fi +} + +src_install() { + ## install core + elisp-install ${PN} *.el{,c} "${FILESDIR}"/swank-loader.lisp \ + || die "Cannot install SLIME core" + elisp-site-file-install "${FILESDIR}"/${SITEFILE} \ + || die "elisp-site-file-install failed" + # remove upstream swank-loader, since it won't be used + rm "${S}"/swank-loader.lisp + insinto "${CLSOURCEROOT%/}"/swank + doins *.lisp swank.asd + dodir "${CLSYSTEMROOT}" + dosym "${CLSOURCEROOT%/}"/swank/swank.asd "${CLSYSTEMROOT}" + dosym "${SITELISP}"/${PN}/swank-version.el "${CLSOURCEROOT%/}"/swank + + ## install contribs + elisp-install ${PN}/contrib/ contrib/*.{el,elc,scm,goo} \ + || die "Cannot install contribs" + insinto "${CLSOURCEROOT%/}"/swank/contrib + doins contrib/*.lisp + + ## install docs + dodoc README* ChangeLog HACKING NEWS PROBLEMS + newdoc contrib/README README.contrib + newdoc contrib/ChangeLog ChangeLog.contrib + doinfo doc/slime.info + use doc && dodoc doc/slime.{ps,pdf} +} |