From 311ddcbd7a77fbbf89da5403a0b095718b81d802 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 24 Mar 2016 18:12:49 +0100 Subject: ispc: fix build --- pkgs/development/compilers/ispc/default.nix | 7 +++++-- pkgs/development/compilers/ispc/gcc5.patch | 22 ++++++++++++++++++++++ 2 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/compilers/ispc/gcc5.patch (limited to 'pkgs/development/compilers/ispc') diff --git a/pkgs/development/compilers/ispc/default.nix b/pkgs/development/compilers/ispc/default.nix index 1995923842f1f..08f0d7e06b131 100644 --- a/pkgs/development/compilers/ispc/default.nix +++ b/pkgs/development/compilers/ispc/default.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { sha256 = "15qi22qvmlx3jrhrf3rwl0y77v66prpan6qb66a55dw3pw2d4jvn"; }; - enableParallelBuilding = true; + enableParallelBuilding = false; doCheck = true; @@ -29,7 +29,10 @@ stdenv.mkDerivation rec { clang ]; - patchPhase = "sed -i -e 's/\\/bin\\///g' -e 's/-lcurses/-lncurses/g' Makefile"; + # https://github.com/ispc/ispc/pull/1190 + patches = [ ./gcc5.patch ]; + + postPatch = "sed -i -e 's/\\/bin\\///g' -e 's/-lcurses/-lncurses/g' Makefile"; installPhase = '' mkdir -p $out/bin diff --git a/pkgs/development/compilers/ispc/gcc5.patch b/pkgs/development/compilers/ispc/gcc5.patch new file mode 100644 index 0000000000000..4f2b7b682fee6 --- /dev/null +++ b/pkgs/development/compilers/ispc/gcc5.patch @@ -0,0 +1,22 @@ +diff --git a/cbackend.cpp b/cbackend.cpp +index 3552205..9c05824 100644 +--- a/cbackend.cpp ++++ b/cbackend.cpp +@@ -1641,7 +1641,7 @@ void CWriter::printConstant(llvm::Constant *CPV, bool Static) { + V = Tmp.convertToDouble(); + } + +- if (isnan(V)) { ++ if (std::isnan(V)) { + // The value is NaN + + // FIXME the actual NaN bits should be emitted. +@@ -1665,7 +1665,7 @@ void CWriter::printConstant(llvm::Constant *CPV, bool Static) { + else + Out << "LLVM_NAN" << (Val == QuietNaN ? "" : "S") << "(\"" + << Buffer << "\") /*nan*/ "; +- } else if (isinf(V)) { ++ } else if (std::isinf(V)) { + // The value is Inf + if (V < 0) Out << '-'; + Out << "LLVM_INF" << -- cgit 1.4.1