summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2019-12-11 20:59:31 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2019-12-11 20:59:45 +0000
commitfd7fe232de5acad8b7721e84c6f8ba935a31bdff (patch)
tree3f79d4e8209781db336f699ff7f721efeec75422 /dev-lang/crystal
parentapp-benchmarks/ioping: introduce USE flag netdata. (diff)
downloadgentoo-fd7fe232de5acad8b7721e84c6f8ba935a31bdff.tar.gz
gentoo-fd7fe232de5acad8b7721e84c6f8ba935a31bdff.tar.bz2
gentoo-fd7fe232de5acad8b7721e84c6f8ba935a31bdff.zip
dev-lang/crystal: bump up to 0.32.0
Package-Manager: Portage-2.3.81, Repoman-2.3.20 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'dev-lang/crystal')
-rw-r--r--dev-lang/crystal/Manifest3
-rw-r--r--dev-lang/crystal/crystal-0.32.0.ebuild121
2 files changed, 124 insertions, 0 deletions
diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest
index 3f2b0fc1e308..872a8f1d71b7 100644
--- a/dev-lang/crystal/Manifest
+++ b/dev-lang/crystal/Manifest
@@ -4,3 +4,6 @@ DIST crystal-0.30.1.tar.gz 2153037 BLAKE2B e5cb2d49688aba75f684ea9fea7e6b0e85eb1
DIST crystal-0.31.1-1-linux-i686.tar.gz 28667084 BLAKE2B 50964072d9335f96effce812cd261760dd308ee50628a47e2694f0a34b6dce210d5a00b978b0537bcd24cc2fc6dd82637c05dc0596ba0322e1297b97ea14bc78 SHA512 2353d10bce6983459afae526b516290eba44e2d6b5943911b8da657a36a0bbd422bd4efe61f2205e178355a2898e90ac9927c64ffba1e8edae4615a01ea9ad40
DIST crystal-0.31.1-1-linux-x86_64.tar.gz 26998394 BLAKE2B 37ecfe9f130b1e9e52686c52474fcef599a348a7d9f1885c3fe41302a1d6d760ada5a153978397c7ec43b2bb4442bb3fc1c2f8d5eed9b4141858455673170544 SHA512 433ac13f9f541dd5b58c1db5e063e23058a87ed325cabc0a4165c42edf18a5f9f126ea4e1d9627357d47c5e3f392131e1f7aab22c34dce3b02e3fdca49658b5b
DIST crystal-0.31.1.tar.gz 2191156 BLAKE2B 072e14fed34cc411cd6d9a57b8c5184e5974257869ef41f9bd12401ab473186f699bfbac438af97dd8e4e8cf749ebdbf35050882e9dc14be75392d50763902a8 SHA512 d44ce5653aa2877d85685bd897888cd7675eb02897363f71627ac19589447889af8e73a1d8acb2108e0356939cd515022fd2b92d019014714428d92666ad0f37
+DIST crystal-0.32.0-1-linux-i686.tar.gz 30066630 BLAKE2B 06054c08c3d06a5d76b707d825e8a95b879f7426660ed1bf340737cf3b5a1a7d7e50107dd3030057dcc08eed0bcadc391d55f23dc53f3fdca69a60dee07e29d7 SHA512 e9a089c0cb30977902ecb729bf90cfe132708058d46c01446b4ebb8af9f8d19a66169717f9e7dd87fcbf3ab4328a9e539dbff93dbca60050ddce0a7d7a708628
+DIST crystal-0.32.0-1-linux-x86_64.tar.gz 27352543 BLAKE2B b181c29b2ed70517b0ef0a3f9533b67bc20354fe8e98e075eb42ea6ba5ac94485718b65c2fe720953983d868410aea1f879c6242ac58b2f0931dc987203d05b5 SHA512 1ba010f25ea88888b5145f39a63bdc5cc3977577742961e540ffba2ee113754cbf1d2c504c7b4f7a2af82ae3cd8c0053b740a5f379efffb154a96fc8d9edd5cf
+DIST crystal-0.32.0.tar.gz 2223709 BLAKE2B fafca329085efba8e9f3164ea3250cbe0fc067177f6c842a30ae040385353cbb28cff8a642eb0a28ed65fb4c53efa7e03994654983108568ad94cda8370b9b7e SHA512 e4c386e95ca4c93870807221cb741ae41bf2f96dbc91f3799c02c1f99c17568804a62fb7c8ddfd297b5ab2805939323dfc00a71584af534c8a8dcd54dbd7510c
diff --git a/dev-lang/crystal/crystal-0.32.0.ebuild b/dev-lang/crystal/crystal-0.32.0.ebuild
new file mode 100644
index 000000000000..bc3abe915acb
--- /dev/null
+++ b/dev-lang/crystal/crystal-0.32.0.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 llvm multiprocessing toolchain-funcs
+
+BV=${PV}-1
+BV_AMD64=${BV}-linux-x86_64
+BV_X86=${BV}-linux-i686
+
+DESCRIPTION="The Crystal Programming Language"
+HOMEPAGE="https://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/${BV/-*}/crystal-${BV_AMD64}.tar.gz )
+ x86? ( https://github.com/crystal-lang/crystal/releases/download/${BV/-*}/crystal-${BV_X86}.tar.gz )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc debug examples blocking-stdio-hack +xml +yaml"
+
+RESTRICT=test # not stable for day-to-day runs
+
+LLVM_MAX_SLOT=9
+
+# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382
+DEPEND="
+ sys-devel/llvm:${LLVM_MAX_SLOT}
+ 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.31.0-verbose.patch
+ "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-sandbox.patch
+ "${FILESDIR}"/${PN}-0.27.0-extra-spec-flags.patch
+ #"${FILESDIR}"/${PN}-0.27.0-max-age-0-test.patch
+ "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix.patch
+ "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix-2.patch
+ "${FILESDIR}"/${PN}-0.29.0-no-usr-lib.patch
+)
+
+src_prepare() {
+ default
+
+ use blocking-stdio-hack && eapply "${FILESDIR}"/"${PN}"-0.22.0-blocking-stdio-hack.patch
+}
+
+src_compile() {
+ local bootstrap_path=${WORKDIR}/${PN}-${BV}/bin
+ if [[ ! -d ${bootstrap_path} ]]; then
+ eerror "Binary tarball does not contain expected directory:"
+ die "'${bootstrap_path}' path does not exist."
+ fi
+
+ emake \
+ $(usex debug "" release=1) \
+ progress=true \
+ stats=1 \
+ threads=$(makeopts_jobs) \
+ verbose=1 \
+ \
+ CC=$(tc-getCC) \
+ CXX=$(tc-getCXX) \
+ AR=$(tc-getAR) \
+ \
+ PATH="${bootstrap_path}:${PATH}" \
+ CRYSTAL_PATH=src \
+ CRYSTAL_CONFIG_VERSION=${PV} \
+ CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal"
+ use doc && emake docs
+}
+
+src_test() {
+ # EXTRA_SPEC_FLAGS is useful to debug individual tests
+ # as part of full build:
+ # USE=debug EXTRA_SPEC_FLAGS='-e parse_set_cookie' emerge -1 crystal
+ emake spec \
+ $(usex debug "" release=1) \
+ progress=true \
+ stats=1 \
+ threads=$(makeopts_jobs) \
+ verbose=1 \
+ \
+ CC=$(tc-getCC) \
+ CXX=$(tc-getCXX) \
+ AR=$(tc-getAR) \
+ \
+ CRYSTAL_PATH=src \
+ CRYSTAL_CONFIG_VERSION=${PV} \
+ \
+ "EXTRA_SPEC_FLAGS=${EXTRA_SPEC_FLAGS}"
+}
+
+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 docs/.
+ fi
+
+ newbashcomp etc/completion.bash ${PN}
+}