summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChema Alonso Josa <nimiux@gentoo.org>2017-10-29 19:41:47 +0100
committerChema Alonso Josa <nimiux@gentoo.org>2017-10-29 19:42:47 +0100
commit818a3be725caad1597aa8ef3d4b37033160309a7 (patch)
tree570defbece6fa6df6678606bd652bc2ccd7f8d06 /dev-lisp
parentdev-python/virtualenvwrapper: 4.8.2 bup (diff)
downloadgentoo-818a3be725caad1597aa8ef3d4b37033160309a7.tar.gz
gentoo-818a3be725caad1597aa8ef3d4b37033160309a7.tar.bz2
gentoo-818a3be725caad1597aa8ef3d4b37033160309a7.zip
dev-lisp/alexandria: Adds new package
Package-Manager: Portage-2.3.8, Repoman-2.3.3
Diffstat (limited to 'dev-lisp')
-rw-r--r--dev-lisp/alexandria/Manifest1
-rw-r--r--dev-lisp/alexandria/alexandria-20171029.ebuild39
-rw-r--r--dev-lisp/alexandria/files/alexandria-fix-docstrings.patch29
-rw-r--r--dev-lisp/alexandria/metadata.xml44
4 files changed, 113 insertions, 0 deletions
diff --git a/dev-lisp/alexandria/Manifest b/dev-lisp/alexandria/Manifest
new file mode 100644
index 000000000000..a6229f292bb2
--- /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 000000000000..c5656e8f3de0
--- /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 000000000000..747c9e3bf59d
--- /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 000000000000..937bb81734f3
--- /dev/null
+++ b/dev-lisp/alexandria/metadata.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>common-lisp@gentoo.org</email>
+ <name>Gentoo Common Lisp Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ 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".
+ </longdescription>
+ <upstream>
+ <remote-id type="gitlab">alexandria/alexandria</remote-id>
+ </upstream>
+</pkgmetadata>