diff options
Diffstat (limited to 'pkgs/development/compilers')
19 files changed, 119 insertions, 130 deletions
diff --git a/pkgs/development/compilers/asn1c/default.nix b/pkgs/development/compilers/asn1c/default.nix index d3c4bf19a65b..eda895d726a0 100644 --- a/pkgs/development/compilers/asn1c/default.nix +++ b/pkgs/development/compilers/asn1c/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "asn1c-${version}"; - version = "0.9.27"; + version = "0.9.28"; src = fetchurl { url = "http://lionet.info/soft/asn1c-${version}.tar.gz"; - sha256 = "17nvn2kzvlryasr9dzqg6gs27b9lvqpval0k31pb64bjqbhn8pq2"; + sha256 = "1fc64g45ykmv73kdndr4zdm4wxhimhrir4rxnygxvwkych5l81w0"; }; outputs = [ "out" "doc" "man" ]; 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/gcc/4.5/default.nix b/pkgs/development/compilers/gcc/4.5/default.nix index 19a538e613ee..288a91398d29 100644 --- a/pkgs/development/compilers/gcc/4.5/default.nix +++ b/pkgs/development/compilers/gcc/4.5/default.nix @@ -78,6 +78,9 @@ let version = "4.5.4"; withArch + withCpu + withAbi + + # Ensure that -print-prog-name is able to find the correct programs. + " --with-as=${binutils}/bin/${cross.config}-as" + + " --with-ld=${binutils}/bin/${cross.config}-ld" + (if crossMingw && crossStageStatic then " --with-headers=${libcCross}/include" + " --with-gcc" + diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 714554019e4c..2d615e3b8e8b 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -143,6 +143,9 @@ let version = "4.8.5"; withFpu + withFloat + withMode + + # Ensure that -print-prog-name is able to find the correct programs. + " --with-as=${binutils}/bin/${cross.config}-as" + + " --with-ld=${binutils}/bin/${cross.config}-ld" + (if crossMingw && crossStageStatic then " --with-headers=${libcCross}/include" + " --with-gcc" + @@ -169,10 +172,6 @@ let version = "4.8.5"; (if crossDarwin then " --with-sysroot=${libcCross.out}/share/sysroot" else " --with-headers=${libcCross.dev}/include") + # Ensure that -print-prog-name is able to find the correct programs. - (stdenv.lib.optionalString (crossMingw || crossDarwin) ( - " --with-as=${binutils}/bin/${cross.config}-as" + - " --with-ld=${binutils}/bin/${cross.config}-ld" - )) + " --enable-__cxa_atexit" + " --enable-long-long" + (if crossMingw then diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 3bf279635aa3..93f46fdd0f6d 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -145,6 +145,9 @@ let version = "4.9.4"; withFpu + withFloat + withMode + + # Ensure that -print-prog-name is able to find the correct programs. + " --with-as=${binutils}/bin/${cross.config}-as" + + " --with-ld=${binutils}/bin/${cross.config}-ld" + (if crossMingw && crossStageStatic then " --with-headers=${libcCross}/include" + " --with-gcc" + @@ -169,11 +172,6 @@ let version = "4.9.4"; else (if crossDarwin then " --with-sysroot=${libcCross.out}/share/sysroot" else " --with-headers=${libcCross.dev}/include") + - # Ensure that -print-prog-name is able to find the correct programs. - (stdenv.lib.optionalString (crossMingw || crossDarwin) ( - " --with-as=${binutils}/bin/${cross.config}-as" + - " --with-ld=${binutils}/bin/${cross.config}-ld" - )) + " --enable-__cxa_atexit" + " --enable-long-long" + (if crossMingw then diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix index 79c5b805f453..296b899830b3 100644 --- a/pkgs/development/compilers/gcc/5/default.nix +++ b/pkgs/development/compilers/gcc/5/default.nix @@ -149,6 +149,9 @@ let version = "5.4.0"; withFpu + withFloat + withMode + + # Ensure that -print-prog-name is able to find the correct programs. + " --with-as=${binutils}/bin/${cross.config}-as" + + " --with-ld=${binutils}/bin/${cross.config}-ld" + (if crossMingw && crossStageStatic then " --with-headers=${libcCross}/include" + " --with-gcc" + @@ -173,11 +176,6 @@ let version = "5.4.0"; else (if crossDarwin then " --with-sysroot=${getLib libcCross}/share/sysroot" else " --with-headers=${getDev libcCross}/include") + - # Ensure that -print-prog-name is able to find the correct programs. - (stdenv.lib.optionalString (crossMingw || crossDarwin) ( - " --with-as=${binutils}/bin/${cross.config}-as" + - " --with-ld=${binutils}/bin/${cross.config}-ld" - )) + " --enable-__cxa_atexit" + " --enable-long-long" + (if crossMingw then diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 57bb336ccbfe..c23968d21265 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -145,6 +145,9 @@ let version = "6.3.0"; withFpu + withFloat + withMode + + # Ensure that -print-prog-name is able to find the correct programs. + " --with-as=${binutils}/bin/${cross.config}-as" + + " --with-ld=${binutils}/bin/${cross.config}-ld" + (if crossMingw && crossStageStatic then " --with-headers=${libcCross}/include" + " --with-gcc" + @@ -169,11 +172,6 @@ let version = "6.3.0"; else (if crossDarwin then " --with-sysroot=${getLib libcCross}/share/sysroot" else " --with-headers=${getDev libcCross}/include") + - # Ensure that -print-prog-name is able to find the correct programs. - (stdenv.lib.optionalString (crossMingw || crossDarwin) ( - " --with-as=${binutils}/bin/${cross.config}-as" + - " --with-ld=${binutils}/bin/${cross.config}-ld" - )) + " --enable-__cxa_atexit" + " --enable-long-long" + (if crossMingw then diff --git a/pkgs/development/compilers/gcc/snapshot/default.nix b/pkgs/development/compilers/gcc/snapshot/default.nix index 6b08f2797903..9c3b7a4e7df5 100644 --- a/pkgs/development/compilers/gcc/snapshot/default.nix +++ b/pkgs/development/compilers/gcc/snapshot/default.nix @@ -145,6 +145,9 @@ let version = "7-20170409"; withFpu + withFloat + withMode + + # Ensure that -print-prog-name is able to find the correct programs. + " --with-as=${binutils}/bin/${cross.config}-as" + + " --with-ld=${binutils}/bin/${cross.config}-ld" + (if crossMingw && crossStageStatic then " --with-headers=${libcCross}/include" + " --with-gcc" + @@ -170,10 +173,6 @@ let version = "7-20170409"; (if crossDarwin then " --with-sysroot=${getLib libcCross}/share/sysroot" else " --with-headers=${getDev libcCross}/include") + # Ensure that -print-prog-name is able to find the correct programs. - (stdenv.lib.optionalString (crossMingw || crossDarwin) ( - " --with-as=${binutils}/bin/${cross.config}-as" + - " --with-ld=${binutils}/bin/${cross.config}-ld" - )) + " --enable-__cxa_atexit" + " --enable-long-long" + (if crossMingw then diff --git a/pkgs/development/compilers/ghcjs/base.nix b/pkgs/development/compilers/ghcjs/base.nix index ab68a8fe3b50..4c9ae16a3134 100644 --- a/pkgs/development/compilers/ghcjs/base.nix +++ b/pkgs/development/compilers/ghcjs/base.nix @@ -190,6 +190,6 @@ in mkDerivation (rec { description = "A Haskell to JavaScript compiler that uses the GHC API"; license = stdenv.lib.licenses.bsd3; platforms = ghc.meta.platforms; - maintainers = with stdenv.lib.maintainers; [ jwiegley cstrahan ]; + maintainers = with stdenv.lib.maintainers; [ jwiegley cstrahan dmjio ]; inherit broken; }) diff --git a/pkgs/development/compilers/ghcjs/default.nix b/pkgs/development/compilers/ghcjs/default.nix index eda724e5947b..f23da1149c51 100644 --- a/pkgs/development/compilers/ghcjs/default.nix +++ b/pkgs/development/compilers/ghcjs/default.nix @@ -2,5 +2,5 @@ bootPkgs.callPackage ./base.nix { inherit bootPkgs; - broken = true; # http://hydra.nixos.org/build/45110274 + broken = false; } diff --git a/pkgs/development/compilers/gnu-cobol/default.nix b/pkgs/development/compilers/gnu-cobol/default.nix new file mode 100644 index 000000000000..e5ec3659f0b5 --- /dev/null +++ b/pkgs/development/compilers/gnu-cobol/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchurl, gcc, makeWrapper +, db, gmp, ncurses }: + +let version = { + maj = "2.0"; + min = "rc-2"; +}; +in +stdenv.mkDerivation rec { + name = "gnu-cobol-${version.maj}${version.min}"; + + src = fetchurl { + url = "https://sourceforge.com/projects/open-cobol/files/gnu-cobol/${version.maj}/gnu-cobol-${version.maj}_${version.min}.tar.gz"; + sha256 = "1pj7mjnp3l76zvzrh1xa6d4kw3jkvzqh39sbf02kiinq4y65s7zj"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + buildInputs = [ db gmp ncurses ]; + + postInstall = with stdenv.lib; '' + wrapProgram "$out/bin/cobc" \ + --prefix PATH ':' "${gcc}/bin" \ + --prefix NIX_LDFLAGS ' ' "'$NIX_LDFLAGS'" \ + --prefix NIX_CFLAGS_COMPILE ' ' "'$NIX_CFLAGS_COMPILE'" + ''; + + meta = with stdenv.lib; { + description = "An open-source COBOL compiler"; + homepage = http://sourceforge.net/projects/open-cobol/; + license = licenses.gpl3; + maintainers = with maintainers; [ ericsagnes ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/compilers/go/1.7.nix b/pkgs/development/compilers/go/1.7.nix index 76f6141e2e34..7ecae36a4d5a 100644 --- a/pkgs/development/compilers/go/1.7.nix +++ b/pkgs/development/compilers/go/1.7.nix @@ -24,13 +24,13 @@ in stdenv.mkDerivation rec { name = "go-${version}"; - version = "1.7.4"; + version = "1.7.5"; src = fetchFromGitHub { owner = "golang"; repo = "go"; rev = "go${version}"; - sha256 = "1ks3xph20afrfp3vqs1sjnkpjb0lgxblv8706wa3iiyg7rka4axv"; + sha256 = "00radlwbrssn0x3naamb33cfx7ap2jv7s51bqr705nmn2j5yyblk"; }; # perl is used for testing go vet @@ -105,7 +105,7 @@ stdenv.mkDerivation rec { patches = [ ./remove-tools-1.7.patch - ./ssl-cert-file-1.7.patch + ./ssl-cert-file.patch ./creds-test.patch # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch diff --git a/pkgs/development/compilers/go/1.8.nix b/pkgs/development/compilers/go/1.8.nix index 60125b2e22a9..0be559da79c6 100644 --- a/pkgs/development/compilers/go/1.8.nix +++ b/pkgs/development/compilers/go/1.8.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, tzdata, iana-etc, go_bootstrap, runCommand, writeScriptBin , perl, which, pkgconfig, patch, fetchpatch -, pcre, cacert +, pcre, cacert, llvm , Security, Foundation, bash }: let @@ -24,13 +24,13 @@ in stdenv.mkDerivation rec { name = "go-${version}"; - version = "1.8"; + version = "1.8.1"; src = fetchFromGitHub { owner = "golang"; repo = "go"; rev = "go${version}"; - sha256 = "0plm11rqrqz7frwz0jjcm13x939yhny755ks1adxjzmsngln9prl"; + sha256 = "1157mmzjpk887cpcpn2qy9c69anc22c4p3cjpl84zl7an41x660j"; }; # perl is used for testing go vet @@ -107,18 +107,16 @@ stdenv.mkDerivation rec { patches = [ ./remove-tools-1.8.patch - ./ssl-cert-file-1.8.patch + ./ssl-cert-file.patch ./creds-test.patch ./remove-test-pie-1.8.patch - - # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch - # works fine here for now. - (fetchpatch { - url = "https://github.com/golang/go/commit/91563ced5897faf729a34be7081568efcfedda31.patch"; - sha256 = "1ny5l3f8a9dpjjrnjnsplb66308a0x13sa0wwr4j6yrkc8j4qxqi"; - }) ]; + postPatch = optionalString stdenv.isDarwin '' + echo "substitute hardcoded dsymutil with ${llvm}/bin/llvm-dsymutil" + substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil + ''; + NIX_SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt"; GOOS = if stdenv.isDarwin then "darwin" else "linux"; diff --git a/pkgs/development/compilers/go/ssl-cert-file-1.7.patch b/pkgs/development/compilers/go/ssl-cert-file-1.7.patch deleted file mode 100644 index e35ad9e4b759..000000000000 --- a/pkgs/development/compilers/go/ssl-cert-file-1.7.patch +++ /dev/null @@ -1,78 +0,0 @@ -diff --git a/src/crypto/x509/root_cgo_darwin.go b/src/crypto/x509/root_cgo_darwin.go -index a4b33c7..9700b75 100644 ---- a/src/crypto/x509/root_cgo_darwin.go -+++ b/src/crypto/x509/root_cgo_darwin.go -@@ -151,11 +151,20 @@ int FetchPEMRoots(CFDataRef *pemRoots) { - import "C" - import ( - "errors" -+ "io/ioutil" -+ "os" - "unsafe" - ) - - func loadSystemRoots() (*CertPool, error) { - roots := NewCertPool() -+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" { -+ data, err := ioutil.ReadFile(file) -+ if err == nil { -+ roots.AppendCertsFromPEM(data) -+ return roots, nil -+ } -+ } - - var data C.CFDataRef = nil - err := C.FetchPEMRoots(&data) -diff --git a/src/crypto/x509/root_darwin.go b/src/crypto/x509/root_darwin.go -index 59b303d..d4a34ac 100644 ---- a/src/crypto/x509/root_darwin.go -+++ b/src/crypto/x509/root_darwin.go -@@ -28,16 +28,25 @@ func (c *Certificate) systemVerify(opts *VerifyOptions) (chains [][]*Certificate - // The linker will not include these unused functions in binaries built with cgo enabled. - - func execSecurityRoots() (*CertPool, error) { -+ var ( -+ mu sync.Mutex -+ roots = NewCertPool() -+ ) -+ -+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" { -+ data, err := ioutil.ReadFile(file) -+ if err == nil { -+ roots.AppendCertsFromPEM(data) -+ return roots, nil -+ } -+ } -+ - cmd := exec.Command("/usr/bin/security", "find-certificate", "-a", "-p", "/System/Library/Keychains/SystemRootCertificates.keychain") - data, err := cmd.Output() - if err != nil { - return nil, err - } - -- var ( -- mu sync.Mutex -- roots = NewCertPool() -- ) - add := func(cert *Certificate) { - mu.Lock() - defer mu.Unlock() -diff --git a/src/crypto/x509/root_unix.go b/src/crypto/x509/root_unix.go -index 7bcb3d6..3986e1a 100644 ---- a/src/crypto/x509/root_unix.go -+++ b/src/crypto/x509/root_unix.go -@@ -24,6 +24,14 @@ func (c *Certificate) systemVerify(opts *VerifyOptions) (chains [][]*Certificate - - func loadSystemRoots() (*CertPool, error) { - roots := NewCertPool() -+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" { -+ data, err := ioutil.ReadFile(file) -+ if err == nil { -+ roots.AppendCertsFromPEM(data) -+ return roots, nil -+ } -+ } -+ - var firstErr error - for _, file := range certFiles { - data, err := ioutil.ReadFile(file) diff --git a/pkgs/development/compilers/go/ssl-cert-file-1.8.patch b/pkgs/development/compilers/go/ssl-cert-file.patch index 052655eed52c..052655eed52c 100644 --- a/pkgs/development/compilers/go/ssl-cert-file-1.8.patch +++ b/pkgs/development/compilers/go/ssl-cert-file.patch 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; + }; +} diff --git a/pkgs/development/compilers/ponyc/default.nix b/pkgs/development/compilers/ponyc/default.nix index 0a90927751ae..6b7f87b1e954 100644 --- a/pkgs/development/compilers/ponyc/default.nix +++ b/pkgs/development/compilers/ponyc/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation ( rec { name = "ponyc-${version}"; - version = "0.13.1"; + version = "0.14.0"; src = fetchFromGitHub { owner = "ponylang"; repo = "ponyc"; rev = version; - sha256 = "1x3w7mxpwgf2bn2c1qqxbj4w5gp775l7r42lj9jvspayb6a6w28s"; + sha256 = "0zzr3mmjp7010d3jfly6lbwaib546praml97kgj92yixahnwz533"; }; buildInputs = [ llvm makeWrapper which ]; diff --git a/pkgs/development/compilers/souper/default.nix b/pkgs/development/compilers/souper/default.nix index 6ea135ea9906..327139ce0455 100644 --- a/pkgs/development/compilers/souper/default.nix +++ b/pkgs/development/compilers/souper/default.nix @@ -9,14 +9,15 @@ let rev = "57cd3d43056b029d9da3c6b3c666c4153554c04f"; sha256 = "197wb7nbirlfpx2jr3afpjjhcj7slc4dxxi02j3kmazz9kcqaygz"; }; -in stdenv.mkDerivation { - name = "souper-unstable-2017-03-07"; +in stdenv.mkDerivation rec { + name = "souper-unstable-${version}"; + version = "2017-03-23"; src = fetchFromGitHub { owner = "google"; repo = "souper"; - rev = "5faed54ddc4a0e0e12647a0eac1da455a1067a47"; - sha256 = "1v8ml94ryw5wdls9syvicx4sc9l34yaq8r7cf7is6x7y1q677rps"; + rev = "cf2911d2eb1e7c8ab465df5a722fa5cdac06e6fc"; + sha256 = "1kg08a1af4di729pn1pip2lzqzlvjign6av95214f5rr3cq2q0cl"; }; nativeBuildInputs = [ |