diff options
author | loong0 <longlene@gmail.com> | 2015-09-18 14:24:27 +0800 |
---|---|---|
committer | Ian Delaney <idella4@gentoo.org> | 2015-10-09 15:37:25 +0800 |
commit | cd98a9d49dc805a24fc95c86451b70d3fd48b0e7 (patch) | |
tree | c2e3dc508c1202fec4d8e599c6b875934ce7400e /dev-lang/crystal | |
parent | 7c974e359d9e5bf1ae90d9c7187602161227cb83 (diff) | |
download | gentoo-cd98a9d49dc805a24fc95c86451b70d3fd48b0e7.tar.gz gentoo-cd98a9d49dc805a24fc95c86451b70d3fd48b0e7.tar.xz |
dev-lang/crystal: Introduce new package
The Crystal Programming Language
Diffstat (limited to 'dev-lang/crystal')
-rw-r--r-- | dev-lang/crystal/Manifest | 6 | ||||
-rw-r--r-- | dev-lang/crystal/crystal-0.7.7.ebuild | 70 | ||||
-rw-r--r-- | dev-lang/crystal/crystal-0.8.0.ebuild | 70 | ||||
-rw-r--r-- | dev-lang/crystal/metadata.xml | 24 |
4 files changed, 170 insertions, 0 deletions
diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest new file mode 100644 index 00000000000..5aa669aa969 --- /dev/null +++ b/dev-lang/crystal/Manifest @@ -0,0 +1,6 @@ +DIST crystal-0.7.7-1-linux-i686.tar.gz 11289486 SHA256 7a1ccdce29c1437da1cbaafa3fefd5ebc3c4b84b885964a6d4eaf8bfc5922831 +DIST crystal-0.7.7-1-linux-x86_64.tar.gz 10907197 SHA256 433acbe8e88fe0c3df67ad64bd436349a6bcfc146284f0a690283ebefb93b5e6 +DIST crystal-0.7.7.tar.gz 709692 SHA256 5506f69ed59592666aa667a33ba90b07f1de2cc1ebeee25e771715f8521065f8 +DIST crystal-0.8.0-1-linux-i686.tar.gz 11465702 SHA256 47b96c790458daa4179a777ba9356959e597f38cfda535a3f9069d46b362579d +DIST crystal-0.8.0-1-linux-x86_64.tar.gz 11004413 SHA256 6a0414b903cd99bfed8ebe2a447dc0c85f4fbc31e493064e44d37770e95a4b0e +DIST crystal-0.8.0.tar.gz 731304 SHA256 986a000bb2eded22e446fd55c543062770ec4000e28791f0b07f63fcee37b245 diff --git a/dev-lang/crystal/crystal-0.7.7.ebuild b/dev-lang/crystal/crystal-0.7.7.ebuild new file mode 100644 index 00000000000..b5f4005864a --- /dev/null +++ b/dev-lang/crystal/crystal-0.7.7.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit multilib + +BV=${PV}-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/manastech/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz + amd64? ( https://github.com/manastech/crystal/releases/download/${PV}/crystal-${BV_AMD64}.tar.gz ) + x86? ( https://github.com/manastech/crystal/releases/download/${PV}/crystal-${BV_X86}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc 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.7.0 + dev-libs/boehm-gc[static-libs] + 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 ) +" + +src_compile() { + emake \ + release=1 \ + PATH="${PATH}":"${WORKDIR}"/${PN}-${BV}/bin \ + CRYSTAL_PATH=src \ + CRYSTAL_CONFIG_VERSION=${PV} \ + CRYSTAL_CONFIG_PATH="libs:/usr/$(get_libdir)/crystal" + use doc && emake doc +} + +src_test() { + emake spec \ + 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 +} diff --git a/dev-lang/crystal/crystal-0.8.0.ebuild b/dev-lang/crystal/crystal-0.8.0.ebuild new file mode 100644 index 00000000000..b5f4005864a --- /dev/null +++ b/dev-lang/crystal/crystal-0.8.0.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit multilib + +BV=${PV}-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/manastech/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz + amd64? ( https://github.com/manastech/crystal/releases/download/${PV}/crystal-${BV_AMD64}.tar.gz ) + x86? ( https://github.com/manastech/crystal/releases/download/${PV}/crystal-${BV_X86}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc 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.7.0 + dev-libs/boehm-gc[static-libs] + 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 ) +" + +src_compile() { + emake \ + release=1 \ + PATH="${PATH}":"${WORKDIR}"/${PN}-${BV}/bin \ + CRYSTAL_PATH=src \ + CRYSTAL_CONFIG_VERSION=${PV} \ + CRYSTAL_CONFIG_PATH="libs:/usr/$(get_libdir)/crystal" + use doc && emake doc +} + +src_test() { + emake spec \ + 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 +} diff --git a/dev-lang/crystal/metadata.xml b/dev-lang/crystal/metadata.xml new file mode 100644 index 00000000000..95201e80f43 --- /dev/null +++ b/dev-lang/crystal/metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>proxy-maintainers</herd> + <maintainer> + <email>longlene@gmail.com</email> + <name>Lixiao Chen</name> + </maintainer> + <longdescription lang="en"> + Crystal is a programming language that resembles Ruby but compiles to + native code and tries to be much more efficient, at the cost of + disallowing certain dynamic aspects of Ruby. + </longdescription> + <use> + <flag name="yaml"> + Use the <pkg>dev-libs/libyaml</pkg> library to enable Crystal yaml + module + </flag> + <flag name="xml"> + Use the <pkg>dev-libs/libxml2</pkg> library to enable Crystal xml + module + </flag> + </use> +</pkgmetadata> |