From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id C979B13933E for ; Thu, 15 Jul 2021 09:28:58 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 14722E0CAF; Thu, 15 Jul 2021 09:28:58 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id DFC8CE0CAF for ; Thu, 15 Jul 2021 09:28:57 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id DCA93342D2D for ; Thu, 15 Jul 2021 09:28:56 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 8E3F47A3 for ; Thu, 15 Jul 2021 09:28:55 +0000 (UTC) From: "Sergei Trofimovich" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sergei Trofimovich" Message-ID: <1626341333.2a04c24cc9a3d663e0690d2aaddedcc27b54d750.slyfox@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/crystal/files/, dev-lang/crystal/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/crystal/Manifest dev-lang/crystal/crystal-1.1.0.ebuild dev-lang/crystal/files/crystal-1.1.0-verbose.patch X-VCS-Directories: dev-lang/crystal/files/ dev-lang/crystal/ X-VCS-Committer: slyfox X-VCS-Committer-Name: Sergei Trofimovich X-VCS-Revision: 2a04c24cc9a3d663e0690d2aaddedcc27b54d750 X-VCS-Branch: master Date: Thu, 15 Jul 2021 09:28:55 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 32144cc4-59eb-484e-8426-6997726d9a91 X-Archives-Hash: af569ecdcdd30c317ab1ef2f75058f1d commit: 2a04c24cc9a3d663e0690d2aaddedcc27b54d750 Author: Sergei Trofimovich gentoo org> AuthorDate: Thu Jul 15 09:23:08 2021 +0000 Commit: Sergei Trofimovich gentoo org> CommitDate: Thu Jul 15 09:28:53 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a04c24c dev-lang/crystal: bump up to 1.1.0 Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: Sergei Trofimovich gentoo.org> dev-lang/crystal/Manifest | 3 + dev-lang/crystal/crystal-1.1.0.ebuild | 123 +++++++++++++++++++++ dev-lang/crystal/files/crystal-1.1.0-verbose.patch | 7 ++ 3 files changed, 133 insertions(+) diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest index 297894012d7..fde8c31a896 100644 --- a/dev-lang/crystal/Manifest +++ b/dev-lang/crystal/Manifest @@ -1,3 +1,6 @@ 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 +DIST crystal-1.1.0-1-linux-i686.tar.gz 30747190 BLAKE2B 7fe29248ae69c81cb0c79419488c5b544bb55810894ac1d7f276ccdf2d2d98c7c2bc4f8c007214e5ffd18ee39bdf6983f33b13c08f012105fce714eeaa18fac9 SHA512 df267250971c11d1e2f4f869a14f7b2f1e5a32cf15c407a0ee9291aeb4ddc21241c3f21c7706ee2305dfbf4ac645681a06bb70a6ee9246968a30f59b7595ea8a +DIST crystal-1.1.0-1-linux-x86_64.tar.gz 27998777 BLAKE2B 06be8a51b28266b25f1a3629b1a1ac6f3878aacdd4ca4019ac201369ca0507f3ed27bfea46ea7d8d4dfa67888268a8e027586bb32e9964d4754661f43e36ac12 SHA512 8c4542ce0623e459b61591b7bd13f416ee30c89913ce827830e570225c72ec79ad5466d414b05f520d384f04363f11964ff8bf158f0ae798da3864208655319e +DIST crystal-1.1.0.tar.gz 2476748 BLAKE2B 2874da651a8b4454c6a34b00ac4ef93be6beaabe01ff66aaac86583a9d9c1baccde9473358d70d78490b367db3a307af3b5219af6751c1d83cb5084e74955197 SHA512 fcd14338c4c6cb9189cfb9d4d93af7feab806a49e10b9c83399f9252f0c5f3488605141f09adef82d48343eab5653b754b9196fb659590df8d4deb2c4b6499f4 diff --git a/dev-lang/crystal/crystal-1.1.0.ebuild b/dev-lang/crystal/crystal-1.1.0.ebuild new file mode 100644 index 00000000000..7af64a71141 --- /dev/null +++ b/dev-lang/crystal/crystal-1.1.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}-1.1.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} +} diff --git a/dev-lang/crystal/files/crystal-1.1.0-verbose.patch b/dev-lang/crystal/files/crystal-1.1.0-verbose.patch new file mode 100644 index 00000000000..4e68afd1a94 --- /dev/null +++ b/dev-lang/crystal/files/crystal-1.1.0-verbose.patch @@ -0,0 +1,7 @@ +--- a/Makefile ++++ b/Makefile +@@ -29,3 +29,3 @@ SOURCES := $(shell find src -name '*.cr') + SPEC_SOURCES := $(shell find spec -name '*.cr') +-override FLAGS += $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(static),--static )$(if $(LDFLAGS),--link-flags="$(LDFLAGS)" )$(if $(target),--cross-compile --target $(target) ) ++override FLAGS += $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(static),--static )$(if $(LDFLAGS),--link-flags="$(LDFLAGS)" )$(if $(target),--cross-compile --target $(target) )$(if $(verbose),--verbose ) + SPEC_FLAGS := $(if $(verbose),-v )$(if $(junit_output),--junit_output $(junit_output) )