summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2017-05-12 11:29:41 +0200
committerVladimír Čunát <vcunat@gmail.com>2017-05-12 12:03:37 +0200
commit51e0f8f759250b77a7ab7529f5c7da5053465ff4 (patch)
tree50de122859daf1dd33084735165df62fcb09d2e8 /pkgs/development/compilers
parentfc873b69f08a881fe16d6d09e3c829fe1bc2396a (diff)
parente25665591b66038c668418c58eaf2810d8f1c90e (diff)
downloadnixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.tar
nixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.tar.gz
nixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.tar.bz2
nixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.tar.lz
nixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.tar.xz
nixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.tar.zst
nixlib-51e0f8f759250b77a7ab7529f5c7da5053465ff4.zip
Merge branch 'master' into staging
Some more larger rebuilds from master.
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/fstar/default.nix21
-rw-r--r--pkgs/development/compilers/llvm/4/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/4/openmp.nix25
3 files changed, 43 insertions, 5 deletions
diff --git a/pkgs/development/compilers/fstar/default.nix b/pkgs/development/compilers/fstar/default.nix
index 24a4135bde13..00714875ffc2 100644
--- a/pkgs/development/compilers/fstar/default.nix
+++ b/pkgs/development/compilers/fstar/default.nix
@@ -1,26 +1,37 @@
-{ stdenv, fetchFromGitHub, mono, fsharp, dotnetPackages, z3, ocamlPackages, openssl, makeWrapper }:
+{ stdenv, fetchFromGitHub, mono, fsharp, dotnetPackages, z3, ocamlPackages, openssl, makeWrapper, pkgconfig, file }:
 
 stdenv.mkDerivation rec {
   name = "fstar-${version}";
-  version = "0.9.2.0";
+  version = "0.9.4.0";
 
   src = fetchFromGitHub {
     owner = "FStarLang";
     repo = "FStar";
     rev = "v${version}";
-    sha256 = "0vrxmxfaslngvbvkzpm1gfl1s34hdsprv8msasxf9sjqc3hlir3l";
+    sha256 = "130779p5plsgvz0dkcqycns3vwrvyfl138nq2xdhd3rkdsbyyvb7";
   };
 
   nativeBuildInputs = [ makeWrapper ];
 
   buildInputs = with ocamlPackages; [
-    mono fsharp z3 dotnetPackages.FsLexYacc ocaml findlib ocaml_batteries openssl
+    mono fsharp z3 dotnetPackages.FsLexYacc ocaml findlib ocaml_batteries
+    zarith camlp4 yojson pprint openssl pkgconfig file
   ];
 
   preBuild = ''
     substituteInPlace src/Makefile --replace "\$(RUNTIME) VS/.nuget/NuGet.exe" "true"
+    substituteInPlace src/VS/.nuget/NuGet.targets --replace "mono" "true"
 
-    source setenv.sh
+    # Fails with bad interpreter otherwise
+    patchShebangs src/tools
+    patchShebangs bin
+
+    export FSharpTargetsPath="$(dirname $(pkg-config FSharp.Core --variable=Libraries))/Microsoft.FSharp.Targets"
+    # remove hardcoded windows paths
+    sed -i '/<FSharpTargetsPath/d' src/*/*.fsproj
+
+    mkdir -p src/VS/packages/FsLexYacc.6.1.0
+    ln -s ${dotnetPackages.FsLexYacc}/lib/dotnet/FsLexYacc src/VS/packages/FsLexYacc.6.1.0/build
   '';
 
   makeFlags = [
diff --git a/pkgs/development/compilers/llvm/4/default.nix b/pkgs/development/compilers/llvm/4/default.nix
index 4be621adb5cf..15918f9c1ebd 100644
--- a/pkgs/development/compilers/llvm/4/default.nix
+++ b/pkgs/development/compilers/llvm/4/default.nix
@@ -24,6 +24,8 @@ let
 
     clang = wrapCC self.clang-unwrapped;
 
+    openmp = callPackage ./openmp.nix {};
+
     libcxxClang = ccWrapperFun {
       cc = self.clang-unwrapped;
       isClang = true;
diff --git a/pkgs/development/compilers/llvm/4/openmp.nix b/pkgs/development/compilers/llvm/4/openmp.nix
new file mode 100644
index 000000000000..c8ba770e2411
--- /dev/null
+++ b/pkgs/development/compilers/llvm/4/openmp.nix
@@ -0,0 +1,25 @@
+{ stdenv
+, fetch
+, cmake
+, zlib
+, llvm
+, perl
+, version
+}:
+
+stdenv.mkDerivation {
+  name = "openmp-${version}";
+
+  src = fetch "openmp" "09kf41zgv551fnv628kqhlwgqkd2bkiwii9gqi6q12djgdddhmfv";
+
+  buildInputs = [ cmake llvm perl ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Components required to build an executable OpenMP program";
+    homepage    = http://openmp.llvm.org/;
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.all;
+  };
+}