forked from mirrors/nixpkgs
Merge pull request #142202 from ehmry/nim
This commit is contained in:
commit
0615609179
|
@ -98,12 +98,12 @@ in {
|
|||
|
||||
nim-unwrapped = stdenv.mkDerivation rec {
|
||||
pname = "nim-unwrapped";
|
||||
version = "1.4.8";
|
||||
version = "1.6.0";
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://nim-lang.org/download/nim-${version}.tar.xz";
|
||||
hash = "sha256-t5jFd0EdfZW4YxJh27Nnbp0a/Z42dA0ESWagVVtBRBo=";
|
||||
hash = "sha256-UgZdSNcqcnAuwa/l96mDHhFnNTHiec3/nK7AGgfuxj0=";
|
||||
};
|
||||
|
||||
buildInputs = [ boehmgc openssl pcre readline sqlite ];
|
||||
|
@ -114,7 +114,7 @@ in {
|
|||
|
||||
./nixbuild.patch
|
||||
# Load libraries at runtime by absolute path
|
||||
];
|
||||
] ++ lib.optional (!stdenv.hostPlatform.isWindows) ./toLocation.patch;
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
diff --git a/config/nim.cfg b/config/nim.cfg
|
||||
index a33a2f0a9..e069193ff 100644
|
||||
index 3b964d124..850ed0ed9 100644
|
||||
--- a/config/nim.cfg
|
||||
+++ b/config/nim.cfg
|
||||
@@ -8,26 +8,12 @@
|
||||
|
@ -29,42 +29,3 @@ index a33a2f0a9..e069193ff 100644
|
|||
path="$lib/deprecated/core"
|
||||
path="$lib/deprecated/pure"
|
||||
path="$lib/pure/collections"
|
||||
@@ -111,7 +97,7 @@ path="$lib/pure"
|
||||
@end
|
||||
|
||||
@if unix:
|
||||
- @if not bsd or haiku:
|
||||
+ @if not bsd or genode or haiku:
|
||||
# -fopenmp
|
||||
gcc.options.linker = "-ldl"
|
||||
gcc.cpp.options.linker = "-ldl"
|
||||
@@ -295,29 +281,6 @@ vcc.cpp.options.size = "/O1"
|
||||
# Configuration for the Tiny C Compiler:
|
||||
tcc.options.always = "-w"
|
||||
|
||||
-# Configuration for the Genode toolchain
|
||||
-@if genode:
|
||||
- noCppExceptions # avoid std C++
|
||||
- tlsEmulation:on # no TLS segment register magic
|
||||
- @if i386 or amd64:
|
||||
- gcc.exe = "genode-x86-gcc"
|
||||
- gcc.cpp.exe = "genode-x86-g++"
|
||||
- gcc.cpp.linkerexe = "genode-x86-ld"
|
||||
- @elif arm:
|
||||
- gcc.exe = "genode-arm-gcc"
|
||||
- gcc.cpp.exe = "genode-arm-g++"
|
||||
- gcc.cpp.linkerexe = "genode-arm-ld"
|
||||
- @elif arm64:
|
||||
- gcc.exe = "genode-aarch64-gcc"
|
||||
- gcc.cpp.exe = "genode-aarch64-g++"
|
||||
- gcc.cpp.linkerexe = "genode-aarch64-ld"
|
||||
- @elif riscv64:
|
||||
- gcc.exe = "genode-riscv-gcc"
|
||||
- gcc.cpp.exe = "genode-riscv-g++"
|
||||
- gcc.cpp.linkerexe = "genode-riscv-ld"
|
||||
- @end
|
||||
-@end
|
||||
-
|
||||
@if arm or arm64:
|
||||
--define:nimEmulateOverflowChecks
|
||||
@end
|
||||
|
|
16
pkgs/development/compilers/nim/toLocation.patch
Normal file
16
pkgs/development/compilers/nim/toLocation.patch
Normal file
|
@ -0,0 +1,16 @@
|
|||
diff --git a/lib/std/private/miscdollars.nim b/lib/std/private/miscdollars.nim
|
||||
index 840fedf54..6c3436308 100644
|
||||
--- a/lib/std/private/miscdollars.nim
|
||||
+++ b/lib/std/private/miscdollars.nim
|
||||
@@ -6,9 +6,8 @@ template toLocation*(result: var string, file: string | cstring, line: int, col:
|
||||
# it can be done in a single place.
|
||||
result.add file
|
||||
if line > 0:
|
||||
- result.add "("
|
||||
+ result.add ":"
|
||||
addInt(result, line)
|
||||
if col > 0:
|
||||
- result.add ", "
|
||||
+ result.add ":"
|
||||
addInt(result, col)
|
||||
- result.add ")"
|
Loading…
Reference in a new issue