summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Grozin <grozin@gentoo.org>2015-08-29 14:03:30 +0600
committerAndrey Grozin <grozin@gentoo.org>2015-08-29 14:03:30 +0600
commitd519d4196371e05b3f2cd1a1ef49bd380dcc1d24 (patch)
tree503af10f1a7872446f8e96c9268663e886ab9a8f /dev-lisp/ecls/ecls-16.0.0.ebuild
parentdev-ruby/capybara: version bump (diff)
downloadgentoo-d519d4196371e05b3f2cd1a1ef49bd380dcc1d24.tar.gz
gentoo-d519d4196371e05b3f2cd1a1ef49bd380dcc1d24.tar.bz2
gentoo-d519d4196371e05b3f2cd1a1ef49bd380dcc1d24.zip
dev-lisp/ecls: version bump to 16.0.0
Package-Manager: portage-2.2.20.1
Diffstat (limited to 'dev-lisp/ecls/ecls-16.0.0.ebuild')
-rw-r--r--dev-lisp/ecls/ecls-16.0.0.ebuild91
1 files changed, 91 insertions, 0 deletions
diff --git a/dev-lisp/ecls/ecls-16.0.0.ebuild b/dev-lisp/ecls/ecls-16.0.0.ebuild
new file mode 100644
index 000000000000..a5989febb40f
--- /dev/null
+++ b/dev-lisp/ecls/ecls-16.0.0.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2015 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/${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 CHANGELOG Copyright
+ dodoc "${FILESDIR}"/README.Gentoo
+ pushd build/doc
+ newman ecl.man ecl.1
+ newman ecl-config.man ecl-config.1
+ popd
+}