diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-12-21 20:47:17 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-12-21 20:47:17 +0000 |
commit | 4ab6db5717ef23f29320d4c6fb9ebdb8dec1f193 (patch) | |
tree | f7640b8b96a04499f1ce44a2cad122d45a8373bd /dev-lang/crystal | |
parent | 48bdeb0db9c7ffed22c6eb859ee40b55ba598b86 (diff) |
gentoo resync : 21.12.2017
Diffstat (limited to 'dev-lang/crystal')
-rw-r--r-- | dev-lang/crystal/Manifest | 7 | ||||
-rw-r--r-- | dev-lang/crystal/crystal-0.23.1.ebuild | 4 | ||||
-rw-r--r-- | dev-lang/crystal/crystal-0.24.1.ebuild | 100 | ||||
-rw-r--r-- | dev-lang/crystal/files/crystal-0.22.0-blocking-stdio-hack.patch | 20 | ||||
-rw-r--r-- | dev-lang/crystal/files/crystal-0.23.0-verbose-LDFLAGS.patch | 9 | ||||
-rw-r--r-- | dev-lang/crystal/files/crystal-0.24.0-verbose-LDFLAGS.patch | 9 |
6 files changed, 146 insertions, 3 deletions
diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest index ff2d088840d1..368e6f1f4477 100644 --- a/dev-lang/crystal/Manifest +++ b/dev-lang/crystal/Manifest @@ -1,6 +1,11 @@ +AUX crystal-0.22.0-blocking-stdio-hack.patch 564 BLAKE2B ca388a6e18ef26d03bd0ef25f30a5424dbd814387e832a6f8a1e8f1097f180a4f3393df5c2d733259cb46f0be3e466d2496baa9b9e76eb2e4bb5968882cba513 SHA512 51df3a464efc7b34db970854577d89027177179cb4e72fdf74b6c9ae754749e30c93155bb18a5daf22db78b0f8985ec341092a95435f8de19800c33bca2f983e +AUX crystal-0.23.0-verbose-LDFLAGS.patch 653 BLAKE2B dcbb7c4e421bc554a83363eae5a699f94023f3469bbe6f0f1d258f509c34334f01f52588711832600988e618131c42aa0eb07881759a2cbbe5521f47a0550c30 SHA512 76494f1dcd97665f787fac76f2b94ef8428259133f13b52cf21c6e5b816ab7697a96f90dad0dc658de6373c6df28b72809cce5656d4b8356a6b3eca73f23856a +AUX crystal-0.24.0-verbose-LDFLAGS.patch 703 BLAKE2B 3395a7c4bf98280ebef331ec99fbd46bda571b84614e7a71f6cee1b322548dadd363b6b82f3bfd58e034bce5052dab8876a02838ba850d8bbccb25be47c6bb34 SHA512 a009215413e100096cc74088679d603115b80b2d6e59180a466d0f177662376ee6e31e151d2d02a7277d0025e6cd68666e4b1f99b8bf79b50106fed72adb40e1 DIST crystal-0.23.0-1-linux-i686.tar.gz 18498501 BLAKE2B 7a8e4e5a2b1425b6effe0a634b74b28c340c4d23c4bfccc0abac4e5d47473e10421d025e68e1fb1fa5b0ba8296108e36cd17d393fb143b8012168d595e5852f9 SHA512 8745114c4824d2859c569ed1bd1057d6d649d57b10d41d22c17627f623704eb98ec2e3ab2bf06622de624906f53e053975a6b9d852aeaafeae4f43585609de28 DIST crystal-0.23.0-1-linux-x86_64.tar.gz 18729061 BLAKE2B bfca07702b2f7c7d6b11aac864475316cabe86bdba90b1819ecd5cb45769b2b7fd9fb4c9f80e46301785209cc5b35fe39bf689163b9376a32b24f8a685a6281b SHA512 6a4e427b4ab3c3be6efcfaee5c1a19eff04eaf00db949d1e1ba8f29c3277affe96a7aba4273d93fd05251453d5b5b937aa792bc448ff2f6d6aa7f2b17d175f75 DIST crystal-0.23.1-patchset.tar.bz2 7268 BLAKE2B 135990ac9f1a225f169dbc5bb6034d2194d9fc917954764564d68afec09af703382743965a801c9ce54a5866af60847b4c4fc0b9daf2cf5ea99052fbeb771b2a SHA512 68896fc5d1772eeb3dd263f1615fc8031a63d0f3eebca1feb35165adf14a610157302541c84cbc9031a3070fd5566ffe88ad03a8c523f55980520e5614b00b89 DIST crystal-0.23.1.tar.gz 1646650 BLAKE2B 3105a683e61835d1e514d5d403b00d3dfae01100a9862d6346c45201c5fb6cba879255469652463719998e976afc495ee9fd4f14f829a709f832cd323cfc2b3b SHA512 06ee0d45cc79cc343d04c346e9cd47b6e4ebc79bf21833662f268f9604f7d2080f7696824e1959de341539f801ae8f898fe1d7b18e4c75378d4eb191878668d5 -EBUILD crystal-0.23.1.ebuild 2362 BLAKE2B 2f704cebf99c97743ebe6dca1ec0f3bb81634842ef4e6415957efa7d4074b8b6764fe999592e6bb15c6ca528df63b001b06662c5e90860386e0e28c09673ab48 SHA512 cd9e414e5b81a23a93aec49a1f9021e6ee07792ed09281f9bd1ff91aa26bf94a2d8709e0379d46b9a3ec7207f77a945048a15bce024a685f9aa8698b697485da +DIST crystal-0.24.1.tar.gz 1744210 BLAKE2B e3a49a75f42e734753b369f1ad22db011b3af055acb0886b74151281480015c19b079cfc7246070c96e45942e51ed47d183606906bef8f2a0e6786ec7b39dbc8 SHA512 f27b64922eaff45228d9cc16bb229528e523500b8f64a3b4a5ed0584445bebf7812457e17952d0eabac2869ee259949bb12fbc80d60a6aa717307a80932345b8 +EBUILD crystal-0.23.1.ebuild 2338 BLAKE2B bb9f07465783a19ffaec8b8aca29a3a85e4b272ac7b43e7c4a1fe61e110d04e1d513e671637cbd08b7974027c6663d302dd9c423880a65703bc58b550eca267d SHA512 df371dd8c31178279ef4ec8e65f160006aa895160b21864fb9194d7a1ad265c764ed240daec0a7b642452818d3fadc8a18e3cd6d3a5fe3be41a8c076d15b03e4 +EBUILD crystal-0.24.1.ebuild 2217 BLAKE2B 910f8841612a9730b651f53220a34b0493a2efdfbc803f6f1e55cda231fe2ba881d682d3f8d432f627b33ebe1db606915356f93c607692d8c711adf77c6ae581 SHA512 327a7b8747224bcdf9f9443e918424d39d82edf7ff35bbe69de7aab01e6e8c40e4c6b5d91966ec16ecbac18d198db742cbd49b935f5a75e12c425cdb60085f45 MISC metadata.xml 1217 BLAKE2B 88f4d14814fe23df2d80ff0db254175504df5fe44a592484d99c71171c1ae64b333c8c6cec3ebf3c1d3fe6baac3c6961ff27eee6ea7f629d74363cb7f64b280f SHA512 ab6182218a9b597cb7d2ed45eb6204fe30b1567e288e897ca1e2fe78433da260a24f1f79b988fe7d8ace37c7f6c0da7ad4789bc79e15775be44b645d485738bd diff --git a/dev-lang/crystal/crystal-0.23.1.ebuild b/dev-lang/crystal/crystal-0.23.1.ebuild index 41f26d88e363..c1b0b8859244 100644 --- a/dev-lang/crystal/crystal-0.23.1.ebuild +++ b/dev-lang/crystal/crystal-0.23.1.ebuild @@ -38,14 +38,14 @@ RDEPEND="${DEPEND} " PATCHES=( - "${WORKDIR}"/${P}-patchset/${PN}-0.23.0-verbose-LDFLAGS.patch + "${FILESDIR}"/${PN}-0.23.0-verbose-LDFLAGS.patch "${WORKDIR}"/${P}-patchset/${PN}-0.23.1-llvm-5.patch ) src_prepare() { default - use blocking-stdio-hack && eapply "${WORKDIR}"/${P}-patchset/${PN}-0.22.0-blocking-stdio-hack.patch + use blocking-stdio-hack && eapply "${FILESDIR}"/"${PN}"-0.22.0-blocking-stdio-hack.patch } src_compile() { diff --git a/dev-lang/crystal/crystal-0.24.1.ebuild b/dev-lang/crystal/crystal-0.24.1.ebuild new file mode 100644 index 000000000000..5436a7888dd9 --- /dev/null +++ b/dev-lang/crystal/crystal-0.24.1.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit bash-completion-r1 multiprocessing toolchain-funcs + +BV=0.23.0-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/${PV}/crystal-${BV_AMD64}.tar.gz ) + x86? ( https://github.com/crystal-lang/crystal/releases/download/${PV}/crystal-${BV_X86}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc debug examples blocking-stdio-hack +xml +yaml" + +# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382 +DEPEND=" + sys-devel/llvm:5 + 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.24.0-verbose-LDFLAGS.patch +) + +src_prepare() { + default + + use blocking-stdio-hack && eapply "${FILESDIR}"/"${PN}"-0.22.0-blocking-stdio-hack.patch +} + +src_compile() { + emake \ + $(usex debug "" release=1) \ + progress=true \ + stats=1 \ + threads=$(makeopts_jobs) \ + verbose=1 \ + \ + CC=$(tc-getCC) \ + CXX=$(tc-getCXX) \ + AR=$(tc-getAR) \ + \ + PATH="${WORKDIR}"/${PN}-${BV}/bin:"${PATH}" \ + CRYSTAL_PATH=src \ + CRYSTAL_CONFIG_VERSION=${PV} \ + CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal" + use doc && emake doc +} + +src_test() { + 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} +} + +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 doc/. + fi + + newbashcomp etc/completion.bash ${PN} +} diff --git a/dev-lang/crystal/files/crystal-0.22.0-blocking-stdio-hack.patch b/dev-lang/crystal/files/crystal-0.22.0-blocking-stdio-hack.patch new file mode 100644 index 000000000000..07b7dba7be65 --- /dev/null +++ b/dev-lang/crystal/files/crystal-0.22.0-blocking-stdio-hack.patch @@ -0,0 +1,20 @@ +Workaround tty corruption in crystal. + +Patch restores blocking mode of file desriptors +in exchange of potential runtime deadlocks +when dealing with stdio. + +Reported-by: Renich Bon Ciric +Bug: https://github.com/crystal-lang/crystal/issues/2065 +Bug: https://bugs.gentoo.org/616256 +diff --git a/src/compiler/crystal/stdio.cr b/src/compiler/crystal/stdio.cr +new file mode 100644 +index 000000000..e65f65089 +--- /dev/null ++++ b/src/compiler/crystal/stdio.cr +@@ -0,0 +1,5 @@ ++module Crystal ++ STDIN.blocking = true ++ STDOUT.blocking=true ++ STDERR.blocking = true ++end diff --git a/dev-lang/crystal/files/crystal-0.23.0-verbose-LDFLAGS.patch b/dev-lang/crystal/files/crystal-0.23.0-verbose-LDFLAGS.patch new file mode 100644 index 000000000000..35eace15dae0 --- /dev/null +++ b/dev-lang/crystal/files/crystal-0.23.0-verbose-LDFLAGS.patch @@ -0,0 +1,9 @@ +diff --git a/Makefile b/Makefile +index eff69e5..5c0c024 100644 +--- a/Makefile ++++ b/Makefile +@@ -28,3 +28,3 @@ SOURCES := $(shell find src -name '*.cr') + SPEC_SOURCES := $(shell find spec -name '*.cr') +-FLAGS := $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d ) ++FLAGS := $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(verbose),--verbose )$(if $(LDFLAGS),--link-flags="$(LDFLAGS)" ) + SPEC_FLAGS := $(if $(verbose),-v )$(if $(junit_output),--junit_output $(junit_output) ) diff --git a/dev-lang/crystal/files/crystal-0.24.0-verbose-LDFLAGS.patch b/dev-lang/crystal/files/crystal-0.24.0-verbose-LDFLAGS.patch new file mode 100644 index 000000000000..3d02a119f858 --- /dev/null +++ b/dev-lang/crystal/files/crystal-0.24.0-verbose-LDFLAGS.patch @@ -0,0 +1,9 @@ +diff --git a/Makefile b/Makefile +index eff69e5..5c0c024 100644 +--- a/Makefile ++++ b/Makefile +@@ -28,3 +28,3 @@ SOURCES := $(shell find src -name '*.cr') + SPEC_SOURCES := $(shell find spec -name '*.cr') +-FLAGS := $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(static),--static ) ++FLAGS := $(if $(release),--release )$(if $(stats),--stats )$(if $(progress),--progress )$(if $(threads),--threads $(threads) )$(if $(debug),-d )$(if $(static),--static )$(if $(verbose),--verbose )$(if $(LDFLAGS),--link-flags="$(LDFLAGS)" ) + SPEC_FLAGS := $(if $(verbose),-v )$(if $(junit_output),--junit_output $(junit_output) ) |