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: Wed, 26 Feb 2020 13:14:02
Message-Id: 1582722833.64ac4e7e7c73a585d1612ff5d76e924fcd70315d.slyfox@gentoo
1 commit: 64ac4e7e7c73a585d1612ff5d76e924fcd70315d
2 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
3 AuthorDate: Wed Feb 26 13:10:44 2020 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Wed Feb 26 13:13:53 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64ac4e7e
7
8 dev-lang/crystal: bump up to 0.33.0
9
10 Package-Manager: Portage-2.3.89, Repoman-2.3.20
11 Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
12
13 dev-lang/crystal/Manifest | 3 +
14 dev-lang/crystal/crystal-0.33.0.ebuild | 121 +++++++++++++++++++++++++++++++++
15 2 files changed, 124 insertions(+)
16
17 diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest
18 index 3de09286898..366dd798220 100644
19 --- a/dev-lang/crystal/Manifest
20 +++ b/dev-lang/crystal/Manifest
21 @@ -4,3 +4,6 @@ DIST crystal-0.31.1.tar.gz 2191156 BLAKE2B 072e14fed34cc411cd6d9a57b8c5184e59742
22 DIST crystal-0.32.1-1-linux-i686.tar.gz 30062609 BLAKE2B 658cd453465a1c4de44c0b010593aa19a68b93569482202baba948dc58f018d38cbefda083592145a141e7dfc574eddb7ccf0a41613a7a7d5ea8d12ed8f72d08 SHA512 34127ad25a1e290b8f17fa7de9465083955ae16a049bab8a927f90df4f2c87c7a59e2c8123f7ec0d0de691130e51749b104ccf11ea68005c267ab98c322156f3
23 DIST crystal-0.32.1-1-linux-x86_64.tar.gz 27348617 BLAKE2B 96410f00843d21cea4ed6f8d4896438334f577b6e593e72a0be23d3e1a460199bffc456ddb675a257c5a973353c1a8d28f69263b8517e0009e54d2f2f19535fe SHA512 85524c38cd91fbe56ab7d14c3a05a1a3f3e3fc0f618e5fa5af010716f76b1dc0cc415cbc67e16c99fd2e8860412d7e2566f510c751de0ad4373361edbcee0475
24 DIST crystal-0.32.1.tar.gz 2225383 BLAKE2B 81cdda508945ebea481c3ad784ecdccffe25e4726d2f63feb1a4995b48041fbf2cbe226bebcbf9f9627d2161d167ccb502626a9d51f787dc8e48fd607f310ff8 SHA512 d83575f4c7953054824f13516cdc04bd7576bf7165754d96a9f4970e2a6cbf779b4db6806d3eeac465ed0c223c203ef95fc3bda70d1ef9f7c96ec96cd076283d
25 +DIST crystal-0.33.0-1-linux-i686.tar.gz 29627750 BLAKE2B 284c300eb57e9192c367b1692c95a8da584820ecd068515cf59174106bdcd4341033e68ecdcc64a263dcf1c69ca58f9403e9b4b8e166c86b1b6747e4e0d2ea92 SHA512 8ff065555e5782a84575ddc8210f92bc6d5702692e2674be4fcef470dfeff3ec325954eb665b222cb3f332e335cae4ae49cc06ffe4ce939519d0947225b452b4
26 +DIST crystal-0.33.0-1-linux-x86_64.tar.gz 27553242 BLAKE2B c24ab3e1577c33de9e9de2fa03f0fe831821b70b72ee9fb421eab9aed8b0ba357547160be9fff20c30b2d52e6c6d75bbde19dc322638c5c3f33ba2aa14dbf4c4 SHA512 7c815335ff882effd9dfc22cbeec6cee6e014805bf048bedf4476b1ecdf3a87bd8d53543c78be3493f937659a88041cd5370814eba043c81f23e7ef707ccd834
27 +DIST crystal-0.33.0.tar.gz 2242162 BLAKE2B 0d9dbdd230bb190209772fafaeb1d59008cbe90b0bd33f851886bf90e7ac497c0bcef7609d6295dd4a4bad213fb687dea3d16c42ebe3bc92b3e06df156c53570 SHA512 41f518ec5c8f2f2cffb84105e0cc5096d4ba7ef64887ad0089aa37109fa5fa8e28747fe4f4ca8a74012e7b77d8c7a9d72cd9da787a330a4a62b5e55b40f0e57b
28
29 diff --git a/dev-lang/crystal/crystal-0.33.0.ebuild b/dev-lang/crystal/crystal-0.33.0.ebuild
30 new file mode 100644
31 index 00000000000..5085b24c8b0
32 --- /dev/null
33 +++ b/dev-lang/crystal/crystal-0.33.0.ebuild
34 @@ -0,0 +1,121 @@
35 +# Copyright 1999-2020 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=7
39 +
40 +inherit bash-completion-r1 llvm multiprocessing toolchain-funcs
41 +
42 +BV=${PV}-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 +LLVM_MAX_SLOT=9
60 +
61 +# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382
62 +DEPEND="
63 + sys-devel/llvm:${LLVM_MAX_SLOT}
64 + dev-libs/boehm-gc[static-libs,threads]
65 + dev-libs/libatomic_ops
66 + dev-libs/libevent
67 + dev-libs/libpcre
68 + sys-libs/libunwind
69 + dev-libs/pcl
70 + dev-libs/gmp:0
71 +"
72 +RDEPEND="${DEPEND}
73 + xml? ( dev-libs/libxml2 )
74 + yaml? ( dev-libs/libyaml )
75 +"
76 +
77 +PATCHES=(
78 + "${FILESDIR}"/${PN}-0.31.0-verbose.patch
79 + "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-sandbox.patch
80 + "${FILESDIR}"/${PN}-0.27.0-extra-spec-flags.patch
81 + #"${FILESDIR}"/${PN}-0.27.0-max-age-0-test.patch
82 + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix.patch
83 + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix-2.patch
84 + "${FILESDIR}"/${PN}-0.29.0-no-usr-lib.patch
85 +)
86 +
87 +src_prepare() {
88 + default
89 +
90 + use blocking-stdio-hack && eapply "${FILESDIR}"/"${PN}"-0.22.0-blocking-stdio-hack.patch
91 +}
92 +
93 +src_compile() {
94 + local bootstrap_path=${WORKDIR}/${PN}-${BV}/bin
95 + if [[ ! -d ${bootstrap_path} ]]; then
96 + eerror "Binary tarball does not contain expected directory:"
97 + die "'${bootstrap_path}' path does not exist."
98 + fi
99 +
100 + emake \
101 + $(usex debug "" release=1) \
102 + progress=true \
103 + stats=1 \
104 + threads=$(makeopts_jobs) \
105 + verbose=1 \
106 + \
107 + CC=$(tc-getCC) \
108 + CXX=$(tc-getCXX) \
109 + AR=$(tc-getAR) \
110 + \
111 + PATH="${bootstrap_path}:${PATH}" \
112 + CRYSTAL_PATH=src \
113 + CRYSTAL_CONFIG_VERSION=${PV} \
114 + CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal"
115 + use doc && emake docs
116 +}
117 +
118 +src_test() {
119 + # EXTRA_SPEC_FLAGS is useful to debug individual tests
120 + # as part of full build:
121 + # USE=debug EXTRA_SPEC_FLAGS='-e parse_set_cookie' emerge -1 crystal
122 + emake spec \
123 + $(usex debug "" release=1) \
124 + progress=true \
125 + stats=1 \
126 + threads=$(makeopts_jobs) \
127 + verbose=1 \
128 + \
129 + CC=$(tc-getCC) \
130 + CXX=$(tc-getCXX) \
131 + AR=$(tc-getAR) \
132 + \
133 + CRYSTAL_PATH=src \
134 + CRYSTAL_CONFIG_VERSION=${PV} \
135 + \
136 + "EXTRA_SPEC_FLAGS=${EXTRA_SPEC_FLAGS}"
137 +}
138 +
139 +src_install() {
140 + insinto /usr/$(get_libdir)/crystal
141 + doins -r src/.
142 + dobin .build/crystal
143 +
144 + insinto /usr/share/zsh/site-functions
145 + newins etc/completion.zsh _crystal
146 +
147 + use examples && dodoc -r samples
148 +
149 + if use doc ; then
150 + docinto api
151 + dodoc -r docs/.
152 + fi
153 +
154 + newbashcomp etc/completion.bash ${PN}
155 +}