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
+}

Reply via email to