dev-lisp/ecls: bump to 16.1.2
authorAndrey Grozin <grozin@gentoo.org>
Mon, 29 Feb 2016 12:25:52 +0000 (18:25 +0600)
committerAndrey Grozin <grozin@gentoo.org>
Mon, 29 Feb 2016 12:25:52 +0000 (18:25 +0600)
Package-Manager: portage-2.2.27

dev-lisp/ecls/Manifest
dev-lisp/ecls/ecls-16.1.2.ebuild [new file with mode: 0644]
dev-lisp/ecls/files/16.1.2-headers-gentoo.patch [new file with mode: 0644]

index 5e7ce279bed9b8e94910e0e9b5b2ff669ea4aaaa..4231f5ba5eb7d97086c374069fb747884db3b831 100644 (file)
@@ -2,3 +2,4 @@ DIST ecl-12.12.1.tgz 9006697 SHA256 54e77ce8157752eab49f8640f7d0077522d493a4d4de
 DIST ecl-13.5.1.tgz 9401163 SHA256 f91c57ce065fe9748bc8104e191e4b2dcfe854d634315fe7800dd0a613472ca2 SHA512 a09f8b824aa78e461d700eefb1a8b68b876e15d49124a397e0b5b58ad73b80f818133a7b8e48ddb83505eea2f9c5fb024de8701b527524004e336e456eb07c84 WHIRLPOOL def6de6444430e45bfff29c0716a23869e3455ba9b1cd9bfc1f02ef5c79c83df5b2280b8bada28acb1e742cdbe5c819970273386333d7c7c7c4fb48464dc6a2b
 DIST ecl-15.3.7.tgz 8755180 SHA256 2dc6ffbbf1e0a7b1323d49a991ba1f005127ca3e153651d91ba9e65bdaec948f SHA512 50a28ed551e507bee526ae44a12da2524c1feedf07cf8ca99650e37ecd7b99c4e2f2758c077979b174d303ffdcd9325637b708a29d14d8c3851c7e65d4ea026c WHIRLPOOL 57b0382b0e3dc7cd601b835a371c9ec6658911b1471cb5bfeee6144d22500e8ca55268f2a001c49d446e9be1a3771ca12348f2565f68ec83f1660c4295545a06
 DIST ecl-16.0.0.tgz 8009304 SHA256 343ed4c3e4906562757a6039b85ce16d33dd5e8001d74004936795983e3af033 SHA512 15e4c604901dae1037e54ab1739d45a0f5f05decf6e72ba60d8b6b53e549021e93b811b809c4a72f423a20e9f9770969910d35edd5f184757293f98f89024c3a WHIRLPOOL 1af13ce81017bdad0ad6ee235beea9cc3e79d4b09b3863911a8092fd69a8d15f9c6eb75603c62d291450001d900cc1074c8882beb4c6da011b368b2a7f8fe7b5
+DIST ecl-16.1.2.tgz 7449461 SHA256 2d482b1a0a4fbd5d881434517032279d808cb6405e22dd91ef6d733534464b99 SHA512 f204494907226a12b4ecabc39d555f27c1ce5cba515fccd187d9b7ee584d86278558d6a26b2bbec98bce582239f21ac00c2d854f594c6b1f21e1636793845926 WHIRLPOOL 1590695d82c274d06806bffdadb872fba9b870efd19e234fd265b07911cd0bdfe456ddc16e63f9fd707559750a0373739627d440f91567084ee9e0c72b640f40
diff --git a/dev-lisp/ecls/ecls-16.1.2.ebuild b/dev-lisp/ecls/ecls-16.1.2.ebuild
new file mode 100644 (file)
index 0000000..1958787
--- /dev/null
@@ -0,0 +1,91 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils multilib
+
+# test phase only works if ecls already installed #516876
+RESTRICT="test"
+
+MY_P=ecl-${PV}
+
+DESCRIPTION="ECL is an embeddable Common Lisp implementation"
+HOMEPAGE="https://common-lisp.net/project/ecl/"
+SRC_URI="https://common-lisp.net/project/ecl/files/release/${PV}/${MY_P}.tgz"
+
+LICENSE="BSD LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="debug emacs gengc precisegc cpu_flags_x86_sse +threads +unicode +libatomic X"
+
+CDEPEND="dev-libs/gmp:0
+               virtual/libffi
+               libatomic? ( dev-libs/libatomic_ops )
+               >=dev-libs/boehm-gc-7.1[threads?]
+               >=dev-lisp/asdf-2.33-r3:="
+DEPEND="${CDEPEND}
+               app-text/texi2html
+               emacs? ( virtual/emacs >=app-eselect/eselect-emacs-1.12 )"
+RDEPEND="${CDEPEND}"
+
+S="${WORKDIR}"/${MY_P}
+
+pkg_setup () {
+       if use gengc || use precisegc ; then
+               ewarn "You have enabled the generational garbage collector or"
+               ewarn "the precise collection routines. These features are not very stable"
+               ewarn "at the moment and may cause crashes."
+               ewarn "Don't enable them unless you know what you're doing."
+       fi
+}
+
+src_prepare() {
+       epatch "${FILESDIR}"/${PV}-headers-gentoo.patch
+       cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
+}
+
+src_configure() {
+       econf \
+               --with-system-gmp \
+               --enable-boehm=system \
+               --enable-longdouble=yes \
+               --with-dffi \
+               $(use_enable gengc) \
+               $(use_enable precisegc) \
+               $(use_with debug debug-cflags) \
+               $(use_enable libatomic libatomic system) \
+               $(use_with cpu_flags_x86_sse sse) \
+               $(use_enable threads) \
+               $(use_with threads __thread) \
+               $(use_enable unicode) \
+               $(use_with unicode unicode-names) \
+               $(use_with X x) \
+               $(use_with X clx)
+}
+
+src_compile() {
+       if use emacs; then
+               local ETAGS=$(eselect --brief etags list | sed -ne '/emacs/{p;q}')
+               [[ -n ${ETAGS} ]] || die "No etags implementation found"
+               pushd build > /dev/null || die
+               emake ETAGS=${ETAGS} TAGS
+               popd > /dev/null
+       else
+               touch build/TAGS
+       fi
+
+       #parallel make fails
+       emake -j1 || die "Compilation failed"
+}
+
+src_install () {
+       emake DESTDIR="${D}" install || die "Installation failed"
+
+       dodoc README.md CHANGELOG
+       dodoc "${FILESDIR}"/README.Gentoo
+       pushd build/doc
+       newman ecl.man ecl.1
+       newman ecl-config.man ecl-config.1
+       popd
+}
diff --git a/dev-lisp/ecls/files/16.1.2-headers-gentoo.patch b/dev-lisp/ecls/files/16.1.2-headers-gentoo.patch
new file mode 100644 (file)
index 0000000..193822a
--- /dev/null
@@ -0,0 +1,13 @@
+diff -r -U1 ecl-16.1.2.orig/src/h/object.h ecl-16.1.2/src/h/object.h
+--- ecl-16.1.2.orig/src/h/object.h     2016-02-25 08:06:19.000000000 +0100
++++ ecl-16.1.2/src/h/object.h  2016-02-29 12:46:56.846308964 +0100
+@@ -27,4 +27,9 @@
++#ifndef TRUE
+ #define TRUE            1       /*  boolean true value  */
++#endif
++
++#ifndef FALSE
+ #define FALSE           0       /*  boolean false value  */
++#endif