Skip to content

Commit

Permalink
dev-lang/nim: bump to 1.6.4
Browse files Browse the repository at this point in the history
Closes: https://bugs.gentoo.org/833430
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Maciej Barć <[email protected]>
  • Loading branch information
xgqt committed Feb 16, 2022
1 parent ce4531f commit 19cb5f4
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-lang/nim/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
DIST nim-1.4.8.tar.xz 4786360 BLAKE2B 961b38275c4f9de87ac522c5b47368ce7f5543811a2dfd7b4f3fd79a104bcd0458caaaaab1705f99eb42c64735ca5f71d5018f8a8275a430d883233b28b1d412 SHA512 e6b245271495880f0eea271c46b4f5ce9168a421716a9a22367b6be3c2a9822937aad1f48eb61c151b040ac961728a89c8a6d143c8300057c0d8c1f2d66f3dd3
DIST nim-1.6.2.tar.xz 5181616 BLAKE2B adedbcaad1b135b6f99459894856190103e2d2b678849e0418f77c02a54fde44224456ea13949f3fe9f5f020a90adde46593497895674bd9ae892b17708df292 SHA512 052b62c987035f7633f965356993cd4eec686f4f4f5c675cf966d82cb30fcf574045887a4402bcc20e487299fb5e8f65a921951c2dc21ac334e695e31d95d992
DIST nim-1.6.4.tar.xz 5130208 BLAKE2B d0f297581677bbb9fb185a8b4198f48bb58efe81a1624f62051bc1e0a93f879a0cec172f11a41784ca715ba3c151dc5307e96c15c54908aa40df406040891d6c SHA512 f4d082f37f0e675e8cdb4340d67f2e58b5e6ac5bb51dab1ded5417097f3b86d71fa585ef12ee1c3cd5b17285589cbe9d5658fcb29c98547f7967a1b6f0cb4646
92 changes: 92 additions & 0 deletions dev-lang/nim/nim-1.6.4.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit bash-completion-r1 multiprocessing toolchain-funcs

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="debug +readline"
RESTRICT="test" # need to sort out depends and numerous failures

RDEPEND="readline? ( sys-libs/readline:0= )"
DEPEND="${DEPEND}"
# BDEPEND="test? ( net-libs/nodejs )"

PATCHES=( "${FILESDIR}"/${PN}-0.20.0-paths.patch )

# Generated by nim
QA_FLAGS_IGNORED="
usr/bin/atlas
usr/bin/nim
usr/bin/nim_dbg
usr/bin/nimble
usr/bin/nimgrep
usr/bin/nimpretty
usr/bin/nimsuggest
usr/bin/testament
"

_run() {
echo "Running: ${@}"
PATH="${S}/bin:${PATH}" "${@}" || die "Failed: \"${*}\""
}

nim_use_enable() {
[[ -z "${2}" ]] && die "usage: nim_use_enable <USE flag> <compiler flag>"
use "${1}" && echo "-d:${2}"
}

src_configure() {
export XDG_CACHE_HOME="${T}/cache" # 667182
unset NIMBLE_DIR
tc-export CC CXX LD

local build_type
if use debug ; then
build_type="debug"
else
build_type="release"
fi
export NIM_OPTS=( --parallelBuild:$(makeopts_jobs) -d:${build_type} )

# Override defaults
echo "gcc.exe = \"$(tc-getCC)\"" >> config/nim.cfg || die
echo "gcc.linkerexe = \"$(tc-getCC)\"" >> config/nim.cfg || die
echo "gcc.cpp.exe = \"$(tc-getCXX)\"" >> config/nim.cfg || die
echo "gcc.cpp.linkerexe = \"$(tc-getCXX)\"" >> config/nim.cfg || die
}

src_compile() {
_run bash ./build.sh

_run ./bin/nim ${NIM_OPTS[@]} compile koch
_run ./koch boot ${NIM_OPTS[@]} $(nim_use_enable readline useGnuReadline)
_run ./koch tools ${NIM_OPTS[@]}
}

src_test() {
_run ./koch test
}

src_install() {
_run ./koch install "${ED}"

# "./koch install" installs only "nim" binary
# but not the rest
exeinto /usr/bin
local exe
for exe in bin/* ; do
[[ "${exe}" == bin/nim ]] && continue
doexe "${exe}"
done

newbashcomp tools/nim.bash-completion nim
newbashcomp dist/nimble/nimble.bash-completion nimble
}

0 comments on commit 19cb5f4

Please sign in to comment.