Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/crystal/
Date: Fri, 26 Apr 2019 16:20:56
Message-Id: 1556295635.e08afcbcd1d6d0a39c07e4757af29d3f2dd3f739.slyfox@gentoo
1 commit: e08afcbcd1d6d0a39c07e4757af29d3f2dd3f739
2 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
3 AuthorDate: Fri Apr 26 16:20:35 2019 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Fri Apr 26 16:20:35 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e08afcbc
7
8 dev-lang/crystal: bump up to 0.28.0
9
10 Package-Manager: Portage-2.3.62, Repoman-2.3.12
11 Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
12
13 dev-lang/crystal/Manifest | 3 +
14 dev-lang/crystal/crystal-0.28.0.ebuild | 123 +++++++++++++++++++++++++++++++++
15 2 files changed, 126 insertions(+)
16
17 diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest
18 index 7507b3c1253..92669e2c36c 100644
19 --- a/dev-lang/crystal/Manifest
20 +++ b/dev-lang/crystal/Manifest
21 @@ -15,3 +15,6 @@ DIST crystal-0.27.0-1-linux-x86_64.tar.gz 37933811 BLAKE2B 76bb57b556f14ae8ce219
22 DIST crystal-0.27.0.tar.gz 2025777 BLAKE2B 0a5cc02a516586b033c65efd8e28a13ac0ed67fddbd1a1f0a88a484dff825bec8f6b03b16938c750e99e0c7c1c12a3fd3fc87e61d038b25b7707e0e7f2913fae SHA512 02b0e1d43d699d1dd91f4b979c8ab8909264e5f1fcc344f6110bebb808c0ee764a943368cce9d33a258adb9631ed4f445e1f771d5a9e50fcd337fc8b319616cf
23 DIST crystal-0.27.1.tar.gz 2061304 BLAKE2B 1776525925a25f72cf83f1a6076ab8b2bf1602c9d8c6a1fff8869c200faa35de008655f046ff60fb3733c8c3577f3544184080ee39acedfde006b9fd63d6c844 SHA512 8c6dd9489aff5d4b3e119ef6f531a3248c20f3da97c44dd3febe551adc67f5d87aa4f7679cbcc0dcde0374f3f5a3c523da6dff32a7ac95a9db1406102e980822
24 DIST crystal-0.27.2.tar.gz 2061466 BLAKE2B 49f4d2c33412589e7ea131460508a8716d10285d6e248d4e6f9287acc559a864737af2317f2a50332b68704d9d0bf6d3e4d13ad5e5a66e433dbbdd1bc8e523bc SHA512 dcb5948f373d4a7b17e6bdd45697a43e86ec7eb38bdafaade982df9adacbc5a24f2b08f327e41b853bb8f6ec8272411d14defee4e510c430c5dd1370afca42ae
25 +DIST crystal-0.28.0-1-linux-i686.tar.gz 31888259 BLAKE2B a2f72a5e05abbcc7f4a6003f22ad059e07de59660f114d8e5d0fa225ac51d2465174c41cc81dd7c561f52832ffd9203a0a1cf5606e8633e36fcecd3899463775 SHA512 bc0fcb199abacc068e907f0e8fc8feeecfda4e5312201b4a6af96e76730df3130f6d9f40141c3182c9e99c0600455124cb33ef60194fb4e47ea3826d7090e755
26 +DIST crystal-0.28.0-1-linux-x86_64.tar.gz 30088308 BLAKE2B e12b0cc9aa5ef354e0f06423a8d3be54ba42eee358cdfd7c6632d5ea08c2ed7e441eb4e162224cf8780bd3ba33e02916f1a7d061a48577d8a4d0eed4578723b3 SHA512 13b7b889ee6d17b905375883baa883fc4d631f6a22c2399aafba1020142e96072670f46584264445b531ece87c6f4b3e89367c62b0c2587c119dd6242ec06762
27 +DIST crystal-0.28.0.tar.gz 2108702 BLAKE2B 75b743c65ae2063ecbcff7514a3fac53ecc0e25866dd91a34368bdb1bf2a72e9b8e9b6c8325f1b0589693efa78c93bd246f1e764569307519375f7d7429bea55 SHA512 ea0d0938fa90db1b8e395e1daf777c36be5366046c1df7764409e14cf490b4e5f502c62a567e1cf1375684fac58afb71ccc39a5d5974eb29ef9bb5be59fa0a10
28
29 diff --git a/dev-lang/crystal/crystal-0.28.0.ebuild b/dev-lang/crystal/crystal-0.28.0.ebuild
30 new file mode 100644
31 index 00000000000..fa78117f9c5
32 --- /dev/null
33 +++ b/dev-lang/crystal/crystal-0.28.0.ebuild
34 @@ -0,0 +1,123 @@
35 +# Copyright 1999-2019 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=6
39 +
40 +inherit bash-completion-r1 llvm multiprocessing toolchain-funcs
41 +
42 +BV=0.28.0-1
43 +BV_AMD64=${BV}-linux-x86_64
44 +BV_X86=${BV}-linux-i686
45 +
46 +DESCRIPTION="The Crystal Programming Language"
47 +HOMEPAGE="https://crystal-lang.org"
48 +SRC_URI="https://github.com/crystal-lang/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz
49 + amd64? ( https://github.com/crystal-lang/crystal/releases/download/${BV/-*}/crystal-${BV_AMD64}.tar.gz )
50 + x86? ( https://github.com/crystal-lang/crystal/releases/download/${BV/-*}/crystal-${BV_X86}.tar.gz )"
51 +
52 +LICENSE="Apache-2.0"
53 +SLOT="0"
54 +KEYWORDS="~amd64"
55 +IUSE="doc debug examples blocking-stdio-hack +xml +yaml"
56 +
57 +RESTRICT=test # not stable for day-to-day runs
58 +
59 +# Not compatible with llvm-7
60 +LLVM_MAX_SLOT=6
61 +
62 +# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382
63 +DEPEND="
64 + sys-devel/llvm:${LLVM_MAX_SLOT}
65 + dev-libs/boehm-gc[static-libs,threads]
66 + dev-libs/libatomic_ops
67 + dev-libs/libevent
68 + dev-libs/libpcre
69 + sys-libs/libunwind
70 + dev-libs/pcl
71 + dev-libs/gmp:0
72 +"
73 +RDEPEND="${DEPEND}
74 + xml? ( dev-libs/libxml2 )
75 + yaml? ( dev-libs/libyaml )
76 +"
77 +
78 +PATCHES=(
79 + "${FILESDIR}"/${PN}-0.27.1-verbose.patch
80 + "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-sandbox.patch
81 + "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-network-sandbox-3.patch
82 + "${FILESDIR}"/${PN}-0.27.0-extra-spec-flags.patch
83 + #"${FILESDIR}"/${PN}-0.27.0-max-age-0-test.patch
84 + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix.patch
85 + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix-2.patch
86 + "${FILESDIR}"/${PN}-0.27.0-tcp-server-test.patch
87 +)
88 +
89 +src_prepare() {
90 + default
91 +
92 + use blocking-stdio-hack && eapply "${FILESDIR}"/"${PN}"-0.22.0-blocking-stdio-hack.patch
93 +}
94 +
95 +src_compile() {
96 + local bootstrap_path=${WORKDIR}/${PN}-${BV}/bin
97 + if [[ ! -d ${bootstrap_path} ]]; then
98 + eerror "Binary tarball does not contain expected directory:"
99 + die "'${bootstrap_path}' path does not exist."
100 + fi
101 +
102 + emake \
103 + $(usex debug "" release=1) \
104 + progress=true \
105 + stats=1 \
106 + threads=$(makeopts_jobs) \
107 + verbose=1 \
108 + \
109 + CC=$(tc-getCC) \
110 + CXX=$(tc-getCXX) \
111 + AR=$(tc-getAR) \
112 + \
113 + PATH="${bootstrap_path}:${PATH}" \
114 + CRYSTAL_PATH=src \
115 + CRYSTAL_CONFIG_VERSION=${PV} \
116 + CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal"
117 + use doc && emake docs
118 +}
119 +
120 +src_test() {
121 + # EXTRA_SPEC_FLAGS is useful to debug individual tests
122 + # as part of full build:
123 + # USE=debug EXTRA_SPEC_FLAGS='-e parse_set_cookie' emerge -1 crystal
124 + emake spec \
125 + $(usex debug "" release=1) \
126 + progress=true \
127 + stats=1 \
128 + threads=$(makeopts_jobs) \
129 + verbose=1 \
130 + \
131 + CC=$(tc-getCC) \
132 + CXX=$(tc-getCXX) \
133 + AR=$(tc-getAR) \
134 + \
135 + CRYSTAL_PATH=src \
136 + CRYSTAL_CONFIG_VERSION=${PV} \
137 + \
138 + "EXTRA_SPEC_FLAGS=${EXTRA_SPEC_FLAGS}"
139 +}
140 +
141 +src_install() {
142 + insinto /usr/$(get_libdir)/crystal
143 + doins -r src/.
144 + dobin .build/crystal
145 +
146 + insinto /usr/share/zsh/site-functions
147 + newins etc/completion.zsh _crystal
148 +
149 + use examples && dodoc -r samples
150 +
151 + if use doc ; then
152 + docinto api
153 + dodoc -r docs/.
154 + fi
155 +
156 + newbashcomp etc/completion.bash ${PN}
157 +}