commit: de410db0d5c7eea1f48d21b7a1664fc39bbf3aaa Author: Chema Alonso Josa <nimiux <AT> gentoo <DOT> org> AuthorDate: Sun Oct 2 13:30:48 2016 +0000 Commit: José María Alonso <nimiux <AT> gentoo <DOT> org> CommitDate: Sun Oct 2 13:30:48 2016 +0000 URL: https://gitweb.gentoo.org/proj/lisp.git/commit/?id=de410db0
dev-lisp/picolisp: Bump to version 16.6 Fixes bug #502290 dev-lisp/picolisp/metadata.xml | 10 ++- dev-lisp/picolisp/picolisp-16.6.ebuild | 121 +++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+), 1 deletion(-) diff --git a/dev-lisp/picolisp/metadata.xml b/dev-lisp/picolisp/metadata.xml index 0db9cf2..0160260 100644 --- a/dev-lisp/picolisp/metadata.xml +++ b/dev-lisp/picolisp/metadata.xml @@ -1,7 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <herd>common-lisp</herd> + <maintainer type="project"> + <email>[email protected]</email> + </maintainer> <upstream> <maintainer status="active"> <email>[email protected]</email> @@ -13,4 +15,10 @@ <longdescription lang="en"> A fast and lightweight Lisp interpreter, with a focus on databases. </longdescription> + <use> + <flag name="bash-completion">Enable bash-completion support</flag> + <flag name="doc">Add extra documentation</flag> + <flag name="examples">Install examples</flag> + <flag name="src">Install to src</flag> + </use> </pkgmetadata> diff --git a/dev-lisp/picolisp/picolisp-16.6.ebuild b/dev-lisp/picolisp/picolisp-16.6.ebuild new file mode 100644 index 0000000..b3ad397 --- /dev/null +++ b/dev-lisp/picolisp/picolisp-16.6.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils bash-completion-r1 toolchain-funcs + +URI_FILENAME="picoLisp" +URI_DOMAIN="http://software-lab.de/" +URI_PREFIX="${URI_DOMAIN}${URI_FILENAME}" +URI_SUFFIX=".tgz" + +if [[ ${PV} != 9999 ]] ; then + SRC_URI="${URI_PREFIX}-${PV}${URI_SUFFIX}" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="A fast and lightweight Lisp interpreter" +HOMEPAGE="http://picolisp.com/" + +LICENSE="MIT" +SLOT="0" +IUSE="bash-completion doc examples src" + +QA_PREBUILT="*" + +S="${WORKDIR}/picoLisp" + +livefetch() { + FILENAME="${1##*/}" + einfo "Fetching ${FILENAME}" + wget "${1}" || die + tar xf "${FILENAME}" || die +} + +pre_src_unpack() { + [[ ${PV} == 9999 ]] && livefetch "${URI_PREFIX}${URI_SUFFIX}" + use amd64 && livefetch "${URI_DOMAIN}x86-64.linux${URI_SUFFIX}" +} + +src_prepare() { + find . -type f -executable -exec sed -i "s#!bin/picolisp lib.l#!/usr/bin/picolisp /usr/lib/picolisp/lib.l#" {} \; + sed -i "s# test -x /usr/bin/picolisp# false#" src64/mkAsm || die + epatch_user +} + +src_compile() { + if use amd64; then + cd src64 || die + mv ../../src64/*.s . || die + einfo "Phase 1: building ${PN} with prebuild *.s files" + emake CC="$(tc-getCC)" AS="$(tc-getAS)" + einfo 'Phase 2: building ${PN} using ${PN}' + emake clean + emake CC="$(tc-getCC)" AS="$(tc-getAS)" + else + cd src || die + emake CC="$(tc-getCC)" AS="$(tc-getAS)" + fi +} + +src_install() { + DLIB=/usr/$(get_libdir)/${PN} + + #FIXME add vimsyntax support + rm -rf lib/vim + + for FILE in picolisp pil; do + dobin "bin/${FILE}" + rm "bin/${FILE}" || die + done + exeinto $DLIB/bin + doexe bin/* + + insinto $DLIB + use bash-completion && newbashcomp lib/bash_completion "${PN}" + rm -rf lib/bash_completion lib/el + doins -r *.l *.css lib loc + if use amd64 && use src; then + DSRC=${DLIB}/src64 + insinto $DSRC + doins -r src64/*.l src64/lib + insinto $DSRC/arch + doins -r src64/arch/x86-64.l + insinto $DSRC/sys + doins -r src64/sys/x86-64.linux.* + fi + doman man/*/* + DSHARE=/usr/share/${PN} + insinto $DSHARE + doins -r img + dosym $DSHARE/img $DLIB/img + dodoc CHANGES CREDITS INSTALL README + if use doc; then + DDOC=/usr/share/doc/${PF} + insinto $DDOC + doins doc/quine doc/db doc/travel doc/utf8 doc/vim-tsm + dohtml doc/* + insinto $DDOC/html + doins doc/family.l doc/shape.l doc/fun.l doc/hello.l + if use amd64; then + doins doc/family64.tgz + insinto $DDOC + doins -r doc64 + else + doins doc/family.tgz + insinto $DDOC + doins doc/structures + fi + dosym $DDOC/html $DLIB/doc + fi + if use examples; then + insinto $DSHARE + doins -r app games misc opt + exeinto $DSHARE/misc + doexe misc/bigtest misc/calc misc/chat misc/mailing + exeinto $DSHARE/games + doexe games/xchess + fi +}
