commit:     8afadd064d413c088d88d34845fd500b2c00c698
Author:     Andrey Grozin <grozin <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  2 08:18:33 2016 +0000
Commit:     Andrey Grozin <grozin <AT> gentoo <DOT> org>
CommitDate: Wed Mar  2 08:19:18 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8afadd06

dev-lisp/ecls: add C++ support to 16.0.0 and 16.1.2

Bug: 576048

Package-Manager: portage-2.2.27

 dev-lisp/ecls/ecls-16.0.0-r1.ebuild | 92 +++++++++++++++++++++++++++++++++++++
 dev-lisp/ecls/ecls-16.1.2-r1.ebuild | 92 +++++++++++++++++++++++++++++++++++++
 2 files changed, 184 insertions(+)

diff --git a/dev-lisp/ecls/ecls-16.0.0-r1.ebuild 
b/dev-lisp/ecls/ecls-16.0.0-r1.ebuild
new file mode 100644
index 0000000..f4a3794
--- /dev/null
+++ b/dev-lisp/ecls/ecls-16.0.0-r1.ebuild
@@ -0,0 +1,92 @@
+# 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/${MY_P}.tgz";
+
+LICENSE="BSD LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="cxx 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_with cxx) \
+               $(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
+}

diff --git a/dev-lisp/ecls/ecls-16.1.2-r1.ebuild 
b/dev-lisp/ecls/ecls-16.1.2-r1.ebuild
new file mode 100644
index 0000000..1d068dc
--- /dev/null
+++ b/dev-lisp/ecls/ecls-16.1.2-r1.ebuild
@@ -0,0 +1,92 @@
+# 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="cxx 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_with cxx) \
+               $(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
+}

Reply via email to