Merge github#845: app-benchmarks/bonnie++: fixes a couple of bugs and bump to EAPI 6.
[gentoo.git] / dev-lang / crystal / crystal-0.8.0.ebuild
1 # Copyright 1999-2015 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Id$
4
5 EAPI=5
6
7 inherit multilib
8
9 BV=${PV}-1
10 BV_AMD64=${BV}-linux-x86_64
11 BV_X86=${BV}-linux-i686
12
13 DESCRIPTION="The Crystal Programming Language"
14 HOMEPAGE="http://crystal-lang.org"
15 SRC_URI="https://github.com/manastech/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz
16         amd64? ( https://github.com/manastech/crystal/releases/download/${PV}/crystal-${BV_AMD64}.tar.gz )
17         x86? ( https://github.com/manastech/crystal/releases/download/${PV}/crystal-${BV_X86}.tar.gz )"
18
19 LICENSE="Apache-2.0"
20 SLOT="0"
21 KEYWORDS="~amd64"
22 IUSE="doc examples +xml +yaml"
23
24 # dev-libs/boehm-gc[static-libs] dependency problem,  check the issue: https://github.com/manastech/crystal/issues/1382
25 DEPEND="
26         <sys-devel/llvm-3.7.0
27         dev-libs/boehm-gc[static-libs]
28         dev-libs/libatomic_ops
29         dev-libs/libevent
30         dev-libs/libpcre
31         sys-libs/libunwind
32         dev-libs/pcl
33         dev-libs/gmp:0
34 "
35 RDEPEND="${DEPEND}
36         xml? ( dev-libs/libxml2 )
37         yaml? ( dev-libs/libyaml )
38 "
39
40 src_compile() {
41         emake \
42                 release=1 \
43                 PATH="${PATH}":"${WORKDIR}"/${PN}-${BV}/bin \
44                 CRYSTAL_PATH=src \
45                 CRYSTAL_CONFIG_VERSION=${PV} \
46                 CRYSTAL_CONFIG_PATH="libs:/usr/$(get_libdir)/crystal"
47         use doc && emake doc
48 }
49
50 src_test() {
51         emake spec \
52                 CRYSTAL_PATH=src \
53                 CRYSTAL_CONFIG_VERSION=${PV}
54 }
55
56 src_install() {
57         insinto /usr/$(get_libdir)/crystal
58         doins -r src/.
59         dobin .build/crystal
60
61         insinto /usr/share/zsh/site-functions
62         newins etc/completion.zsh _crystal
63
64         use examples && dodoc -r samples
65
66         if use doc ; then
67                 docinto api
68                 dodoc -r doc/.
69         fi
70 }