commit:     bfacb3784e77c58b1a389b44445bc140506cbce8
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 27 08:05:07 2021 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Mar 27 08:18:12 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bfacb378

dev-lang/crystal: bump up to 1.0.0

Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-lang/crystal/Manifest             |   3 +
 dev-lang/crystal/crystal-1.0.0.ebuild | 123 ++++++++++++++++++++++++++++++++++
 2 files changed, 126 insertions(+)

diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest
index 13edd604cfc..9a65895eeea 100644
--- a/dev-lang/crystal/Manifest
+++ b/dev-lang/crystal/Manifest
@@ -1,3 +1,6 @@
 DIST crystal-0.36.1-1-linux-i686.tar.gz 30873747 BLAKE2B 
43cde4b61d2947012e860df02563316a801c0a0762881ad8d7f5fd328da4bf5be6ad5411724dedf9ec2b743bd202ef5341d860cfe209f1973f483ac86e0fd155
 SHA512 
f291ee3ed387577c173b9ee897fb7d8059f1a7a754ecc5f2c54cbcb34ab324914bc201a12f3a89b53e21d77c30342e9ba69a0ca885f2a8df512844bdc3754de6
 DIST crystal-0.36.1-1-linux-x86_64.tar.gz 28360836 BLAKE2B 
ee9fef20c252ae0efbaafae3426b384318cd141669ce929f723dfa9e6fd9485961c46c948a3aae2fcb2780b92b759fb74e0a4aeec45e198ee9541b0a959072cd
 SHA512 
12389aee0bf863606a620e9e5a1600081aef3be5eef091f592d000f00e9925cbd36cc2e55485c4d295b3a2fcde033425eb2b225a92fd2b49b2e3f18b2b38510f
 DIST crystal-0.36.1.tar.gz 2413747 BLAKE2B 
19b78217a37394b163859a536fddcd93e201209dae55713743a459414a48eae38458c28fa17e1ac6e8d361ccdc498a23026ee83c7c2a744f9d51c55bd6e5f0d8
 SHA512 
86ce295aed0cb601820c727615fffe6816bee0e98e5d91c912f43354448d59f449a6ffb895f5914b3e6564f72f35a50880cec4513826068a2e3e470b4f06048b
+DIST crystal-1.0.0-1-linux-i686.tar.gz 30753871 BLAKE2B 
247d8327c001ef8e847d981ab771964faa90b5acb1dc1336288b4c401cd039bb259e22945aabae73b6e23cf6babec288a25e4490a860e9a6c5cc8076afb2e7d3
 SHA512 
36f48fbc44f254588b449c6c80dd47e8152e1e31785ce0111dcd4da9eed57c12aac7427807f4a60d86a9841726e197a6d08582438bffcc4ed16eaad35e6ea886
+DIST crystal-1.0.0-1-linux-x86_64.tar.gz 28189455 BLAKE2B 
8313d201e8b8363f3f5025ab2bf2d44a981ca7185686474aa677d38986428b54e9d28fef01e12205ab58db67b516a043582a9965f31972bfa2ece5ff8bd640a0
 SHA512 
bbfe5010d2e620a58b25a3f7133f0f15c212ed085f020bbb8da39aca882d89c077068343fe182995ec09b436daaf8d252db232bf7fe3af087a5ab0728e0a758f
+DIST crystal-1.0.0.tar.gz 2435212 BLAKE2B 
3204162abae8ef2e3e7a7a294f001b3906562c17121bb3646c1d1bac0d7b98433c77d9c8101bae9b3041996794784b8fce5dd3dfded33a27c8d229bc3b557c0c
 SHA512 
aa56eb0131aecad15bebc6ef0ce2f34f0992a8362441dd662a518ddbc5e3818762c1c7228bc5b06aafdb8815e59d791654add9da8ba9a47a6a4fd34f6b039a8b

diff --git a/dev-lang/crystal/crystal-1.0.0.ebuild 
b/dev-lang/crystal/crystal-1.0.0.ebuild
new file mode 100644
index 00000000000..03283fb4e71
--- /dev/null
+++ b/dev-lang/crystal/crystal-1.0.0.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2021 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=11
+
+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
+)
+
+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
+
+       # crystal uses 'LLVM_TARGETS' to override default list of targets
+       unset LLVM_TARGETS
+       emake \
+               $(usex debug "" release=1) \
+               progress=true \
+               stats=1 \
+               threads=$(makeopts_jobs) \
+               verbose=1 \
+               \
+               CC=$(tc-getCC) \
+               CXX=$(tc-getCXX) \
+               AR=$(tc-getAR) \
+               LLVM_CONFIG="$(get_llvm_prefix 
"${LLVM_MAX_SLOT}")/bin/llvm-config" \
+               \
+               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) \
+               LLVM_CONFIG="$(get_llvm_prefix 
"${LLVM_MAX_SLOT}")/bin/llvm-config" \
+               \
+               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}
+}

Reply via email to