From 818a3be725caad1597aa8ef3d4b37033160309a7 Mon Sep 17 00:00:00 2001 From: Chema Alonso Josa Date: Sun, 29 Oct 2017 19:41:47 +0100 Subject: dev-lisp/alexandria: Adds new package Package-Manager: Portage-2.3.8, Repoman-2.3.3 --- dev-lisp/alexandria/Manifest | 1 + dev-lisp/alexandria/alexandria-20171029.ebuild | 39 +++++++++++++++++++ .../files/alexandria-fix-docstrings.patch | 29 ++++++++++++++ dev-lisp/alexandria/metadata.xml | 44 ++++++++++++++++++++++ 4 files changed, 113 insertions(+) create mode 100644 dev-lisp/alexandria/Manifest create mode 100644 dev-lisp/alexandria/alexandria-20171029.ebuild create mode 100644 dev-lisp/alexandria/files/alexandria-fix-docstrings.patch create mode 100644 dev-lisp/alexandria/metadata.xml (limited to 'dev-lisp') diff --git a/dev-lisp/alexandria/Manifest b/dev-lisp/alexandria/Manifest new file mode 100644 index 00000000000..a6229f292bb --- /dev/null +++ b/dev-lisp/alexandria/Manifest @@ -0,0 +1 @@ +DIST alexandria-20171029.tar.bz2 45812 SHA256 03941516cb60344a505f6e4c9a323ad3ca7f4b64a6984452c6d0a5bc94cb99c1 SHA512 a0a7386af94bae00139e3d06306169883cb1c5498c84d7a6db552a5dfa2ff8516d62609cb8a059c11f4200d507737ba99032d81b5a97112a2f3e7850572060e2 WHIRLPOOL d5c13ff07f3602d6697a5d7165d7ab0b261e93364ff53287fa308db237d93a2abdd94cb4d5aa5784bef19a8443670ace9c5149be8876bed0f70ab277f3f446f4 diff --git a/dev-lisp/alexandria/alexandria-20171029.ebuild b/dev-lisp/alexandria/alexandria-20171029.ebuild new file mode 100644 index 00000000000..c5656e8f3de --- /dev/null +++ b/dev-lisp/alexandria/alexandria-20171029.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit common-lisp-3 eutils + +DESCRIPTION="A collection of public domain utilities." +HOMEPAGE="http://common-lisp.net/project/alexandria/" +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.common-lisp.net/alexandria/alexandria.git" +else + SRC_URI="mirror://gentoo/${P}.tar.bz2" + KEYWORDS="~amd64 ~ppc ~sparc ~x86" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="doc" + +DEPEND="doc? ( sys-apps/texinfo )" +RDEPEND="" + +src_prepare() { + eapply "${FILESDIR}/${PN}-fix-docstrings.patch" + eapply_user +} + +src_compile() { + use doc && emake -C doc +} + +src_install() { + common-lisp-install-sources -t all *.lisp LICENCE + common-lisp-install-asdf + dodoc README AUTHORS + use doc && doinfo doc/${PN}.info && dodoc doc/{"${PN}.html","${PN}.pdf"} +} diff --git a/dev-lisp/alexandria/files/alexandria-fix-docstrings.patch b/dev-lisp/alexandria/files/alexandria-fix-docstrings.patch new file mode 100644 index 00000000000..747c9e3bf59 --- /dev/null +++ b/dev-lisp/alexandria/files/alexandria-fix-docstrings.patch @@ -0,0 +1,29 @@ +diff -Nuar a/doc/docstrings.lisp b/doc/docstrings.lisp +--- a/doc/docstrings.lisp 2016-12-11 00:04:21.272877121 +0100 ++++ b/doc/docstrings.lisp 2016-12-11 00:05:03.752876882 +0100 +@@ -718,7 +718,7 @@ + ;; sbcl.texinfo defines macros that expand @&key and friends to &key. + (mapcar (lambda (name) + (if (member name lambda-list-keywords) +- (format nil "@~A" name) ++ (format nil "~A" name) + name)) + (lambda-list doc))))) + +@@ -833,11 +833,11 @@ + (flet ((macro (name) + (let ((string (string-downcase name))) + (format *texinfo-output* "@macro ~A~%~A~%@end macro~%" string string)))) +- (macro '&allow-other-keys) +- (macro '&optional) +- (macro '&rest) +- (macro '&key) +- (macro '&body))) ++ (macro 'allow-other-keys) ++ (macro 'optional) ++ (macro 'rest) ++ (macro 'key) ++ (macro 'body))) + + (defun generate-includes (directory packages &key (base-package :cl-user)) + "Create files in `directory' containing Texinfo markup of all diff --git a/dev-lisp/alexandria/metadata.xml b/dev-lisp/alexandria/metadata.xml new file mode 100644 index 00000000000..937bb81734f --- /dev/null +++ b/dev-lisp/alexandria/metadata.xml @@ -0,0 +1,44 @@ + + + + + common-lisp@gentoo.org + Gentoo Common Lisp Project + + + Alexandria is a project and a library. + + As a project Alexandria's goal is to reduce duplication of effort and + improve portability of Common Lisp code according to its own + idiosyncratic and rather conservative aesthetic. What this actually + means is open to debate, but each project member has a veto on all + project activities, so a degree of conservativism is inevitable. + + As a library Alexandria is one of the means by which the project + strives for its goals. Alexandria is a collection of portable public + domain utilities that meet the following constraints: + + * Utilities, not extensions: Alexandria will not contain conceptual + extensions to Common Lisp, instead limiting itself to tools and + utilities that fit well within the framework of standard ANSI Common + Lisp. Test-frameworks, system definitions, logging facilities, + serialization layers, etc. are all outside the scope of Alexandria + as a library, though well within the scope of Alexandria as a project. + * Conservative: Alexandria limits itself to what project members + consider conservative utilities. Alexandria does not and will not + include anaphoric constructs, loop-like binding macros, etc. + * Portable: Alexandria limits itself to portable parts of Common + Lisp. Even apparently conservative and usefull functions remain + outside the scope of Alexandria if they cannot be implemented + portably. Portability is here defined as portable within a + conforming implementation: implementation bugs are not considered + portability issues. + * Team player: Alexandria will not (initially, at least) subsume + or provide functionality for which good-quality special-purpose + packages exist, like split-sequence. Instead, third party packages + such as that may be "blessed". + + + alexandria/alexandria + + -- cgit v1.2.1