| # Copyright 1999-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI=4 |
| |
| inherit eutils multilib |
| MY_P=ecl-${PV} |
| |
| DESCRIPTION="ECL is an embeddable Common Lisp implementation" |
| HOMEPAGE="http://ecls.sourceforge.net/" |
| SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tgz" |
| |
| LICENSE="BSD LGPL-2" |
| SLOT="0" |
| KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux" |
| IUSE="debug emacs gengc precisegc threads +unicode X" |
| |
| RDEPEND="dev-libs/gmp |
| virtual/libffi |
| >=dev-libs/boehm-gc-7.1[threads?]" |
| DEPEND="${RDEPEND} |
| app-text/texi2html |
| emacs? ( virtual/emacs >=app-eselect/eselect-emacs-1.12 )" |
| PDEPEND="dev-lisp/gentoo-init" |
| |
| S="${WORKDIR}"/${MY_P} |
| |
| pkg_setup() { |
| if use gengc || use precisegc; then |
| ewarn "USE flags gengc and precisegc are experimental" |
| ewarn "Don't use them if you want a stable ecl" |
| fi |
| } |
| |
| src_prepare() { |
| epatch "${FILESDIR}"/${PV}-headers-gentoo.patch |
| } |
| |
| src_configure() { |
| econf \ |
| --with-system-gmp \ |
| --enable-boehm=system \ |
| --enable-longdouble \ |
| $(use_enable gengc) \ |
| $(use_enable precisegc) \ |
| $(use_with debug debug-cflags) \ |
| $(use_enable threads) \ |
| $(use_with threads __thread) \ |
| $(use_enable unicode) \ |
| $(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 fails |
| emake -j1 |
| } |
| |
| src_install () { |
| emake DESTDIR="${D}" install |
| |
| dodoc ANNOUNCEMENT Copyright |
| dodoc "${FILESDIR}"/README.Gentoo |
| pushd build/doc > /dev/null |
| newman ecl.man ecl.1 |
| newman ecl-config.man ecl-config.1 |
| popd > /dev/null |
| } |