summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/nim')
-rw-r--r--dev-lang/nim/Manifest1
-rw-r--r--dev-lang/nim/nim-0.19.6.ebuild81
2 files changed, 82 insertions, 0 deletions
diff --git a/dev-lang/nim/Manifest b/dev-lang/nim/Manifest
index a8214c4a4829..b7807a86b3d3 100644
--- a/dev-lang/nim/Manifest
+++ b/dev-lang/nim/Manifest
@@ -1,3 +1,4 @@
DIST nim-0.19.0.tar.xz 3321644 BLAKE2B e1de3b8a4c756315bcd110ddc62c03eb1a379403d8c102eb4d6d131cccabe3dccdfdac33d46037fd8b3b241d727acb42f5cb0b616a4079830ea3abf63089f90a SHA512 f7f3c8e0e9a6509b6404e21da4693ceb279112dd7a7c39edc7e717f21554442914c9cf7d811bb4034ff244e34d77dabf6e09b5e3e77c37314adf99cc0c3b2311
DIST nim-0.19.2.tar.xz 21176300 BLAKE2B 85250ca174c2ef6ee77e8c1a2b35316bb9b21e591438d7d3bf560c0d38f1ba64c811ef99c0c3147acceddd6d27fcd5ff2dfccf65cb92218484649f1029e0dd1b SHA512 fc7ab034dcdf3cb5f1cc379595ee9ae6da7c6256eef4b294e3bf31ff559efd48598a9974ca9a0f41d899f01af6a916feb9c5eb7f888f637287ce357722d41421
DIST nim-0.19.4.tar.xz 4284092 BLAKE2B 7fcc4d4c13cd5ab0b9ac7b98b3ffff99ffcb77d0a23bb731b92813b5d96f5ce88303cb0196ad425f5944744f30aa1d257dc90714f6d11c1a26726ad4512206b7 SHA512 0cf87368b51bc305935b350b63c535ed268c066258ef731b73c12afaa9a3c20760876e3c4bec46448051fe8bacb6c4f1ef84f2ec3789f601a4786408bf3da06c
+DIST nim-0.19.6.tar.xz 4166952 BLAKE2B 6be2cf16bc7807fe78e3d30d9533ab3c1eff1c2042c6af1aca0d7e8330597f2aaa363085f8da2448075be6cb1feb07186c28a32fb58f120af8f4db009dcd4561 SHA512 9728825e349570ec187c031725162b70fdb1a43229732d33fcfa61dde84fb6392c7265a456ce925fd7d1d782d7f9881398173bf69c0d1ecdbefbbb6bd57f6041
diff --git a/dev-lang/nim/nim-0.19.6.ebuild b/dev-lang/nim/nim-0.19.6.ebuild
new file mode 100644
index 000000000000..2dc958a2a86b
--- /dev/null
+++ b/dev-lang/nim/nim-0.19.6.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 multiprocessing
+
+DESCRIPTION="compiled, garbage-collected systems programming language"
+HOMEPAGE="https://nim-lang.org/"
+SRC_URI="https://nim-lang.org/download/${P}.tar.xz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="doc +readline test"
+
+RESTRICT=test # need to sort out depends and numerous failures
+
+RDEPEND="
+ readline? ( sys-libs/readline:0= )
+"
+DEPEND="
+ ${DEPEND}
+ test? ( net-libs/nodejs )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.19.0-paths.patch
+)
+
+_run() {
+ echo "$@"
+ "$@" || die "'$*' failed"
+}
+
+nim_use_enable() {
+ [[ -z $2 ]] && die "usage: nim_use_enable <USE flag> <compiler flag>"
+ use $1 && echo "-d:$2"
+}
+
+src_compile() {
+ export XDG_CACHE_HOME=${T}/cache #667182
+
+ _run ./build.sh
+
+ _run ./bin/nim --parallelBuild:$(makeopts_jobs) c koch
+ _run ./koch boot --parallelBuild:$(makeopts_jobs) -d:release $(nim_use_enable readline useGnuReadline)
+ # build nimble and friends
+ # --stable to avoid pulling HEAD nimble
+ PATH="./bin:$PATH" _run ./koch --stable tools
+
+ if use doc; then
+ PATH="./bin:$PATH" _run ./koch doc
+ fi
+}
+
+src_test() {
+ PATH="./bin:$PATH" _run ./koch test
+}
+
+src_install() {
+ PATH="./bin:$PATH" _run ./koch install "${ED%/}"
+ rm -r "${ED%/}/usr/share/nim/doc" || die "failed to remove 'doc'"
+
+ exeinto /usr/bin
+
+ local bin_exe
+ for bin_exe in bin/*; do
+ # './koch install' installs only 'nim' binary
+ # but not the rest
+ [[ ${bin_exe} == bin/nim ]] && continue
+ doexe "${bin_exe}"
+ done
+
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ dodoc doc/html/*.html
+ fi
+
+ newbashcomp tools/nim.bash-completion ${PN}
+}