dev-lang/crystal: 0.21.0
authorSergei Trofimovich <slyfox@gentoo.org>
Mon, 20 Feb 2017 22:20:50 +0000 (22:20 +0000)
committerSergei Trofimovich <slyfox@gentoo.org>
Mon, 20 Feb 2017 22:21:48 +0000 (22:21 +0000)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

dev-lang/crystal/Manifest
dev-lang/crystal/crystal-0.21.0.ebuild [new file with mode: 0644]

index ad5c9f6f8fcaa651eb963ded602360ea84deee3d..3a8bcb141449bf06228bd63ac35f62c34624d87c 100644 (file)
@@ -2,3 +2,4 @@ DIST crystal-0.20.4-1-linux-i686.tar.gz 17176550 SHA256 93e7df2bea3220728987a49a
 DIST crystal-0.20.4-1-linux-x86_64.tar.gz 17733333 SHA256 cdc11c30235f8bd3b89e1fc13b56838f99d585715fb66563d6599026f5393e37 SHA512 4f443c6e50962f5d7629ea6b3066443b5521cc58066bd944a5f61a1fb4dcd2593b09f71099d2fc86e64c167aa52d8cd566518f8bec30cc7294e03deb1910cf7c WHIRLPOOL 08026df37fefc8d8c3a4d9d9fdd397efbb453b6f2944778f413694d8d9433c62e5837db25caeba1540124aa4cad6847fca1d71f1b148990a09cbb850e6d9500c
 DIST crystal-0.20.4.tar.gz 1537577 SHA256 fd099f278b71bbb5cad1927c93933d1feba554fbf8f6f4ab9165f535765f5e31 SHA512 1ded5cf104314b6b8b76fa519ec87a913a40a8bdb82445fe78b3f942567abe8c354cefcdd360c365e0c9f0756fc0e4819eec681584c11f94c9838e9a61ec89fe WHIRLPOOL f51185267fd2152e7acbb0528cabf17c973e763db3cb097c13ec805cee44f191f9054bb2dfbfa6b885dab850c7a24ae722b0c238c7ba8d1296de1e06060ebba9
 DIST crystal-0.20.5.tar.gz 1550878 SHA256 ee1e5948c6e662ccb1e62671cf2c91458775b559b23d74ab226dc2a2d23f7707 SHA512 cb27ad485f5bf51307541901a230f635e1b3922f3802fc4db0a8746c7aa3399940791f9ec7d7e71325af5c93e8928f4a94b30a25d87e7ed45fa77661ddd876f0 WHIRLPOOL 7d1d2011b6319ebf50ba10935e3d55b5320d0e2bdf3fe00ace16aef74a740449968c1230d7ccb5033d8ef0ef222fd323ad226bed15a0573d666d8fae05caffef
+DIST crystal-0.21.0.tar.gz 1584649 SHA256 4dd01703f5304a0eda7f02fc362fba27ba069666097c0f921f8a3ee58808779c SHA512 35c1c770c1771c1b1ee32d14bbf749ab42dd0c2adf3bec59ad26474513e2f8d53a792dd478cb2a3b6127e69adc4326191cb65fd1e7a2d6f79610abc7eb34e4db WHIRLPOOL e71eb5dc8ec89c879d4f62b008f9e2ac6f6dd3041488c3f03ca08f0109e46f9d1aae8b03424a3e15f8035f271b7cb6288bf9268314dc6ece52d70c5b0678cde6
diff --git a/dev-lang/crystal/crystal-0.21.0.ebuild b/dev-lang/crystal/crystal-0.21.0.ebuild
new file mode 100644 (file)
index 0000000..f970bea
--- /dev/null
@@ -0,0 +1,92 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit multiprocessing toolchain-funcs
+
+BV=0.20.4-1
+BV_AMD64=${BV}-linux-x86_64
+BV_X86=${BV}-linux-i686
+
+DESCRIPTION="The Crystal Programming Language"
+HOMEPAGE="http://crystal-lang.org"
+SRC_URI="https://github.com/crystal-lang/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz
+       amd64? ( https://github.com/crystal-lang/crystal/releases/download/${PV}/crystal-${BV_AMD64}.tar.gz )
+       x86? ( https://github.com/crystal-lang/crystal/releases/download/${PV}/crystal-${BV_X86}.tar.gz )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc debug examples +xml +yaml"
+
+# dev-libs/boehm-gc[static-libs] dependency problem,  check the issue: https://github.com/manastech/crystal/issues/1382
+DEPEND="
+       >=sys-devel/llvm-3.9.0
+       dev-libs/boehm-gc[static-libs,threads]
+       dev-libs/libatomic_ops
+       dev-libs/libevent
+       dev-libs/libpcre
+       sys-libs/libunwind
+       dev-libs/pcl
+       dev-libs/gmp:0
+"
+RDEPEND="${DEPEND}
+       xml? ( dev-libs/libxml2 )
+       yaml? ( dev-libs/libyaml )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.20.5-verbose.patch
+       "${FILESDIR}"/${PN}-0.20.5-LDFLAGS.patch
+)
+
+src_compile() {
+       emake \
+               $(usex debug "" release=1) \
+               stats=1 \
+               threads=$(makeopts_jobs) \
+               verbose=1 \
+               \
+               CC=$(tc-getCC) \
+               CXX=$(tc-getCXX) \
+               AR=$(tc-getAR) \
+               \
+               PATH="${WORKDIR}"/${PN}-${BV}/bin:"${PATH}" \
+               CRYSTAL_PATH=src \
+               CRYSTAL_CONFIG_VERSION=${PV} \
+               CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal"
+       use doc && emake doc
+}
+
+src_test() {
+       emake spec \
+               $(usex debug "" release=1) \
+               stats=1 \
+               threads=$(makeopts_jobs) \
+               verbose=1 \
+               \
+               CC=$(tc-getCC) \
+               CXX=$(tc-getCXX) \
+               AR=$(tc-getAR) \
+               \
+               CRYSTAL_PATH=src \
+               CRYSTAL_CONFIG_VERSION=${PV}
+}
+
+src_install() {
+       insinto /usr/$(get_libdir)/crystal
+       doins -r src/.
+       dobin .build/crystal
+
+       insinto /usr/share/zsh/site-functions
+       newins etc/completion.zsh _crystal
+
+       use examples && dodoc -r samples
+
+       if use doc ; then
+               docinto api
+               dodoc -r doc/.
+       fi
+}