From 8cb2adb25a4bed989e161b9bffc74038886bfd43 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Thu, 6 Oct 2016 21:54:39 +0100 Subject: dev-lang/nim: drop MAP_ANONYMOUS constant Fixes build failure on mipsel Bug: https://github.com/nim-lang/Nim/pull/4853 Reported-by: der@2-47.ru Package-Manager: portage-2.3.1 --- dev-lang/nim/files/nim-0.15.0-fix-mips-build.patch | 26 ++++++++++ dev-lang/nim/nim-0.15.0-r1.ebuild | 57 ++++++++++++++++++++++ dev-lang/nim/nim-0.15.0.ebuild | 55 --------------------- 3 files changed, 83 insertions(+), 55 deletions(-) create mode 100644 dev-lang/nim/files/nim-0.15.0-fix-mips-build.patch create mode 100644 dev-lang/nim/nim-0.15.0-r1.ebuild delete mode 100644 dev-lang/nim/nim-0.15.0.ebuild diff --git a/dev-lang/nim/files/nim-0.15.0-fix-mips-build.patch b/dev-lang/nim/files/nim-0.15.0-fix-mips-build.patch new file mode 100644 index 000000000000..467b55ecdfd4 --- /dev/null +++ b/dev-lang/nim/files/nim-0.15.0-fix-mips-build.patch @@ -0,0 +1,26 @@ +From fe362543de00806a3d69ddd0de33caf0cae2e57e Mon Sep 17 00:00:00 2001 +From: GaveUp +Date: Tue, 4 Oct 2016 10:56:07 -0500 +Subject: [PATCH] Revert change to osalloc.nim from commit 8d7a45f. + +Change caused MAP_ANONYMOUS to have an incorrect value when compiling +for mipsel. + +Fixes #4852. +--- + lib/system/osalloc.nim | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/lib/system/osalloc.nim b/lib/system/osalloc.nim +index b07a362..316dd74 100644 +--- a/lib/system/osalloc.nim ++++ b/lib/system/osalloc.nim +@@ -87,8 +87,6 @@ elif defined(posix): + const MAP_ANONYMOUS = 0x1000 + elif defined(solaris): + const MAP_ANONYMOUS = 0x100 +- elif defined(linux): +- const MAP_ANONYMOUS = 0x20 + else: + var + MAP_ANONYMOUS {.importc: "MAP_ANONYMOUS", header: "".}: cint diff --git a/dev-lang/nim/nim-0.15.0-r1.ebuild b/dev-lang/nim/nim-0.15.0-r1.ebuild new file mode 100644 index 000000000000..092c19f84466 --- /dev/null +++ b/dev-lang/nim/nim-0.15.0-r1.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=6 + +MY_PN=Nim +MY_P=${MY_PN}-${PV} + +DESCRIPTION="compiled, garbage-collected systems programming language" +HOMEPAGE="http://nim-lang.org/" +SRC_URI="http://nim-lang.org/download/${P}.tar.xz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc +readline test" + +DEPEND=" + readline? ( sys-libs/readline:0= ) +" +RDEPEND="${DEPEND}" + +PATCHES=("${FILESDIR}"/${P}-fix-mips-build.patch) + +nim_use_enable() { + [[ -z $2 ]] && die "usage: nim_use_enable " + use $1 && echo "-d:$2" +} + +src_compile() { + ./build.sh || die "build.sh failed" + + ./bin/nim c koch || die "csources nim failed" + ./koch boot -d:release $(nim_use_enable readline useGnuReadline) || die "koch boot failed" + + if use doc; then + PATH="./bin:$PATH" ./koch web || die "koch web failed" + fi +} + +src_test() { + PATH="./bin:$PATH" ./koch test || die "test suite failed" +} + +src_install() { + ./koch install "${D}/usr" || die "koch install failed" + rm -r "${D}/usr/nim/doc" + + dodir /usr/bin + dosym ../nim/bin/nim /usr/bin/nim + + if use doc; then + insinto /usr/share/doc/${PF} + dodoc doc/*.html + fi +} diff --git a/dev-lang/nim/nim-0.15.0.ebuild b/dev-lang/nim/nim-0.15.0.ebuild deleted file mode 100644 index 1e4b18501e42..000000000000 --- a/dev-lang/nim/nim-0.15.0.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=6 - -MY_PN=Nim -MY_P=${MY_PN}-${PV} - -DESCRIPTION="compiled, garbage-collected systems programming language" -HOMEPAGE="http://nim-lang.org/" -SRC_URI="http://nim-lang.org/download/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="doc +readline test" - -DEPEND=" - readline? ( sys-libs/readline:0= ) -" -RDEPEND="${DEPEND}" - -nim_use_enable() { - [[ -z $2 ]] && die "usage: nim_use_enable " - use $1 && echo "-d:$2" -} - -src_compile() { - ./build.sh || die "build.sh failed" - - ./bin/nim c koch || die "csources nim failed" - ./koch boot -d:release $(nim_use_enable readline useGnuReadline) || die "koch boot failed" - - if use doc; then - PATH="./bin:$PATH" ./koch web || die "koch web failed" - fi -} - -src_test() { - PATH="./bin:$PATH" ./koch test || die "test suite failed" -} - -src_install() { - ./koch install "${D}/usr" || die "koch install failed" - rm -r "${D}/usr/nim/doc" - - dodir /usr/bin - dosym ../nim/bin/nim /usr/bin/nim - - if use doc; then - insinto /usr/share/doc/${PF} - dodoc doc/*.html - fi -} -- cgit v1.2.3-65-gdbad