diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2017-12-07 01:49:31 -0500 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2017-12-07 01:49:31 -0500 |
commit | 3a59cd87f26cc59c91fb821749b1ec0d64922f87 (patch) | |
tree | 52b8e0667bed6c00ea98e11b3fc325535f838a08 /pkgs/development/compilers | |
parent | 51948eab9415fde1825dea5c7d31b99b2e1a0fdb (diff) | |
parent | 93cd0685c5ac4d8f21d8586d3e5c45cd7394fab9 (diff) |
Merge commit '93cd0685c5ac4d8f21d8586d3e5c45cd7394fab9' into gcc-modernize-builder
Diffstat (limited to 'pkgs/development/compilers')
134 files changed, 1257 insertions, 524 deletions
diff --git a/pkgs/development/compilers/abcl/default.nix b/pkgs/development/compilers/abcl/default.nix index c296f690fa52e..678cdcc22ccf8 100644 --- a/pkgs/development/compilers/abcl/default.nix +++ b/pkgs/development/compilers/abcl/default.nix @@ -35,6 +35,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.gpl3 ; maintainers = [stdenv.lib.maintainers.raskin]; platforms = stdenv.lib.platforms.linux; - homepage = "https://common-lisp.net/project/armedbear/"; + homepage = https://common-lisp.net/project/armedbear/; }; } diff --git a/pkgs/development/compilers/adobe-flex-sdk/default.nix b/pkgs/development/compilers/adobe-flex-sdk/default.nix index 03cfee61ce484..ccb366ffe1cb5 100644 --- a/pkgs/development/compilers/adobe-flex-sdk/default.nix +++ b/pkgs/development/compilers/adobe-flex-sdk/default.nix @@ -32,9 +32,9 @@ stdenv.mkDerivation rec { done ''; - meta = { + meta = { description = "Flex SDK for Adobe Flash / ActionScript"; - homepage = "http://www.adobe.com/support/documentation/en/flex/3/releasenotes_flex3_sdk.html#installation"; + homepage = "http://www.adobe.com/products/flex.html"; license = stdenv.lib.licenses.mpl11; platforms = stdenv.lib.platforms.unix; }; diff --git a/pkgs/development/compilers/aldor/default.nix b/pkgs/development/compilers/aldor/default.nix index 09ccf9510bbd8..604838e883163 100644 --- a/pkgs/development/compilers/aldor/default.nix +++ b/pkgs/development/compilers/aldor/default.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation { meta = { # Please become a maintainer to fix this package broken = true; - homepage = "http://www.aldor.org/"; + homepage = http://www.aldor.org/; description = "Programming language with an expressive type system"; license = stdenv.lib.licenses.asl20; diff --git a/pkgs/development/compilers/as31/default.nix b/pkgs/development/compilers/as31/default.nix index fa34b3afe51b6..93b251707e803 100644 --- a/pkgs/development/compilers/as31/default.nix +++ b/pkgs/development/compilers/as31/default.nix @@ -32,7 +32,7 @@ in stdenv.mkDerivation { ''; meta = with stdenv.lib; { - homepage = "http://wiki.erazor-zone.de/wiki:projects:linux:as31"; + homepage = http://wiki.erazor-zone.de/wiki:projects:linux:as31; description = "An 8031/8051 assembler by Ken Stauffer and Theo Deraadt which produces a variety of object code output formats"; maintainers = with maintainers; [ aneeshusa ]; platforms = with platforms; unix; diff --git a/pkgs/development/compilers/ccl/default.nix b/pkgs/development/compilers/ccl/default.nix index 3e1784424e3c2..7ece0ffda533e 100644 --- a/pkgs/development/compilers/ccl/default.nix +++ b/pkgs/development/compilers/ccl/default.nix @@ -68,11 +68,12 @@ stdenv.mkDerivation rec { mkdir -p "$out/bin" echo -e '#!/bin/sh\n'"$out/share/ccl-installation/${CCL_RUNTIME}"' "$@"\n' > "$out"/bin/"${CCL_RUNTIME}" chmod a+x "$out"/bin/"${CCL_RUNTIME}" + ln -s "$out"/bin/"${CCL_RUNTIME}" "$out"/bin/ccl ''; meta = with stdenv.lib; { description = "Clozure Common Lisp"; - homepage = http://ccl.clozure.com/; + homepage = https://ccl.clozure.com/; maintainers = with maintainers; [ raskin muflax tohl ]; platforms = attrNames options; license = licenses.lgpl21; diff --git a/pkgs/development/compilers/chicken/default.nix b/pkgs/development/compilers/chicken/default.nix index 24d583ed8862f..792ecc739a504 100644 --- a/pkgs/development/compilers/chicken/default.nix +++ b/pkgs/development/compilers/chicken/default.nix @@ -69,7 +69,7 @@ stdenv.mkDerivation { CHICKEN is a compiler for the Scheme programming language. CHICKEN produces portable and efficient C, supports almost all of the R5RS Scheme language standard, and includes many - enhancements and extensions. CHICKEN runs on Linux, MacOS X, + enhancements and extensions. CHICKEN runs on Linux, macOS, Windows, and many Unix flavours. ''; }; diff --git a/pkgs/development/compilers/compcert/default.nix b/pkgs/development/compilers/compcert/default.nix index 8086a9f974950..f519776b68918 100644 --- a/pkgs/development/compilers/compcert/default.nix +++ b/pkgs/development/compilers/compcert/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { configurePhase = '' substituteInPlace ./configure --replace '{toolprefix}gcc' '{toolprefix}cc' ./configure -clightgen -prefix $out -toolprefix ${tools}/bin/ '' + - (if stdenv.isDarwin then "ia32-macosx" else "ia32-linux"); + (if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux"); installTargets = "documentation install"; @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { mkdir -p $lib/share/doc/compcert mv doc/html $lib/share/doc/compcert/ mkdir -p $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/ - mv backend cfrontend common cparser driver flocq x86 x86_32 lib \ + mv backend cfrontend common cparser driver flocq x86 x86_64 lib \ $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/ ''; diff --git a/pkgs/development/compilers/crystal/default.nix b/pkgs/development/compilers/crystal/default.nix index 8bad8f6f4d311..62a504ef96682 100644 --- a/pkgs/development/compilers/crystal/default.nix +++ b/pkgs/development/compilers/crystal/default.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchurl, boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm_39, makeWrapper }: +{ stdenv, fetchurl, boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm_4, makeWrapper }: stdenv.mkDerivation rec { - version = "0.22.0"; + version = "0.23.0"; name = "crystal-${version}-1"; arch = { @@ -14,20 +14,20 @@ stdenv.mkDerivation rec { url = "https://github.com/crystal-lang/crystal/releases/download/${version}/crystal-${version}-1-${arch}.tar.gz"; sha256 = { - "x86_64-linux" = "03c1nmjibz8f7yhrczd49gmccx4ivqz121c64hl384w69227p7bq"; - "i686-linux" = "1s8gpmxa9wpcc2a9csl205lcpipn1i7gwybapby3q34y7xnq9160"; - "x86_64-darwin" = "1bnfxb0hbkx4qlkc1l88sdhcnhacqzy31hh7ksz0prah83g6vbxa"; + "x86_64-linux" = "0nhs7swbll8hrk15kmmywngkhij80x62axiskb1gjmiwvzhlh0qx"; + "i686-linux" = "03xp8d3lqflzzm26lpdn4yavj87qzgd6xyrqxp2pn9ybwrq8fx8a"; + "x86_64-darwin" = "1prz6c1gs8z7dgpdy2id2mjn1c8f5p2bf9b39985bav448njbyjz"; }."${stdenv.system}" or (throw "system ${stdenv.system} not supported"); }; src = fetchurl { url = "https://github.com/crystal-lang/crystal/archive/${version}.tar.gz"; - sha256 = "0iw5i4hjzfxykwfdyzix23pgm3gxd79r9yss3abvva8cf7ci37sv"; + sha256 = "05ymwmjkl1b4m888p725kybpiap5ag2vj8l07d59j02inm5r0rcv"; }; # crystal on Darwin needs libiconv to build buildInputs = [ - boehmgc libatomic_ops pcre libevent llvm_39 makeWrapper + boehmgc libatomic_ops pcre libevent llvm_4 makeWrapper ] ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ]; @@ -86,6 +86,8 @@ stdenv.mkDerivation rec { install -Dm644 etc/completion.bash $out/share/bash-completion/completions/crystal install -Dm644 etc/completion.zsh $out/share/zsh/site-functions/_crystal + install -Dm644 man/crystal.1 $out/share/man/man1/crystal.1 + install -Dm644 LICENSE $out/share/licenses/crystal/LICENSE ''; @@ -93,7 +95,7 @@ stdenv.mkDerivation rec { meta = { description = "A compiled language with Ruby like syntax and type inference"; - homepage = "https://crystal-lang.org/"; + homepage = https://crystal-lang.org/; license = stdenv.lib.licenses.asl20; maintainers = with stdenv.lib.maintainers; [ mingchuan ]; platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; diff --git a/pkgs/development/compilers/cudatoolkit/default.nix b/pkgs/development/compilers/cudatoolkit/default.nix index 17965e20d24a6..0b219b8044713 100644 --- a/pkgs/development/compilers/cudatoolkit/default.nix +++ b/pkgs/development/compilers/cudatoolkit/default.nix @@ -90,7 +90,7 @@ let meta = with stdenv.lib; { description = "A compiler for NVIDIA GPUs, math libraries, and tools"; - homepage = "https://developer.nvidia.com/cuda-toolkit"; + homepage = https://developer.nvidia.com/cuda-toolkit; platforms = platforms.linux; license = licenses.unfree; }; diff --git a/pkgs/development/compilers/dale/default.nix b/pkgs/development/compilers/dale/default.nix index 6d9adaa151813..fae1c1d1b40d7 100644 --- a/pkgs/development/compilers/dale/default.nix +++ b/pkgs/development/compilers/dale/default.nix @@ -23,6 +23,8 @@ in stdenv.mkDerivation { buildInputs = [ cmake pkgconfig libffi llvm_35 ] ++ stdenv.lib.optional doCheck perl; + patches = [ ./link-llvm.patch ]; + inherit doCheck; checkTarget = "tests"; @@ -35,7 +37,7 @@ in stdenv.mkDerivation { Dale is a system (no GC) programming language that uses S-expressions for syntax and supports syntactic macros. ''; - homepage = "https://github.com/tomhrr/dale"; + homepage = https://github.com/tomhrr/dale; license = licenses.bsd3; maintainers = with maintainers; [ amiloradovsky ]; platforms = with platforms; [ "i686-linux" "x86_64-linux" ]; diff --git a/pkgs/development/compilers/dale/link-llvm.patch b/pkgs/development/compilers/dale/link-llvm.patch new file mode 100644 index 0000000000000..3facec91874f3 --- /dev/null +++ b/pkgs/development/compilers/dale/link-llvm.patch @@ -0,0 +1,10 @@ +--- dale-39e16d8e89fa070de65a673d4462e783d530f95a-src.org/CMakeLists.txt 2017-06-22 08:01:05.839531242 +0100 ++++ dale-39e16d8e89fa070de65a673d4462e783d530f95a-src/CMakeLists.txt 2017-06-22 07:59:11.777566801 +0100 +@@ -78,6 +78,7 @@ + execute_process (COMMAND ${LLVM_CONFIG} --libs + OUTPUT_VARIABLE LLVM_LIBS + OUTPUT_STRIP_TRAILING_WHITESPACE) ++STRING(REGEX REPLACE " " ";" LLVM_LIBS "${LLVM_LIBS}") + if (${D_LLVM_VERSION_MINOR} GREATER 4) + execute_process (COMMAND ${LLVM_CONFIG} --system-libs + OUTPUT_VARIABLE LLVM_SYSTEM_LIBS diff --git a/pkgs/development/compilers/dmd/2.067.1.nix b/pkgs/development/compilers/dmd/2.067.1.nix index 4dbe922ce8112..3cf530e9e5e82 100644 --- a/pkgs/development/compilers/dmd/2.067.1.nix +++ b/pkgs/development/compilers/dmd/2.067.1.nix @@ -1,47 +1,122 @@ -{ stdenv, fetchurl, unzip, makeWrapper }: +{ stdenv, fetchFromGitHub +, makeWrapper, unzip, which +, curl, tzdata +}: -stdenv.mkDerivation { - name = "dmd-2.067.1"; +stdenv.mkDerivation rec { + name = "dmd-${version}"; + # This is the last version of dmd which is buildable without a D compiler. + # So we use this as a bootstrap version. + # The DMD frontend has been ported to D in 2.069.0 but idgen was already + # ported in 2.068.0. + version = "2.067.1"; - src = fetchurl { - url = http://downloads.dlang.org/releases/2015/dmd.2.067.1.zip; - sha256 = "0ny99vfllvvgcl79pwisxcdnb3732i827k9zg8c0j4s0n79k5z94"; - }; + srcs = [ + (fetchFromGitHub { + owner = "dlang"; + repo = "dmd"; + rev = "v${version}"; + sha256 = "0fm29lg8axfmzdaj0y6vg70lhwb5d9rv4aavnvdd15xjschinlcz"; + }) + (fetchFromGitHub { + owner = "dlang"; + repo = "druntime"; + rev = "v${version}"; + sha256 = "1n2qfw9kmnql0fk2nxikispqs7vh85nhvyyr00fk227n9lgnqf02"; + }) + (fetchFromGitHub { + owner = "dlang"; + repo = "phobos"; + rev = "v${version}"; + sha256 = "0fywgds9xvjcgnqxmpwr67p3wi2m535619pvj159cgwv5y0nr3p1"; + }) + ]; + + sourceRoot = "."; + + postUnpack = '' + mv dmd-v${version}-src dmd + mv druntime-v${version}-src druntime + mv phobos-v${version}-src phobos + ''; + + # Compile with PIC to prevent colliding modules with binutils 2.28. + # https://issues.dlang.org/show_bug.cgi?id=17375 + usePIC = "-fPIC"; - nativeBuildInputs = [ unzip makeWrapper ]; + postPatch = '' + # Ugly hack so the dlopen call has a chance to succeed. + # https://issues.dlang.org/show_bug.cgi?id=15391 + substituteInPlace phobos/std/net/curl.d \ + --replace libcurl.so ${curl.out}/lib/libcurl.so - postPatch = stdenv.lib.optionalString stdenv.isDarwin '' - # Allow to use "clang++", commented in Makefile - substituteInPlace src/dmd/posix.mak \ - --replace g++ clang++ \ - --replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_ + # Ugly hack to fix the hardcoded path to zoneinfo in the source file. + # https://issues.dlang.org/show_bug.cgi?id=15391 + substituteInPlace phobos/std/datetime.d \ + --replace /usr/share/zoneinfo/ ${tzdata}/share/zoneinfo/ - # Was not able to compile on darwin due to "__inline_isnanl" - # being undefined. - substituteInPlace src/dmd/root/port.c --replace __inline_isnanl __inline_isnan + substituteInPlace druntime/test/shared/Makefile \ + --replace "DFLAGS:=" "DFLAGS:=${usePIC} " + + # phobos uses curl, so we need to patch the path to the lib. + substituteInPlace phobos/posix.mak \ + --replace "-soname=libcurl.so.4" "-soname=${curl.out}/lib/libcurl.so.4" + + # Use proper C++ compiler + substituteInPlace dmd/src/posix.mak \ + --replace g++ $CXX '' - + stdenv.lib.optionalString stdenv.isLinux '' - substituteInPlace src/dmd/root/port.c \ + + + stdenv.lib.optionalString stdenv.hostPlatform.isLinux '' + substituteInPlace dmd/src/root/port.c \ --replace "#include <bits/mathdef.h>" "#include <complex.h>" - ''; + '' + + + stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' + substituteInPlace dmd/src/posix.mak \ + --replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_ + + # Was not able to compile on darwin due to "__inline_isnanl" + # being undefined. + substituteInPlace dmd/src/root/port.c --replace __inline_isnanl __inline_isnan + ''; + + nativeBuildInputs = [ makeWrapper unzip which ]; + buildInputs = [ curl tzdata ]; # Buid and install are based on http://wiki.dlang.org/Building_DMD buildPhase = '' - cd src/dmd + cd dmd make -f posix.mak INSTALL_DIR=$out - export DMD=$PWD/dmd + export DMD=$PWD/src/dmd + cd ../druntime + make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD + cd ../phobos + make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD + cd .. + ''; + + doCheck = true; + + checkPhase = '' + cd dmd + export DMD=$PWD/src/dmd cd ../druntime - make -f posix.mak INSTALL_DIR=$out DMD=$DMD + make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release cd ../phobos - make -f posix.mak INSTALL_DIR=$out DMD=$DMD - cd ../.. + make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release + cd .. ''; installPhase = '' - cd src/dmd + cd dmd mkdir $out mkdir $out/bin - cp dmd $out/bin + cp $PWD/src/dmd $out/bin + mkdir -p $out/share/man/man1 + mkdir -p $out/share/man/man5 + cp -r docs/man/man1/* $out/share/man/man1/ + cp -r docs/man/man5/* $out/share/man/man5/ cd ../druntime mkdir $out/include @@ -50,9 +125,11 @@ stdenv.mkDerivation { cd ../phobos mkdir $out/lib - ${let bits = if stdenv.is64bit then "64" else "32"; - osname = if stdenv.isDarwin then "osx" else "linux"; in - "cp generated/${osname}/release/${bits}/libphobos2.a $out/lib" + ${ + let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits; + osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; + extension = if stdenv.hostPlatform.isDarwin then "a" else "{a,so}"; in + "cp generated/${osname}/release/${bits}/libphobos2.${extension} $out/lib" } cp -r std $out/include/d2 @@ -65,14 +142,17 @@ stdenv.mkDerivation { cd $out/bin tee dmd.conf << EOF [Environment] - DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--no-warn-search-mismatch -L--export-dynamic"} + DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--export-dynamic"} -fPIC EOF ''; meta = with stdenv.lib; { - description = "D language compiler"; + description = "Official reference compiler for the D language"; homepage = http://dlang.org/; - license = licenses.free; # parts under different licenses + # Everything is now Boost licensed, even the backend. + # https://github.com/dlang/dmd/pull/6680 + license = licenses.boost; platforms = platforms.unix; }; } + diff --git a/pkgs/development/compilers/dmd/default.nix b/pkgs/development/compilers/dmd/default.nix index 41162c4e50e73..278a77f629037 100644 --- a/pkgs/development/compilers/dmd/default.nix +++ b/pkgs/development/compilers/dmd/default.nix @@ -1,44 +1,123 @@ -{ stdenv, fetchurl +{ stdenv, fetchFromGitHub , makeWrapper, unzip, which - +, curl, tzdata # Versions 2.070.2 and up require a working dmd compiler to build: , bootstrapDmd }: stdenv.mkDerivation rec { name = "dmd-${version}"; - version = "2.070.2"; + version = "2.075.1"; - src = fetchurl { - url = "http://downloads.dlang.org/releases/2.x/${version}/dmd.${version}.zip"; - sha256 = "1pbhxxf41v816j0aky3q2pcd8a6phy3363l7vr5r5pg8ps3gl701"; - }; + srcs = [ + (fetchFromGitHub { + owner = "dlang"; + repo = "dmd"; + rev = "v${version}"; + sha256 = "0kq6r8rcghvzk5jcphg89l85rg734s29bssd2rcw3fygx0k9a9k5"; + }) + (fetchFromGitHub { + owner = "dlang"; + repo = "druntime"; + rev = "v${version}"; + sha256 = "0idn2v1lmp7hl637g3i7pdfj9mjk4sclkz4cm77nl8873k2fhk8j"; + }) + (fetchFromGitHub { + owner = "dlang"; + repo = "phobos"; + rev = "v${version}"; + sha256 = "1a7q5fd15yspgs5plxgx54jyrcwgzlyw3rahmz04jd2s5h56dj04"; + }) + ]; - nativeBuildInputs = [ bootstrapDmd makeWrapper unzip which ]; + sourceRoot = "."; - postPatch = stdenv.lib.optionalString stdenv.isDarwin '' - # Allow to use "clang++", commented in Makefile - substituteInPlace src/dmd/posix.mak \ - --replace g++ clang++ \ - --replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_ + postUnpack = '' + mv dmd-v${version}-src dmd + mv druntime-v${version}-src druntime + mv phobos-v${version}-src phobos ''; + # Compile with PIC to prevent colliding modules with binutils 2.28. + # https://issues.dlang.org/show_bug.cgi?id=17375 + usePIC = "-fPIC"; + + postPatch = '' + # Ugly hack so the dlopen call has a chance to succeed. + # https://issues.dlang.org/show_bug.cgi?id=15391 + substituteInPlace phobos/std/net/curl.d \ + --replace libcurl.so ${curl.out}/lib/libcurl.so + + # Ugly hack to fix the hardcoded path to zoneinfo in the source file. + # https://issues.dlang.org/show_bug.cgi?id=15391 + substituteInPlace phobos/std/datetime/timezone.d \ + --replace /usr/share/zoneinfo/ ${tzdata}/share/zoneinfo/ + + substituteInPlace druntime/test/common.mak \ + --replace "DFLAGS:=" "DFLAGS:=${usePIC} " + + # phobos uses curl, so we need to patch the path to the lib. + substituteInPlace phobos/posix.mak \ + --replace "-soname=libcurl.so.4" "-soname=${curl.out}/lib/libcurl.so.4" + + # Use proper C++ compiler + substituteInPlace dmd/posix.mak \ + --replace g++ $CXX + '' + + + stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' + substituteInPlace dmd/posix.mak \ + --replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_ + ''; + + nativeBuildInputs = [ bootstrapDmd makeWrapper unzip which ]; + buildInputs = [ curl tzdata ]; + # Buid and install are based on http://wiki.dlang.org/Building_DMD buildPhase = '' - cd src/dmd + cd dmd make -f posix.mak INSTALL_DIR=$out - export DMD=$PWD/dmd + ${ + let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits; + osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in + "export DMD=$PWD/generated/${osname}/release/${bits}/dmd" + } cd ../druntime - make -f posix.mak INSTALL_DIR=$out DMD=$DMD + make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD cd ../phobos - make -f posix.mak INSTALL_DIR=$out DMD=$DMD - cd ../.. + make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD + cd .. + ''; + + doCheck = true; + + checkPhase = '' + cd dmd + ${ + let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits; + osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in + "export DMD=$PWD/generated/${osname}/release/${bits}/dmd" + } + cd ../druntime + make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release + cd ../phobos + make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release + cd .. ''; installPhase = '' - cd src/dmd + cd dmd mkdir $out mkdir $out/bin - cp dmd $out/bin + ${ + let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits; + osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in + "cp $PWD/generated/${osname}/release/${bits}/dmd $out/bin" + } + + mkdir -p $out/share/man/man1 + mkdir -p $out/share/man/man5 + cp -r docs/man/man1/* $out/share/man/man1/ + cp -r docs/man/man5/* $out/share/man/man5/ cd ../druntime mkdir $out/include @@ -47,9 +126,11 @@ stdenv.mkDerivation rec { cd ../phobos mkdir $out/lib - ${let bits = if stdenv.is64bit then "64" else "32"; - osname = if stdenv.isDarwin then "osx" else "linux"; in - "cp generated/${osname}/release/${bits}/libphobos2.a $out/lib" + ${ + let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits; + osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; + extension = if stdenv.hostPlatform.isDarwin then "a" else "{a,so}"; in + "cp generated/${osname}/release/${bits}/libphobos2.${extension} $out/lib" } cp -r std $out/include/d2 @@ -62,14 +143,17 @@ stdenv.mkDerivation rec { cd $out/bin tee dmd.conf << EOF [Environment] - DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--no-warn-search-mismatch -L--export-dynamic"} + DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--export-dynamic"} -fPIC EOF ''; meta = with stdenv.lib; { - description = "D language compiler"; + description = "Official reference compiler for the D language"; homepage = http://dlang.org/; - license = licenses.free; # parts under different licenses + # Everything is now Boost licensed, even the backend. + # https://github.com/dlang/dmd/pull/6680 + license = licenses.boost; platforms = platforms.unix; }; } + diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix index f51e3af25ee8c..1e6e0e8c1f6b5 100644 --- a/pkgs/development/compilers/edk2/default.nix +++ b/pkgs/development/compilers/edk2/default.nix @@ -34,7 +34,7 @@ edk2 = stdenv.mkDerivation { meta = { description = "Intel EFI development kit"; - homepage = http://sourceforge.net/projects/edk2/; + homepage = https://sourceforge.net/projects/edk2/; license = stdenv.lib.licenses.bsd2; platforms = ["x86_64-linux" "i686-linux"]; }; diff --git a/pkgs/development/compilers/elm/packages/elm-compiler.nix b/pkgs/development/compilers/elm/packages/elm-compiler.nix index b0943f1ece359..1242f556838a7 100644 --- a/pkgs/development/compilers/elm/packages/elm-compiler.nix +++ b/pkgs/development/compilers/elm/packages/elm-compiler.nix @@ -32,7 +32,7 @@ mkDerivation { test-framework-quickcheck2 text union-find ]; jailbreak = true; - homepage = "http://elm-lang.org"; + homepage = http://elm-lang.org; description = "Values to help with elm-package, elm-make, and elm-lang.org."; license = stdenv.lib.licenses.bsd3; # added manually since tests are not passing diff --git a/pkgs/development/compilers/elm/packages/elm-format.nix b/pkgs/development/compilers/elm/packages/elm-format.nix index 6fb36d7cbfb9f..a9340fc94fe40 100644 --- a/pkgs/development/compilers/elm/packages/elm-format.nix +++ b/pkgs/development/compilers/elm/packages/elm-format.nix @@ -32,7 +32,7 @@ mkDerivation { postInstall = '' ln -s $out/bin/elm-format-0.18 $out/bin/elm-format ''; - homepage = "http://elm-lang.org"; + homepage = http://elm-lang.org; description = "A source code formatter for Elm"; license = stdenv.lib.licenses.bsd3; } diff --git a/pkgs/development/compilers/elm/packages/elm-make.nix b/pkgs/development/compilers/elm/packages/elm-make.nix index dc1760e2958b1..98e57ac9b7c60 100644 --- a/pkgs/development/compilers/elm/packages/elm-make.nix +++ b/pkgs/development/compilers/elm/packages/elm-make.nix @@ -20,7 +20,7 @@ mkDerivation { time ]; jailbreak = true; - homepage = "http://elm-lang.org"; + homepage = http://elm-lang.org; description = "A build tool for Elm projects"; license = stdenv.lib.licenses.bsd3; } diff --git a/pkgs/development/compilers/elm/packages/elm-package.nix b/pkgs/development/compilers/elm/packages/elm-package.nix index f93432dc0a306..4a60b3dfb3877 100644 --- a/pkgs/development/compilers/elm/packages/elm-package.nix +++ b/pkgs/development/compilers/elm/packages/elm-package.nix @@ -29,7 +29,7 @@ mkDerivation { zip-archive ]; jailbreak = true; - homepage = "http://github.com/elm-lang/elm-package"; + homepage = https://github.com/elm-lang/elm-package; description = "Package manager for Elm libraries"; license = stdenv.lib.licenses.bsd3; } diff --git a/pkgs/development/compilers/elm/packages/elm-reactor.nix b/pkgs/development/compilers/elm/packages/elm-reactor.nix index 08bf5779b74a2..41611b3cdd033 100644 --- a/pkgs/development/compilers/elm/packages/elm-reactor.nix +++ b/pkgs/development/compilers/elm/packages/elm-reactor.nix @@ -22,7 +22,7 @@ mkDerivation { websockets-snap ]; jailbreak = true; - homepage = "http://elm-lang.org"; + homepage = http://elm-lang.org; description = "Interactive development tool for Elm programs"; license = stdenv.lib.licenses.bsd3; } diff --git a/pkgs/development/compilers/elm/packages/elm-repl.nix b/pkgs/development/compilers/elm/packages/elm-repl.nix index 64e29596099c3..8c168dedc7597 100644 --- a/pkgs/development/compilers/elm/packages/elm-repl.nix +++ b/pkgs/development/compilers/elm/packages/elm-repl.nix @@ -24,7 +24,7 @@ mkDerivation { test-framework test-framework-hunit test-framework-quickcheck2 ]; jailbreak = true; - homepage = "https://github.com/elm-lang/elm-repl"; + homepage = https://github.com/elm-lang/elm-repl; description = "a REPL for Elm"; license = stdenv.lib.licenses.bsd3; } diff --git a/pkgs/development/compilers/emscripten-fastcomp/default.nix b/pkgs/development/compilers/emscripten-fastcomp/default.nix index ae7a5ce87b25b..f35ca26584f1b 100644 --- a/pkgs/development/compilers/emscripten-fastcomp/default.nix +++ b/pkgs/development/compilers/emscripten-fastcomp/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, cmake, python, ... }: let - rev = "1.37.13"; + rev = "1.37.16"; gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc; in stdenv.mkDerivation rec { @@ -10,14 +10,14 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "kripken"; repo = "emscripten-fastcomp"; - sha256 = "1r4f4d5dmhxqwmpf2psainx7sj1j26fdp5acifdwg4sbbpsv96az"; + sha256 = "0wj9sc0gciaiidcjv6wb0qn6ks06xds7q34351masc7qpvd217by"; inherit rev; }; srcFL = fetchFromGitHub { owner = "kripken"; repo = "emscripten-fastcomp-clang"; - sha256 = "1p0108iz77vmzm7i1aa29sk93g5vd95xiwmags18qkr7x3fmfqsw"; + sha256 = "1akdgxzxhzjbhp4d14ajcrp9jrf39x004a726ly2gynqc185l4j7"; inherit rev; }; diff --git a/pkgs/development/compilers/emscripten/default.nix b/pkgs/development/compilers/emscripten/default.nix index b39198f30a48b..ae80ad6fc808e 100644 --- a/pkgs/development/compilers/emscripten/default.nix +++ b/pkgs/development/compilers/emscripten/default.nix @@ -3,7 +3,7 @@ }: let - rev = "1.37.13"; + rev = "1.37.16"; appdir = "share/emscripten"; in @@ -13,7 +13,7 @@ stdenv.mkDerivation { src = fetchFromGitHub { owner = "kripken"; repo = "emscripten"; - sha256 = "0xnr8nq431pksb346fwsbs5knqmcygb8mywzzl0c9nz3ims1vkx5"; + sha256 = "1qyhjx5zza01vnwmj6qzxbkagxknn4kzb6gw12fqw5q8pa8fy4zy"; inherit rev; }; diff --git a/pkgs/development/compilers/fsharp/default.nix b/pkgs/development/compilers/fsharp/default.nix index 2971fd8a98b0e..751d44a38a4c3 100644 --- a/pkgs/development/compilers/fsharp/default.nix +++ b/pkgs/development/compilers/fsharp/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { meta = { description = "A functional CLI language"; - homepage = "http://fsharp.org/"; + homepage = http://fsharp.org/; license = stdenv.lib.licenses.asl20; maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ]; platforms = with stdenv.lib.platforms; unix; diff --git a/pkgs/development/compilers/fsharp41/default.nix b/pkgs/development/compilers/fsharp41/default.nix index 35e6749659e07..488aaa228dae7 100644 --- a/pkgs/development/compilers/fsharp41/default.nix +++ b/pkgs/development/compilers/fsharp41/default.nix @@ -79,7 +79,7 @@ stdenv.mkDerivation rec { meta = { description = "A functional CLI language"; - homepage = "http://fsharp.org/"; + homepage = http://fsharp.org/; license = stdenv.lib.licenses.asl20; maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ]; platforms = with stdenv.lib.platforms; unix; diff --git a/pkgs/development/compilers/fstar/default.nix b/pkgs/development/compilers/fstar/default.nix index 51777f748e30a..0887dd9925269 100644 --- a/pkgs/development/compilers/fstar/default.nix +++ b/pkgs/development/compilers/fstar/default.nix @@ -82,7 +82,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "ML-like functional programming language aimed at program verification"; - homepage = "https://www.fstar-lang.org"; + homepage = https://www.fstar-lang.org; license = licenses.asl20; platforms = with platforms; darwin ++ linux; }; diff --git a/pkgs/development/compilers/gambit/bootstrap.nix b/pkgs/development/compilers/gambit/bootstrap.nix new file mode 100644 index 0000000000000..65fb20aa26037 --- /dev/null +++ b/pkgs/development/compilers/gambit/bootstrap.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, autoconf, ... }: + +stdenv.mkDerivation rec { + name = "gambit-bootstrap-${version}"; + version = "4.8.8"; + tarball_version = "v4_8_8"; + + src = fetchurl { + url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-${tarball_version}-devel.tgz"; + sha256 = "075k2z04d6svxqf9paj3xvp0mm0xzy0vbma1y61s0lkywdim8xjz"; + }; + + buildInputs = [ autoconf ]; + + configurePhase = '' + ./configure --prefix=$out --enable-single-host + ''; + + buildPhase = '' + # Copy the (configured) sources now, not later, so we don't have to filter out + # all the intermediate build products. + mkdir -p $out ; cp -rp . $out/ + + # build the gsc-boot* compiler + make bootstrap + ''; + + installPhase = '' + cp -fa ./ $out/ + ''; + + forceShare = [ "info" ]; + + meta = { + description = "Optimizing Scheme to C compiler, bootstrap step"; + homepage = "http://gambitscheme.org"; + license = stdenv.lib.licenses.lgpl2; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin fare ]; + }; +} diff --git a/pkgs/development/compilers/gambit/default.nix b/pkgs/development/compilers/gambit/default.nix index 7e17cee9abdea..58b08ebd4fb75 100644 --- a/pkgs/development/compilers/gambit/default.nix +++ b/pkgs/development/compilers/gambit/default.nix @@ -1,31 +1,75 @@ -{ stdenv, fetchurl, openssl }: +{ stdenv, fetchurl, fetchgit, git, openssl, autoconf, pkgs }: stdenv.mkDerivation rec { name = "gambit-${version}"; - version = "4.8.6"; - devver = "4_8_6"; + version = "4.8.8-f3ffeb6"; + bootstrap = import ./bootstrap.nix ( pkgs ); - src = fetchurl { - url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-v${devver}-devel.tgz"; - sha256 = "0j3ka76cfb007rlcc3nv5p1s6vh31cwp87hwwabawf16vs1jb7bl"; +# devver = "4_8_8"; +# src = fetchurl { +# url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-v${version}-devel.tgz"; +# sha256 = "0j3ka76cfb007rlcc3nv5p1s6vh31cwp87hwwabawf16vs1jb7bl"; +# }; + src = fetchgit { + url = "https://github.com/feeley/gambit.git"; + rev = "f3ffeb695aeea80c18c1b9ef276b57898c780dca"; + sha256 = "1lqixsrgk9z2gj6z1nkys0pfd3m5zjxrp3gvqn2wpr9h7hjb8x06"; }; - configureFlags = [ - "--enable-single-host" - "--enable-shared" - "--enable-absolute-shared-libs" - "--enable-c-opt=-O6" "--enable-gcc-opts" "--enable-inline-jumps" - "--enable-thread-system=posix" "--enable-dynamic-tls" - "--enable-openssl" - ]; + buildInputs = [ openssl git autoconf bootstrap ]; - buildInputs = [ openssl ]; + configurePhase = '' + options=( + --prefix=$out + --enable-single-host + --enable-c-opt=-O2 + --enable-gcc-opts + --enable-shared + --enable-absolute-shared-libs # Yes, NixOS will want an absolute path, and fix it. + --enable-poll + --enable-openssl + + #--enable-multiple-versions # Nope, NixOS already does version multiplexing + #--enable-guide + #--enable-track-scheme + #--enable-high-res-timing + #--enable-max-processors=4 + #--enable-multiple-vms + #--enable-dynamic-tls + #--enable-multiple-vms + #--enable-multiple-threaded-vms ## when SMP branch is merged in + #--enable-thread-system=posix ## default when --enable-multiple-vms is on. + #--enable-profile + #--enable-coverage + #--enable-inline-jumps + #--enable-char-size=1" ; default is 4 + ) + ./configure ''${options[@]} + ''; + + buildPhase = '' + # Make bootstrap compiler, from release bootstrap + mkdir -p boot/wip-compiler && + cp -rp ${bootstrap}/. boot/wip-compiler/. && + chmod -R u+w boot && + cd boot/wip-compiler && \ + cp ../../gsc/makefile.in ../../gsc/*.scm gsc && \ + (cd gsc && make bootclean ) && + make bootstrap && + cd ../.. && + cp boot/wip-compiler/gsc/gsc gsc-boot && + + # Now use the bootstrap compiler to build the real thing! + make -j2 from-scratch + ''; + + doCheck = true; meta = { description = "Optimizing Scheme to C compiler"; homepage = "http://gambitscheme.org"; license = stdenv.lib.licenses.lgpl2; platforms = stdenv.lib.platforms.linux; - maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ]; + maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin fare ]; }; } diff --git a/pkgs/development/compilers/gcc-arm-embedded/6/default.nix b/pkgs/development/compilers/gcc-arm-embedded/6/default.nix new file mode 100644 index 0000000000000..945649b29781e --- /dev/null +++ b/pkgs/development/compilers/gcc-arm-embedded/6/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchurl, ncurses5, python27 }: + +stdenv.mkDerivation rec { + name = "gcc-arm-embedded-${version}"; + version = "6-2017-q2-update"; + subdir = "6-2017q2"; + + platformString = + if stdenv.isLinux then "linux" + else if stdenv.isDarwin then "mac" + else throw "unsupported platform"; + + urlString = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${platformString}.tar.bz2"; + + src = + if stdenv.isLinux then fetchurl { url=urlString; sha256="1hvwi02mx34al525sngnl0cm7dkmzxfkb1brq9kvbv28wcplp3p6"; } + else if stdenv.isDarwin then fetchurl { url=urlString; sha256="0019ylpq4inq7p5gydpmc9m8ni72fz2csrjlqmgx1698998q0c3x"; } + else throw "unsupported platform"; + + phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; + + installPhase = '' + mkdir -p $out + cp -r * $out + ''; + + dontPatchELF = true; + dontStrip = true; + + preFixup = '' + find $out -type f | while read f; do + patchelf $f > /dev/null 2>&1 || continue + patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true + patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true + done + ''; + + meta = { + description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors (Cortex-M0/M0+/M3/M4/M7, Cortex-R4/R5/R7/R8)"; + homepage = https://developer.arm.com/open-source/gnu-toolchain/gnu-rm; + license = with stdenv.lib.licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; + maintainers = with stdenv.lib.maintainers; [ vinymeuh ]; + platforms = with stdenv.lib.platforms; linux ++ darwin; + }; +} diff --git a/pkgs/development/compilers/gcc/4.5/default.nix b/pkgs/development/compilers/gcc/4.5/default.nix index b84a446488818..d2589a808caab 100644 --- a/pkgs/development/compilers/gcc/4.5/default.nix +++ b/pkgs/development/compilers/gcc/4.5/default.nix @@ -87,7 +87,6 @@ let version = "4.5.4"; withMode; crossConfigureFlags = - "--target=${targetPlatform.config}" + platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + @@ -243,6 +242,8 @@ stdenv.mkDerivation ({ ++ (optionals langVhdl [gnat]) ; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if enableMultilib then "" else "--disable-multilib"} ${if enableShared then "" else "--disable-shared"} @@ -281,11 +282,9 @@ stdenv.mkDerivation ({ if targetPlatform == hostPlatform && stdenv.system == "mips64el-linux" then "--with-arch=loongson2f" else ""} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + " --target=${targetPlatform.config}"); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -363,7 +362,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); @@ -470,7 +469,7 @@ stdenv.mkDerivation ({ ''; meta = { - homepage = "http://ghdl.free.fr/"; + homepage = http://ghdl.free.fr/; license = stdenv.lib.licenses.gpl2Plus; description = "Complete VHDL simulator, using the GCC technology (gcc ${version})"; maintainers = with stdenv.lib.maintainers; [viric]; diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 86c4198be23b7..8aa3047a019fd 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, noSysDirs +{ stdenv, fetchurl, fetchpatch, noSysDirs , langC ? true, langCC ? true, langFortran ? false , langObjC ? targetPlatform.isDarwin , langObjCpp ? targetPlatform.isDarwin @@ -72,7 +72,14 @@ let version = "4.8.5"; # target libraries and tools. ++ optional langAda ../gnat-cflags.patch ++ optional langFortran ../gfortran-driving.patch - ++ optional hostPlatform.isDarwin ../gfortran-darwin-NXConstStr.patch; + ++ optional hostPlatform.isDarwin ../gfortran-darwin-NXConstStr.patch + ++ [(fetchpatch { + name = "libc_name_p.diff"; # needed to build with gcc6 + url = "https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff_plain;h=ec1cc0263f1"; + sha256 = "01jd7pdarh54ki498g6sz64ijl9a1l5f9v8q2696aaxalvh2vwzl"; + excludes = [ "gcc/cp/ChangeLog" ]; + })] + ; javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at @@ -123,8 +130,6 @@ let version = "4.8.5"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem"; crossConfigureFlags = - "--target=${targetPlatform.config}" + - platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" + @@ -201,7 +206,7 @@ stdenv.mkDerivation ({ hardeningDisable = [ "format" ]; - outputs = [ "out" "lib" "doc" ]; + outputs = [ "out" "lib" "man" "info" ]; setOutputFlags = false; NIX_NO_SELF_RPATH = true; @@ -293,6 +298,8 @@ stdenv.mkDerivation ({ dontDisableStatic = true; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if hostPlatform.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + @@ -343,12 +350,10 @@ stdenv.mkDerivation ({ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include"} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} ${if !bootstrap then "--disable-bootstrap" else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + " --target=${targetPlatform.config}"); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -437,7 +442,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 2aa3f340df742..e528e61094e77 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -73,8 +73,7 @@ let version = "4.9.4"; # target libraries and tools. ++ optional langAda ../gnat-cflags.patch ++ optional langFortran ../gfortran-driving.patch - # The NXConstStr.patch can be removed at 4.9.4 - ++ optional hostPlatform.isDarwin ../gfortran-darwin-NXConstStr.patch; + ; javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at @@ -125,8 +124,6 @@ let version = "4.9.4"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem"; crossConfigureFlags = - "--target=${targetPlatform.config}" + - platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" + @@ -301,6 +298,8 @@ stdenv.mkDerivation ({ dontDisableStatic = true; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if hostPlatform.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + @@ -349,12 +348,10 @@ stdenv.mkDerivation ({ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include"} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} ${if !bootstrap then "--disable-bootstrap" else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + " --target=${targetPlatform.config}"); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -443,7 +440,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix index 146b1acbb9f20..5a76638c79cc3 100644 --- a/pkgs/development/compilers/gcc/5/default.nix +++ b/pkgs/development/compilers/gcc/5/default.nix @@ -129,8 +129,6 @@ let version = "5.4.0"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem"; crossConfigureFlags = - "--target=${targetPlatform.config}" + - platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" + @@ -315,6 +313,8 @@ stdenv.mkDerivation ({ dontDisableStatic = true; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if hostPlatform.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + @@ -364,16 +364,10 @@ stdenv.mkDerivation ({ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include"} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} ${if !bootstrap then "--disable-bootstrap" else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + '' - --build=${buildPlatform.config} - --host=${hostPlatform.config} - --target=${targetPlatform.config} - ''); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -462,7 +456,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); diff --git a/pkgs/development/compilers/gcc/6/darwin-const-correct.patch b/pkgs/development/compilers/gcc/6/darwin-const-correct.patch deleted file mode 100644 index a9b9b85acab29..0000000000000 --- a/pkgs/development/compilers/gcc/6/darwin-const-correct.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 5972cd58bde3bc8bacfe994e5b127c411241f255 Mon Sep 17 00:00:00 2001 -From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Tue, 3 Jan 2017 05:36:40 +0000 -Subject: [PATCH] * config/darwin-driver.c (darwin_driver_init): - Const-correctness fixes for first_period and second_period variables. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244010 138bc75d-0d04-0410-961f-82ee72b054a4 ---- -diff --git a/gcc/config/darwin-driver.c b/gcc/config/darwin-driver.c -index 0c4f0cd..e3ed79d 100644 ---- a/gcc/config/darwin-driver.c -+++ b/gcc/config/darwin-driver.c -@@ -299,10 +299,10 @@ darwin_driver_init (unsigned int *decoded_options_count, - if (vers_string != NULL) - { - char *asm_major = NULL; -- char *first_period = strchr(vers_string, '.'); -+ const char *first_period = strchr(vers_string, '.'); - if (first_period != NULL) - { -- char *second_period = strchr(first_period+1, '.'); -+ const char *second_period = strchr(first_period+1, '.'); - if (second_period != NULL) - asm_major = xstrndup (vers_string, second_period-vers_string); - else diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 581ee32af3e9e..5e4eca1ee580e 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -59,7 +59,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "6.3.0"; +let version = "6.4.0"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = targetPlatform != hostPlatform && targetPlatform.config == "i586-pc-gnu"; @@ -73,8 +73,7 @@ let version = "6.3.0"; # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its # target libraries and tools. ++ optional langAda ../gnat-cflags.patch - ++ optional langFortran ../gfortran-driving.patch - ++ optional hostPlatform.isDarwin ./darwin-const-correct.patch; # Kill this after 6.3.0 + ++ optional langFortran ../gfortran-driving.patch; javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at @@ -125,8 +124,6 @@ let version = "6.3.0"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem"; crossConfigureFlags = - "--target=${targetPlatform.config}" + - platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" + @@ -196,8 +193,8 @@ stdenv.mkDerivation ({ builder = ../builder.sh; src = fetchurl { - url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "17xjz30jb65hcf714vn9gcxvrrji8j20xm7n33qg1ywhyzryfsph"; + url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.xz"; + sha256 = "1m0lr7938lw5d773dkvwld90hjlcq2282517d1gwvrfzmwgg42w5"; }; inherit patches; @@ -210,6 +207,19 @@ stdenv.mkDerivation ({ hardeningDisable = [ "format" ]; + # This should kill all the stdinc frameworks that gcc and friends like to + # insert into default search paths. + prePatch = stdenv.lib.optionalString hostPlatform.isDarwin '' + substituteInPlace gcc/config/darwin-c.c \ + --replace 'if (stdinc)' 'if (0)' + + substituteInPlace libgcc/config/t-slibgcc-darwin \ + --replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)" + + substituteInPlace libgfortran/configure \ + --replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname" + ''; + postPatch = if (hostPlatform.isHurd || (libcCross != null # e.g., building `gcc.crossDrv' @@ -297,6 +307,8 @@ stdenv.mkDerivation ({ dontDisableStatic = true; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if hostPlatform.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + @@ -346,12 +358,10 @@ stdenv.mkDerivation ({ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include"} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} ${if !bootstrap then "--disable-bootstrap" else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + " --target=${targetPlatform.config}"); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -440,7 +450,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index d70214e41143f..d36b36fa4e024 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -125,8 +125,6 @@ let version = "7.1.0"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem"; crossConfigureFlags = - "--target=${targetPlatform.config}" + - platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" + @@ -211,6 +209,19 @@ stdenv.mkDerivation ({ hardeningDisable = [ "format" ]; + # This should kill all the stdinc frameworks that gcc and friends like to + # insert into default search paths. + prePatch = stdenv.lib.optionalString hostPlatform.isDarwin '' + substituteInPlace gcc/config/darwin-c.c \ + --replace 'if (stdinc)' 'if (0)' + + substituteInPlace libgcc/config/t-slibgcc-darwin \ + --replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)" + + substituteInPlace libgfortran/configure \ + --replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname" + ''; + postPatch = if (hostPlatform.isHurd || (libcCross != null # e.g., building `gcc.crossDrv' @@ -298,6 +309,8 @@ stdenv.mkDerivation ({ dontDisableStatic = true; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if hostPlatform.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + @@ -347,12 +360,10 @@ stdenv.mkDerivation ({ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include"} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} ${if !bootstrap then "--disable-bootstrap" else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + " --target=${targetPlatform.config}"); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -441,7 +452,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); diff --git a/pkgs/development/compilers/gcc/snapshot/default.nix b/pkgs/development/compilers/gcc/snapshot/default.nix index 78891e2c987c8..ab9b614fcc7c2 100644 --- a/pkgs/development/compilers/gcc/snapshot/default.nix +++ b/pkgs/development/compilers/gcc/snapshot/default.nix @@ -125,8 +125,6 @@ let version = "7-20170409"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem"; crossConfigureFlags = - "--target=${targetPlatform.config}" + - platformFlags + # Ensure that -print-prog-name is able to find the correct programs. " --with-as=${binutils}/bin/${targetPlatform.config}-as" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" + @@ -298,6 +296,8 @@ stdenv.mkDerivation ({ dontDisableStatic = true; + # TODO(@Ericson2314): Always pass "--target" and always prefix. + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; configureFlags = " ${if hostPlatform.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + @@ -347,12 +347,10 @@ stdenv.mkDerivation ({ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include"} ${if langAda then " --enable-libada" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""} + ${platformFlags} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""} ${if !bootstrap then "--disable-bootstrap" else ""} - ${if targetPlatform == hostPlatform then platformFlags else ""} - " + optionalString - (hostPlatform != buildPlatform) - (platformFlags + " --target=${targetPlatform.config}"); + "; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; @@ -441,7 +439,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) + ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs) libcCross.propagatedBuildInputs )); diff --git a/pkgs/development/compilers/gerbil/default.nix b/pkgs/development/compilers/gerbil/default.nix index 7ea403715a538..22047b663d04b 100644 --- a/pkgs/development/compilers/gerbil/default.nix +++ b/pkgs/development/compilers/gerbil/default.nix @@ -1,15 +1,22 @@ -{ stdenv, fetchurl, fetchgit, gambit, openssl, zlib, coreutils, rsync, bash }: +{ stdenv, fetchurl, fetchgit, gambit, + coreutils, rsync, bash, + openssl, zlib, sqlite, libxml2, libyaml, libmysql, lmdb, leveldb }: stdenv.mkDerivation rec { name = "gerbil-${version}"; - version = "0.11"; - src = fetchurl { - url = "https://github.com/vyzo/gerbil/archive/v${version}.tar.gz"; - sha256 = "0mqg6cqdcf5qr7vk79x5zkls7z2wm8i3lhwn0b7i0g1m6yyyyff7"; + version = "0.12-DEV"; + src = fetchgit { + url = "https://github.com/vyzo/gerbil.git"; + rev = "3657b6e940ea248e0b312f276590e38ff68997e7"; + sha256 = "11ys7082ghkm4yikz4qxmv3jpxcr42jfi0jhjw1mpzbqdg6004w2"; }; - buildInputs = [ gambit openssl zlib coreutils rsync bash ]; + buildInputs = [ + gambit openssl + coreutils rsync bash + zlib openssl zlib sqlite libxml2 libyaml libmysql lmdb leveldb + ]; postPatch = '' patchShebangs . @@ -21,7 +28,13 @@ stdenv.mkDerivation rec { buildPhase = '' runHook preBuild + + # Enable all optional libraries + substituteInPlace "src/std/build-features.ss" --replace '#f' '#t' + + # Build, replacing make by build.sh ( cd src && sh build.sh ) + runHook postBuild ''; diff --git a/pkgs/development/compilers/ghc/6.10.2-binary.nix b/pkgs/development/compilers/ghc/6.10.2-binary.nix index 5e5157215d35a..60749a29b58bb 100644 --- a/pkgs/development/compilers/ghc/6.10.2-binary.nix +++ b/pkgs/development/compilers/ghc/6.10.2-binary.nix @@ -98,7 +98,7 @@ stdenv.mkDerivation rec { ''; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; license = stdenv.lib.licenses.bsd3; platforms = ["x86_64-linux" "i686-linux"]; diff --git a/pkgs/development/compilers/ghc/6.10.4.nix b/pkgs/development/compilers/ghc/6.10.4.nix index 9a816797291bb..d2552b027ac19 100644 --- a/pkgs/development/compilers/ghc/6.10.4.nix +++ b/pkgs/development/compilers/ghc/6.10.4.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-fomit-frame-pointer"; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; platforms = ["x86_64-linux" "i686-linux"]; # Darwin is unsupported. inherit (ghc.meta) license; diff --git a/pkgs/development/compilers/ghc/6.12.3.nix b/pkgs/development/compilers/ghc/6.12.3.nix index 6ee447be6507e..a46ef66a8cb7c 100644 --- a/pkgs/development/compilers/ghc/6.12.3.nix +++ b/pkgs/development/compilers/ghc/6.12.3.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { stripDebugFlags=["-S" "--keep-file-symbols"]; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; platforms = ["x86_64-linux" "i686-linux"]; # Darwin is unsupported. diff --git a/pkgs/development/compilers/ghc/7.0.4.nix b/pkgs/development/compilers/ghc/7.0.4.nix index 099f1376c7788..9d052ddb246fa 100644 --- a/pkgs/development/compilers/ghc/7.0.4.nix +++ b/pkgs/development/compilers/ghc/7.0.4.nix @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { stripDebugFlags=["-S" "--keep-file-symbols"]; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = [ stdenv.lib.maintainers.marcweber diff --git a/pkgs/development/compilers/ghc/7.10.2.nix b/pkgs/development/compilers/ghc/7.10.2.nix index 521afbd88b43e..863f904e4e960 100644 --- a/pkgs/development/compilers/ghc/7.10.2.nix +++ b/pkgs/development/compilers/ghc/7.10.2.nix @@ -79,7 +79,7 @@ stdenv.mkDerivation rec { }; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/7.10.3.nix b/pkgs/development/compilers/ghc/7.10.3.nix index 5c6b62bee6f1b..eb8f1dddd19b5 100644 --- a/pkgs/development/compilers/ghc/7.10.3.nix +++ b/pkgs/development/compilers/ghc/7.10.3.nix @@ -77,7 +77,7 @@ stdenv.mkDerivation rec { }; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/7.2.2.nix b/pkgs/development/compilers/ghc/7.2.2.nix index b3f672a8ef56e..156ff56bd6631 100644 --- a/pkgs/development/compilers/ghc/7.2.2.nix +++ b/pkgs/development/compilers/ghc/7.2.2.nix @@ -52,7 +52,7 @@ stdenv.mkDerivation rec { stripDebugFlags=["-S" "--keep-file-symbols"]; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = [ stdenv.lib.maintainers.marcweber diff --git a/pkgs/development/compilers/ghc/7.4.2.nix b/pkgs/development/compilers/ghc/7.4.2.nix index 08b4f6f5471e6..e5bc4724c9eb0 100644 --- a/pkgs/development/compilers/ghc/7.4.2.nix +++ b/pkgs/development/compilers/ghc/7.4.2.nix @@ -53,7 +53,7 @@ stdenv.mkDerivation rec { stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols"; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = [ stdenv.lib.maintainers.marcweber diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index bdc0a20d3b4ce..5f951936046f6 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -79,7 +79,7 @@ in stdenv.mkDerivation rec { stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols"; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = [ stdenv.lib.maintainers.marcweber diff --git a/pkgs/development/compilers/ghc/7.8.3.nix b/pkgs/development/compilers/ghc/7.8.3.nix index 986ec98c6b32d..50b0108861f01 100644 --- a/pkgs/development/compilers/ghc/7.8.3.nix +++ b/pkgs/development/compilers/ghc/7.8.3.nix @@ -50,7 +50,7 @@ stdenv.mkDerivation rec { stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols"; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/7.8.4.nix b/pkgs/development/compilers/ghc/7.8.4.nix index 057b9f70fc78c..5a380c75c69f5 100644 --- a/pkgs/development/compilers/ghc/7.8.4.nix +++ b/pkgs/development/compilers/ghc/7.8.4.nix @@ -50,7 +50,7 @@ stdenv.mkDerivation (rec { stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols"; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/8.0.1.nix b/pkgs/development/compilers/ghc/8.0.1.nix index ae6edb739c9dd..6e47ee92630ac 100644 --- a/pkgs/development/compilers/ghc/8.0.1.nix +++ b/pkgs/development/compilers/ghc/8.0.1.nix @@ -82,7 +82,7 @@ stdenv.mkDerivation rec { }; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/8.0.2.nix b/pkgs/development/compilers/ghc/8.0.2.nix index cc0b1d4eaddf7..e50a8df7352dd 100644 --- a/pkgs/development/compilers/ghc/8.0.2.nix +++ b/pkgs/development/compilers/ghc/8.0.2.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { sha256 = "1c8qc4fhkycynk4g1f9hvk53dj6a1vvqi6bklqznns6hw59m8qhi"; }; - patches = [] + patches = [ ./ghc-gold-linker.patch ] ++ stdenv.lib.optional stdenv.isLinux ./ghc-no-madv-free.patch ++ stdenv.lib.optional stdenv.isDarwin ./ghc-8.0.2-no-cpp-warnings.patch; @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - outputs = [ "out" "doc" ]; + outputs = [ "out" "man" "doc" ]; preConfigure = '' sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure @@ -74,7 +74,7 @@ stdenv.mkDerivation rec { }; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/8.2.1.nix b/pkgs/development/compilers/ghc/8.2.1.nix index 6b0cdf4fbdc5a..bce51f92c0bc0 100644 --- a/pkgs/development/compilers/ghc/8.2.1.nix +++ b/pkgs/development/compilers/ghc/8.2.1.nix @@ -9,8 +9,8 @@ let inherit (bootPkgs) ghc; - version = "8.2.1-rc2"; - preReleaseName = "ghc-8.2.0.20170507"; + version = "8.2.1"; + preReleaseName = "ghc-8.2.1"; commonBuildInputs = [ alex autoconf automake ghc happy hscolour perl python3 sphinx ]; commonPreConfigure = '' sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure @@ -27,11 +27,13 @@ in stdenv.mkDerivation (rec { src = fetchurl { url = "https://downloads.haskell.org/~ghc/${version}/${preReleaseName}-src.tar.xz"; - sha256 = "1hy3l6nzkyhzwy9mii4zs51jv048zwvdqk1q3188jznz35392zrn"; + sha256 = "1w4k0n23b9fg8kmarqhfamzpmf91p6jcdr6xlwzfmb4df2bd9hng"; }; postPatch = "patchShebangs ."; + patches = [ ./ghc-gold-linker.patch ]; + preConfigure = commonPreConfigure; buildInputs = commonBuildInputs; @@ -80,7 +82,7 @@ in stdenv.mkDerivation (rec { }; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghc/ghc-gold-linker.patch b/pkgs/development/compilers/ghc/ghc-gold-linker.patch new file mode 100644 index 0000000000000..edce7ef3a1782 --- /dev/null +++ b/pkgs/development/compilers/ghc/ghc-gold-linker.patch @@ -0,0 +1,54 @@ +From 46fe80ab7c0013a929d0934e61429820042a70a9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me> +Date: Fri, 21 Jul 2017 20:09:11 +0200 +Subject: [PATCH 1/2] base: Add `extra-libraries: m` because base uses libm + functions. + +Linking with gold needs this because in contrast to ld, gold +doesn't implicitly link libm. + +Found by Michael Bishop <cleverca22@gmail.com>. +--- + libraries/base/base.cabal | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/libraries/base/base.cabal b/libraries/base/base.cabal +index f00fb8768e5..fd91f268ffe 100644 +--- a/libraries/base/base.cabal ++++ b/libraries/base/base.cabal +@@ -342,6 +342,10 @@ Library + WCsubst.h + consUtils.h + ++ -- Base uses libm functions. ld.bfd links libm implicitly when necessary. ++ -- Other linkers, like gold, don't, so we have to declare it explicitly. ++ extra-libraries: m ++ + -- OS Specific + if os(windows) + -- Windows requires some extra libraries for linking because the RTS + +From 900a8f4931e9bc6d3219d9263cfecfc6af8fc766 Mon Sep 17 00:00:00 2001 +From: michael bishop <cleverca22@gmail.com> +Date: Sat, 22 Jul 2017 13:12:39 -0300 +Subject: [PATCH 2/2] also add -lm to ghc-prim + +--- + libraries/ghc-prim/ghc-prim.cabal | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/libraries/ghc-prim/ghc-prim.cabal b/libraries/ghc-prim/ghc-prim.cabal +index 00a029efedf..6db85dd69fc 100644 +--- a/libraries/ghc-prim/ghc-prim.cabal ++++ b/libraries/ghc-prim/ghc-prim.cabal +@@ -42,6 +42,10 @@ Library + UnliftedFFITypes + + build-depends: rts == 1.0.* ++ ++ -- Base uses libm functions. ld.bfd links libm implicitly when necessary. ++ -- Other linkers, like gold, don't, so we have to declare it explicitly. ++ extra-libraries: m + + exposed-modules: + GHC.CString diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix index f199048353c03..362b4895b7e37 100644 --- a/pkgs/development/compilers/ghc/head.nix +++ b/pkgs/development/compilers/ghc/head.nix @@ -5,6 +5,7 @@ # If enabled GHC will be build with the GPL-free but slower integer-simple # library instead of the faster but GPLed integer-gmp library. , enableIntegerSimple ? false, gmp +, version ? "8.3.20170808" }: let @@ -12,8 +13,7 @@ let commonBuildInputs = [ ghc perl autoconf automake happy alex python3 ]; - version = "8.1.20170106"; - rev = "b4f2afe70ddbd0576b4eba3f82ba1ddc52e9b3bd"; + rev = "14457cf6a50f708eecece8f286f08687791d51f7"; commonPreConfigure = '' echo ${version} >VERSION @@ -34,7 +34,7 @@ in stdenv.mkDerivation (rec { src = fetchgit { url = "git://git.haskell.org/ghc.git"; inherit rev; - sha256 = "1h064nikx5srsd7qvz19f6dxvnpfjp0b3b94xs1f4nar18hzf4j0"; + sha256 = "08vj9ca7rq7rv8pjfl14fg2lg9d6zisrwlq6bi5vzr006816dy8y"; }; postPatch = "patchShebangs ."; @@ -87,7 +87,7 @@ in stdenv.mkDerivation (rec { }; meta = { - homepage = "http://haskell.org/ghc"; + homepage = http://haskell.org/ghc; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; diff --git a/pkgs/development/compilers/ghcjs/base.nix b/pkgs/development/compilers/ghcjs/base.nix index 4c9ae16a31342..a7381fa1a1469 100644 --- a/pkgs/development/compilers/ghcjs/base.nix +++ b/pkgs/development/compilers/ghcjs/base.nix @@ -186,7 +186,7 @@ in mkDerivation (rec { }; }; - homepage = "https://github.com/ghcjs/ghcjs"; + homepage = https://github.com/ghcjs/ghcjs; description = "A Haskell to JavaScript compiler that uses the GHC API"; license = stdenv.lib.licenses.bsd3; platforms = ghc.meta.platforms; diff --git a/pkgs/development/compilers/ghcjs/ghcjs.patch b/pkgs/development/compilers/ghcjs/ghcjs.patch index 61bbb95b0a588..9f4fa3a8b7ae4 100644 --- a/pkgs/development/compilers/ghcjs/ghcjs.patch +++ b/pkgs/development/compilers/ghcjs/ghcjs.patch @@ -2,7 +2,7 @@ diff --git a/src-bin/Boot.hs b/src-bin/Boot.hs index db8b12e..7b815c5 100644 --- a/src-bin/Boot.hs +++ b/src-bin/Boot.hs -@@ -526,9 +526,7 @@ initPackageDB :: B () +@@ -540,9 +540,7 @@ initPackageDB :: B () initPackageDB = do msg info "creating package databases" initDB "--global" <^> beLocations . blGlobalDB @@ -12,7 +12,7 @@ index db8b12e..7b815c5 100644 initDB dbName db = do rm_rf db >> mkdir_p db ghcjs_pkg_ ["init", toTextI db] `catchAny_` return () -@@ -552,29 +550,22 @@ installDevelopmentTree = subTop $ do +@@ -566,29 +564,22 @@ installDevelopmentTree = subTop $ do msgD info $ "preparing development boot tree" checkpoint' "ghcjs-boot-git" "ghcjs-boot repository already cloned and prepared" $ do testGit "ghcjs-boot" >>= \case @@ -46,7 +46,25 @@ index db8b12e..7b815c5 100644 mapM_ patchPackage =<< allPackages preparePrimops buildGenPrim -@@ -1110,14 +1101,14 @@ cabalInstallFlags parmakeGhcjs = do +@@ -1141,7 +1132,7 @@ cabalStage1 pkgs = sub $ do + globalFlags <- cabalGlobalFlags + flags <- cabalInstallFlags (length pkgs == 1) + let args = globalFlags ++ ("install" : pkgs) ++ +- [ "--solver=topdown" -- the modular solver refuses to install stage1 packages ++ [ "--allow-boot-library-installs" + ] ++ map ("--configure-option="<>) configureOpts ++ flags + checkInstallPlan pkgs args + cabal_ args +@@ -1162,7 +1153,7 @@ cabalInstall pkgs = do + -- uses somewhat fragile parsing of --dry-run output, find a better way + checkInstallPlan :: [Package] -> [Text] -> B () + checkInstallPlan pkgs opts = do +- plan <- cabal (opts ++ ["-v2", "--dry-run"]) ++ plan <- cabal (opts ++ ["-vverbose+nowrap", "--dry-run"]) + when (hasReinstalls plan || hasUnexpectedInstalls plan || hasNewVersion plan) (err plan) + where + hasReinstalls = T.isInfixOf "(reinstall)" -- reject reinstalls +@@ -1201,14 +1192,14 @@ cabalInstallFlags parmakeGhcjs = do , "--avoid-reinstalls" , "--builddir", "dist" , "--with-compiler", ghcjs ^. pgmLocText diff --git a/pkgs/development/compilers/ghcjs/head_stage2.nix b/pkgs/development/compilers/ghcjs/head_stage2.nix index d4247f51b3e36..aa19cfea9718d 100644 --- a/pkgs/development/compilers/ghcjs/head_stage2.nix +++ b/pkgs/development/compilers/ghcjs/head_stage2.nix @@ -15,7 +15,7 @@ base HUnit test-framework test-framework-hunit ]; jailbreak = true; - homepage = "https://github.com/simonmar/async"; + homepage = https://github.com/simonmar/async; description = "Run IO operations asynchronously and wait for their results"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -47,7 +47,7 @@ time time-locale-compat unordered-containers uuid-types vector ]; jailbreak = true; - homepage = "https://github.com/bos/aeson"; + homepage = https://github.com/bos/aeson; description = "Fast JSON parsing and encoding"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -76,7 +76,7 @@ transformers unordered-containers vector ]; jailbreak = true; - homepage = "https://github.com/bos/attoparsec"; + homepage = https://github.com/bos/attoparsec; description = "Fast combinator parsing for bytestrings and text"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -95,7 +95,7 @@ ]; benchmarkHaskellDepends = [ base bytestring criterion deepseq ]; jailbreak = true; - homepage = "https://github.com/basvandijk/case-insensitive"; + homepage = https://github.com/basvandijk/case-insensitive; description = "Case insensitive string comparison"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -109,7 +109,7 @@ libraryHaskellDepends = [ base deepseq ]; testHaskellDepends = [ base Cabal QuickCheck ]; jailbreak = true; - homepage = "https://github.com/spl/dlist"; + homepage = https://github.com/spl/dlist; description = "Difference lists"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -143,7 +143,7 @@ test-framework-hunit test-framework-quickcheck2 text unix ]; jailbreak = true; - homepage = "http://github.com/tibbe/hashable"; + homepage = http://github.com/tibbe/hashable; description = "A class for types that can be converted to a hash value"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -156,7 +156,7 @@ doCheck = false; libraryHaskellDepends = [ base transformers ]; jailbreak = true; - homepage = "http://github.com/ekmett/mtl"; + homepage = http://github.com/ekmett/mtl; description = "Monad classes, using functional dependencies"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -204,7 +204,7 @@ ]; benchmarkHaskellDepends = [ base criterion ]; jailbreak = true; - homepage = "https://github.com/basvandijk/scientific"; + homepage = https://github.com/basvandijk/scientific; description = "Numbers represented using scientific notation"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -230,7 +230,7 @@ libraryHaskellDepends = [ base ]; testHaskellDepends = [ base containers HUnit mtl ]; jailbreak = true; - homepage = "http://www.cs.uu.nl/wiki/GenericProgramming/SYB"; + homepage = http://www.cs.uu.nl/wiki/GenericProgramming/SYB; description = "Scrap Your Boilerplate"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -247,7 +247,7 @@ base deepseq template-haskell transformers transformers-compat ]; jailbreak = true; - homepage = "http://github.com/ekmett/tagged"; + homepage = http://github.com/ekmett/tagged; description = "Haskell 98 phantom types to avoid unsafely passing dummy arguments"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -271,7 +271,7 @@ test-framework-hunit test-framework-quickcheck2 ]; jailbreak = true; - homepage = "https://github.com/bos/text"; + homepage = https://github.com/bos/text; description = "An efficient packed Unicode text type"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -295,7 +295,7 @@ hashable hashmap mtl random ]; jailbreak = true; - homepage = "https://github.com/tibbe/unordered-containers"; + homepage = https://github.com/tibbe/unordered-containers; description = "Efficient hashing-based container types"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -318,7 +318,7 @@ base bytestring containers criterion deepseq random ]; jailbreak = true; - homepage = "https://github.com/aslatter/uuid"; + homepage = https://github.com/aslatter/uuid; description = "Type definitions for Universally Unique Identifiers"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -338,7 +338,7 @@ test-framework-quickcheck2 transformers ]; jailbreak = true; - homepage = "https://github.com/haskell/vector"; + homepage = https://github.com/haskell/vector; description = "Efficient Arrays"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -366,7 +366,7 @@ test-framework-hunit test-framework-quickcheck2 text ]; jailbreak = true; - homepage = "http://github.com/ghcjs/ghcjs-base"; + homepage = http://github.com/ghcjs/ghcjs-base; description = "Base library for GHCJS"; license = stdenv.lib.licenses.mit; }) {}; @@ -392,7 +392,7 @@ test-framework-hunit test-framework-quickcheck2 unix ]; jailbreak = true; - homepage = "http://www.haskell.org/cabal/"; + homepage = http://www.haskell.org/cabal/; description = "A framework for packaging Haskell software"; license = stdenv.lib.licenses.bsd3; }) {}; diff --git a/pkgs/development/compilers/ghcjs/stage2.nix b/pkgs/development/compilers/ghcjs/stage2.nix index 8c68b6f15a672..4c4d9f4ff3899 100644 --- a/pkgs/development/compilers/ghcjs/stage2.nix +++ b/pkgs/development/compilers/ghcjs/stage2.nix @@ -15,7 +15,7 @@ base HUnit test-framework test-framework-hunit ]; jailbreak = true; - homepage = "https://github.com/simonmar/async"; + homepage = https://github.com/simonmar/async; description = "Run IO operations asynchronously and wait for their results"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -42,7 +42,7 @@ test-framework-quickcheck2 text time unordered-containers vector ]; jailbreak = true; - homepage = "https://github.com/bos/aeson"; + homepage = https://github.com/bos/aeson; description = "Fast JSON parsing and encoding"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -67,7 +67,7 @@ test-framework-quickcheck2 text transformers vector ]; jailbreak = true; - homepage = "https://github.com/bos/attoparsec"; + homepage = https://github.com/bos/attoparsec; description = "Fast combinator parsing for bytestrings and text"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -85,7 +85,7 @@ base bytestring HUnit test-framework test-framework-hunit text ]; jailbreak = true; - homepage = "https://github.com/basvandijk/case-insensitive"; + homepage = https://github.com/basvandijk/case-insensitive; description = "Case insensitive string comparison"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -99,7 +99,7 @@ libraryHaskellDepends = [ base deepseq ]; testHaskellDepends = [ base Cabal QuickCheck ]; jailbreak = true; - homepage = "https://github.com/spl/dlist"; + homepage = https://github.com/spl/dlist; description = "Difference lists"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -133,7 +133,7 @@ test-framework-hunit test-framework-quickcheck2 text unix ]; jailbreak = true; - homepage = "http://github.com/tibbe/hashable"; + homepage = http://github.com/tibbe/hashable; description = "A class for types that can be converted to a hash value"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -146,7 +146,7 @@ doCheck = false; libraryHaskellDepends = [ base transformers ]; jailbreak = true; - homepage = "http://github.com/ekmett/mtl"; + homepage = http://github.com/ekmett/mtl; description = "Monad classes, using functional dependencies"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -193,7 +193,7 @@ tasty-hunit tasty-quickcheck tasty-smallcheck text ]; jailbreak = true; - homepage = "https://github.com/basvandijk/scientific"; + homepage = https://github.com/basvandijk/scientific; description = "Numbers represented using scientific notation"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -219,7 +219,7 @@ libraryHaskellDepends = [ base ]; testHaskellDepends = [ base containers HUnit mtl ]; jailbreak = true; - homepage = "http://www.cs.uu.nl/wiki/GenericProgramming/SYB"; + homepage = http://www.cs.uu.nl/wiki/GenericProgramming/SYB; description = "Scrap Your Boilerplate"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -243,7 +243,7 @@ test-framework-hunit test-framework-quickcheck2 ]; jailbreak = true; - homepage = "https://github.com/bos/text"; + homepage = https://github.com/bos/text; description = "An efficient packed Unicode text type"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -263,7 +263,7 @@ test-framework test-framework-hunit test-framework-quickcheck2 ]; jailbreak = true; - homepage = "https://github.com/tibbe/unordered-containers"; + homepage = https://github.com/tibbe/unordered-containers; description = "Efficient hashing-based container types"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -283,7 +283,7 @@ test-framework-quickcheck2 transformers ]; jailbreak = true; - homepage = "https://github.com/haskell/vector"; + homepage = https://github.com/haskell/vector; description = "Efficient Arrays"; license = stdenv.lib.licenses.bsd3; }) {}; @@ -311,7 +311,7 @@ test-framework-hunit test-framework-quickcheck2 text ]; jailbreak = true; - homepage = "http://github.com/ghcjs/ghcjs-base"; + homepage = http://github.com/ghcjs/ghcjs-base; description = "Base library for GHCJS"; license = stdenv.lib.licenses.mit; }) {}; @@ -337,7 +337,7 @@ test-framework-hunit test-framework-quickcheck2 unix ]; jailbreak = true; - homepage = "http://www.haskell.org/cabal/"; + homepage = http://www.haskell.org/cabal/; description = "A framework for packaging Haskell software"; license = stdenv.lib.licenses.bsd3; }) {}; diff --git a/pkgs/development/compilers/ghdl/default.nix b/pkgs/development/compilers/ghdl/default.nix index ff772864e6258..7d3b6860c6edb 100644 --- a/pkgs/development/compilers/ghdl/default.nix +++ b/pkgs/development/compilers/ghdl/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; meta = { - homepage = "http://sourceforge.net/p/ghdl-updates/wiki/Home/"; + homepage = http://sourceforge.net/p/ghdl-updates/wiki/Home/; description = "Free VHDL simulator"; maintainers = with stdenv.lib.maintainers; [viric]; platforms = with stdenv.lib.platforms; (if flavour == "llvm" then [ "i686-linux" "x86_64-linux" ] diff --git a/pkgs/development/compilers/gnu-cobol/default.nix b/pkgs/development/compilers/gnu-cobol/default.nix index e5ec3659f0b5f..f82fc17634dae 100644 --- a/pkgs/development/compilers/gnu-cobol/default.nix +++ b/pkgs/development/compilers/gnu-cobol/default.nix @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "An open-source COBOL compiler"; - homepage = http://sourceforge.net/projects/open-cobol/; + homepage = https://sourceforge.net/projects/open-cobol/; license = licenses.gpl3; maintainers = with maintainers; [ ericsagnes ]; platforms = platforms.linux; diff --git a/pkgs/development/compilers/go/1.6.nix b/pkgs/development/compilers/go/1.6.nix index 4a777d7b4f144..0eebc92ee5941 100644 --- a/pkgs/development/compilers/go/1.6.nix +++ b/pkgs/development/compilers/go/1.6.nix @@ -113,6 +113,7 @@ stdenv.mkDerivation rec { patches = [ ./remove-tools-1.5.patch ./creds-test.patch + ./fix-systime-1.6.patch # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch # actually works on old versions too. @@ -127,6 +128,7 @@ stdenv.mkDerivation rec { else if stdenv.system == "i686-linux" then "386" else if stdenv.system == "x86_64-linux" then "amd64" else if stdenv.isArm then "arm" + else if stdenv.isAarch64 then "arm64" else throw "Unsupported system"; GOARM = stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") "5"; GO386 = 387; # from Arch: don't assume sse2 on i686 diff --git a/pkgs/development/compilers/go/1.7.nix b/pkgs/development/compilers/go/1.7.nix index d7a824239b847..b1230da5a1428 100644 --- a/pkgs/development/compilers/go/1.7.nix +++ b/pkgs/development/compilers/go/1.7.nix @@ -123,6 +123,7 @@ stdenv.mkDerivation rec { else if stdenv.system == "i686-linux" then "386" else if stdenv.system == "x86_64-linux" then "amd64" else if stdenv.isArm then "arm" + else if stdenv.isAarch64 then "arm64" else throw "Unsupported system"; GOARM = optionalString (stdenv.system == "armv5tel-linux") "5"; GO386 = 387; # from Arch: don't assume sse2 on i686 diff --git a/pkgs/development/compilers/go/1.8.nix b/pkgs/development/compilers/go/1.8.nix index 8e0b1c7360f53..8a675b1b77615 100644 --- a/pkgs/development/compilers/go/1.8.nix +++ b/pkgs/development/compilers/go/1.8.nix @@ -128,6 +128,7 @@ stdenv.mkDerivation rec { else if stdenv.system == "i686-linux" then "386" else if stdenv.system == "x86_64-linux" then "amd64" else if stdenv.isArm then "arm" + else if stdenv.isAarch64 then "arm64" else throw "Unsupported system"; GOARM = optionalString (stdenv.system == "armv5tel-linux") "5"; GO386 = 387; # from Arch: don't assume sse2 on i686 diff --git a/pkgs/development/compilers/go/fix-systime-1.6.patch b/pkgs/development/compilers/go/fix-systime-1.6.patch new file mode 100644 index 0000000000000..e4a3932001e50 --- /dev/null +++ b/pkgs/development/compilers/go/fix-systime-1.6.patch @@ -0,0 +1,45 @@ +diff --git a/src/runtime/sys_darwin_amd64.s b/src/runtime/sys_darwin_amd64.s +index e09b906ba5..fa8ff2f65c 100644 +--- a/src/runtime/sys_darwin_amd64.s ++++ b/src/runtime/sys_darwin_amd64.s +@@ -157,6 +157,7 @@ systime: + // Fall back to system call (usually first call in this thread). + MOVQ SP, DI + MOVQ $0, SI ++ MOVQ $0, DX // required as of Sierra; Issue 16570 + MOVL $(0x2000000+116), AX + SYSCALL + CMPQ AX, $0 +diff --git a/src/syscall/syscall_darwin_amd64.go b/src/syscall/syscall_darwin_amd64.go +index 70b53b87f4..79083117b6 100644 +--- a/src/syscall/syscall_darwin_amd64.go ++++ b/src/syscall/syscall_darwin_amd64.go +@@ -26,14 +26,21 @@ func NsecToTimeval(nsec int64) (tv Timeval) { + } + + //sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error) +-func Gettimeofday(tv *Timeval) (err error) { +- // The tv passed to gettimeofday must be non-nil +- // but is otherwise unused. The answers come back +- // in the two registers. ++func Gettimeofday(tv *Timeval) error { ++ // The tv passed to gettimeofday must be non-nil. ++ // Before macOS Sierra (10.12), tv was otherwise unused and ++ // the answers came back in the two registers. ++ // As of Sierra, gettimeofday return zeros and populates ++ // tv itself. + sec, usec, err := gettimeofday(tv) +- tv.Sec = sec +- tv.Usec = usec +- return err ++ if err != nil { ++ return err ++ } ++ if sec != 0 || usec != 0 { ++ tv.Sec = sec ++ tv.Usec = usec ++ } ++ return nil + } + + func SetKevent(k *Kevent_t, fd, mode, flags int) { diff --git a/pkgs/development/compilers/gprolog/default.nix b/pkgs/development/compilers/gprolog/default.nix index 1465206484d4c..0e3eb88f537ce 100644 --- a/pkgs/development/compilers/gprolog/default.nix +++ b/pkgs/development/compilers/gprolog/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { doCheck = true; meta = { - homepage = "http://www.gnu.org/software/gprolog/"; + homepage = http://www.gnu.org/software/gprolog/; description = "GNU Prolog, a free Prolog compiler with constraint solving over finite domains"; license = stdenv.lib.licenses.lgpl3Plus; diff --git a/pkgs/development/compilers/halvm/2.4.0.nix b/pkgs/development/compilers/halvm/2.4.0.nix index 5b241b31ee3e4..b88ac73c7e409 100644 --- a/pkgs/development/compilers/halvm/2.4.0.nix +++ b/pkgs/development/compilers/halvm/2.4.0.nix @@ -44,7 +44,7 @@ stdenv.mkDerivation rec { }; meta = { - homepage = "http://github.com/GaloisInc/HaLVM"; + homepage = https://github.com/GaloisInc/HaLVM; description = "The Haskell Lightweight Virtual Machine (HaLVM): GHC running on Xen"; platforms = ["x86_64-linux"]; # other platforms don't have Xen maintainers = with stdenv.lib.maintainers; [ dmjio ]; diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix index 684c6d25daadb..ca41545eb451e 100644 --- a/pkgs/development/compilers/haxe/default.nix +++ b/pkgs/development/compilers/haxe/default.nix @@ -1,40 +1,82 @@ -{ stdenv, fetchgit, ocaml, zlib, pcre, neko, camlp4 }: +{ stdenv, fetchgit, bash, coreutils, ocaml, zlib, pcre, neko, camlp4 }: -stdenv.mkDerivation { - name = "haxe-3.4.2"; +let + generic = { version, sha256, prePatch }: + stdenv.mkDerivation rec { + name = "haxe-${version}"; - buildInputs = [ocaml zlib pcre neko camlp4]; + buildInputs = [ocaml zlib pcre neko camlp4]; - src = fetchgit { - url = "https://github.com/HaxeFoundation/haxe.git"; - sha256 = "1m5fp183agqv8h3ynhxw4kndkpq2d6arysmirv3zl3vz5crmpwqd"; - fetchSubmodules = true; + src = fetchgit { + url = https://github.com/HaxeFoundation/haxe.git; + inherit sha256; + fetchSubmodules = true; + rev = "refs/tags/${version}"; + }; - # Tag 3.4.2 - rev = "890f8c70cf23ce6f9fe0fdd0ee514a9699433ca7"; - }; + inherit prePatch; + + buildFlags = [ "all" "tools" ]; - prePatch = '' - sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' src/main.ml - ''; + installPhase = '' + install -vd "$out/bin" "$out/lib/haxe/std" + cp -vr haxe haxelib std "$out/lib/haxe" - buildFlags = [ "all" "tools" ]; + # make wrappers which provide a temporary HAXELIB_PATH with symlinks to multiple repositories HAXELIB_PATH may point to + for name in haxe haxelib; do + cat > $out/bin/$name <<EOF + #!{bash}/bin/bash - installPhase = '' - install -vd "$out/bin" "$out/lib/haxe/std" - install -vt "$out/bin" haxe haxelib - cp -vr std "$out/lib/haxe" - ''; + if [[ "\$HAXELIB_PATH" =~ : ]]; then + NEW_HAXELIB_PATH="\$(${coreutils}/bin/mktemp -d)" - setupHook = ./setup-hook.sh; + IFS=':' read -ra libs <<< "\$HAXELIB_PATH" + for libdir in "\''${libs[@]}"; do + for lib in "\$libdir"/*; do + if [ ! -e "\$NEW_HAXELIB_PATH/\$(${coreutils}/bin/basename "\$lib")" ]; then + ${coreutils}/bin/ln -s "--target-directory=\$NEW_HAXELIB_PATH" "\$lib" + fi + done + done + export HAXELIB_PATH="\$NEW_HAXELIB_PATH" + $out/lib/haxe/$name "\$@" + rm -rf "\$NEW_HAXELIB_PATH" + else + exec $out/lib/haxe/$name "\$@" + fi + EOF + chmod +x $out/bin/$name + done + ''; - dontStrip = true; + setupHook = ./setup-hook.sh; - meta = with stdenv.lib; { - description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++"; - homepage = https://haxe.org; - license = with licenses; [ gpl2 bsd2 /*?*/ ]; # -> docs/license.txt - maintainers = [ maintainers.marcweber ]; - platforms = platforms.linux ++ platforms.darwin; + dontStrip = true; + + meta = with stdenv.lib; { + description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++"; + homepage = https://haxe.org; + license = with licenses; [ gpl2 bsd2 /*?*/ ]; # -> docs/license.txt + maintainers = [ maintainers.marcweber ]; + platforms = platforms.linux ++ platforms.darwin; + }; + }; +in { + # this old version is required to compile some libraries + haxe_3_2 = generic { + version = "3.2.1"; + sha256 = "1x9ay5a2llq46fww3k07jxx8h1vfpyxb522snc6702a050ki5vz3"; + prePatch = '' + sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' main.ml + sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/tools/haxelib/Main.hx + ''; + }; + haxe_3_4 = generic { + version = "3.4.2"; + sha256 = "1m5fp183agqv8h3ynhxw4kndkpq2d6arysmirv3zl3vz5crmpwqd"; + prePatch = '' + sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' src/main.ml + sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx + ''; }; } diff --git a/pkgs/development/compilers/haxe/hxcpp.nix b/pkgs/development/compilers/haxe/hxcpp.nix deleted file mode 100644 index 56b43fc128eff..0000000000000 --- a/pkgs/development/compilers/haxe/hxcpp.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ stdenv, fetchzip, haxe, neko, pcre, sqlite, zlib }: - -stdenv.mkDerivation rec { - name = "hxcpp-3.2.27"; - - src = let - zipFile = stdenv.lib.replaceChars ["."] [","] name; - in fetchzip { - inherit name; - url = "http://lib.haxe.org/files/3.0/${zipFile}.zip"; - sha256 = "1hw4kr1f8q7f4fkzis7kvkm7h1cxhv6cf5v1iq7rvxs2fxiys7fr"; - }; - - NIX_LDFLAGS = "-lpcre -lz -lsqlite3"; - - outputs = [ "out" "lib" ]; - - patchPhase = '' - rm -rf bin lib project/thirdparty project/libs/sqlite/sqlite3.[ch] - find . -name '*.n' -delete - sed -i -re '/(PCRE|ZLIB)_DIR|\<sqlite3\.c\>/d' project/Build.xml - sed -i -e 's/mFromFile = "@";/mFromFile = "";/' tools/hxcpp/Linker.hx - sed -i -e '/dll_ext/s,HX_CSTRING("./"),HX_CSTRING("'"$lib"'/"),' \ - src/hx/Lib.cpp - ''; - - buildInputs = [ haxe neko pcre sqlite zlib ]; - - targetArch = "linux-m${if stdenv.is64bit then "64" else "32"}"; - - buildPhase = '' - haxe -neko project/build.n -cp tools/build -main Build - haxe -neko run.n -cp tools/run -main RunMain - haxe -neko hxcpp.n -cp tools/hxcpp -main BuildTool - (cd project && neko build.n "ndll-$targetArch") - ''; - - installPhase = '' - for i in bin/Linux*/*.dso; do - install -vD "$i" "$lib/$(basename "$i")" - done - find *.n toolchain/*.xml build-tool/BuildCommon.xml src include \ - -type f -exec install -vD -m 0644 {} "$out/lib/haxe/hxcpp/{}" \; - ''; - - meta = { - homepage = "http://lib.haxe.org/p/hxcpp"; - description = "Runtime support library for the Haxe C++ backend"; - license = stdenv.lib.licenses.bsd2; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/development/compilers/haxe/setup-hook.sh b/pkgs/development/compilers/haxe/setup-hook.sh index a29e04a989b60..21cc0206859f6 100644 --- a/pkgs/development/compilers/haxe/setup-hook.sh +++ b/pkgs/development/compilers/haxe/setup-hook.sh @@ -1,5 +1,7 @@ addHaxeLibPath() { + if [ ! -d "$1/lib/haxe/std" ]; then addToSearchPath HAXELIB_PATH "$1/lib/haxe" + fi } envHooks+=(addHaxeLibPath) diff --git a/pkgs/development/compilers/ispc/default.nix b/pkgs/development/compilers/ispc/default.nix index f8413075ac81c..6bc7f66ca299f 100644 --- a/pkgs/development/compilers/ispc/default.nix +++ b/pkgs/development/compilers/ispc/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchFromGitHub, bash, which, m4, python, bison, flex_2_6_1, llvmPackages, clangWrapSelf, +{stdenv, fetchFromGitHub, bash, which, m4, python, bison, flex, llvmPackages, clangWrapSelf, testedTargets ? ["sse2" "host"] # the default test target is sse4, but that is not supported by all Hydra agents }: @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { m4 python bison - flex_2_6_1 + flex llvm llvmPackages.clang-unwrapped # we need to link against libclang, so we need the unwrapped ]; diff --git a/pkgs/development/compilers/jhc/default.nix b/pkgs/development/compilers/jhc/default.nix index 77e02f3a41030..cfeff329fb568 100644 --- a/pkgs/development/compilers/jhc/default.nix +++ b/pkgs/development/compilers/jhc/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { meta = { description = "Whole-program, globally optimizing Haskell compiler"; - homepage = "http://repetae.net/computer/jhc/"; + homepage = http://repetae.net/computer/jhc/; license = stdenv.lib.licenses.bsd3; platforms = ["x86_64-linux"]; # 32 bit builds are broken maintainers = with stdenv.lib.maintainers; [ aforemny thoughtpolice ]; diff --git a/pkgs/development/compilers/jsonnet/default.nix b/pkgs/development/compilers/jsonnet/default.nix index adca825b20165..cc19f7afe3472 100644 --- a/pkgs/development/compilers/jsonnet/default.nix +++ b/pkgs/development/compilers/jsonnet/default.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchFromGitHub, emscripten }: -let version = "0.8.9"; in +let version = "0.9.4"; in stdenv.mkDerivation { name = "jsonnet-${version}"; @@ -9,7 +9,7 @@ stdenv.mkDerivation { rev = "v${version}"; owner = "google"; repo = "jsonnet"; - sha256 = "0phk8dzby5v60r7fwd1qf4as2jdpmdmksjw3g4p3mkkr7sc81119"; + sha256 = "1bh9x8d3mxnic31b6gh4drn5l6qpyqfgsn2l48sv0jknhinm1a7l"; }; buildInputs = [ emscripten ]; diff --git a/pkgs/development/compilers/julia/0.5.nix b/pkgs/development/compilers/julia/0.5.nix index 1ee4dea51e3bd..1ce60d40716d0 100644 --- a/pkgs/development/compilers/julia/0.5.nix +++ b/pkgs/development/compilers/julia/0.5.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchgit, fetchurl +{ stdenv, fetchgit, fetchurl, fetchzip # build tools , gfortran, m4, makeWrapper, patchelf, perl, which, python2 , runCommand @@ -54,12 +54,12 @@ in stdenv.mkDerivation rec { pname = "julia"; - version = "0.5.1"; + version = "0.5.2"; name = "${pname}-${version}"; - src = fetchurl { + src = fetchzip { url = "https://github.com/JuliaLang/${pname}/releases/download/v${version}/${name}.tar.gz"; - sha256 = "1a9m7hzzrwk71gvwwrd1p45s64yid61i41n95gm5pzbry6p9fpl0"; + sha256 = "1616f53dj7xc0g2iys8qfbzal6dx55nswnws5g5r44dlbf4hcl0h"; }; prePatch = '' mkdir deps/srccache @@ -155,7 +155,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - doCheck = true; + doCheck = !stdenv.isDarwin; checkTarget = "testall"; # Julia's tests require read/write access to $HOME preCheck = '' @@ -166,6 +166,7 @@ stdenv.mkDerivation rec { preBuild = '' sed -e '/^install:/s@[^ ]*/doc/[^ ]*@@' -i Makefile sed -e '/[$](DESTDIR)[$](docdir)/d' -i Makefile + export LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ''; postInstall = '' @@ -178,7 +179,7 @@ stdenv.mkDerivation rec { meta = { description = "High-level performance-oriented dynamical language for technical computing"; - homepage = "http://julialang.org/"; + homepage = https://julialang.org/; license = stdenv.lib.licenses.mit; maintainers = with stdenv.lib.maintainers; [ raskin ]; platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; diff --git a/pkgs/development/compilers/julia/default.nix b/pkgs/development/compilers/julia/default.nix index ebdd4c760d108..63252084b5ded 100644 --- a/pkgs/development/compilers/julia/default.nix +++ b/pkgs/development/compilers/julia/default.nix @@ -160,7 +160,7 @@ stdenv.mkDerivation rec { meta = { description = "High-level performance-oriented dynamical language for technical computing"; - homepage = "http://julialang.org/"; + homepage = https://julialang.org/; license = stdenv.lib.licenses.mit; maintainers = with stdenv.lib.maintainers; [ raskin ]; platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; diff --git a/pkgs/development/compilers/julia/git.nix b/pkgs/development/compilers/julia/git.nix index 9cfa8895f74ad..cfddb862f59ae 100644 --- a/pkgs/development/compilers/julia/git.nix +++ b/pkgs/development/compilers/julia/git.nix @@ -171,7 +171,7 @@ stdenv.mkDerivation rec { meta = { description = "High-level performance-oriented dynamical language for technical computing"; - homepage = "http://julialang.org/"; + homepage = https://julialang.org/; license = stdenv.lib.licenses.mit; maintainers = with stdenv.lib.maintainers; [ raskin ]; platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix index e23bee15e1bf3..65c2125dfbca6 100644 --- a/pkgs/development/compilers/kotlin/default.nix +++ b/pkgs/development/compilers/kotlin/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, makeWrapper, jre, unzip }: stdenv.mkDerivation rec { - version = "1.1.2-5"; + version = "1.1.4-2"; name = "kotlin-${version}"; src = fetchurl { url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip"; - sha256 = "0whfnn7wf8nil9lb8hl9bccjrzwf9zpbf8pz607zg9x3q8g01p9d"; + sha256 = "09sikwk5xxn4b30icbq28mjs4lm9xbj0bv5yjx75r165iz65g2cv"; }; propagatedBuildInputs = [ jre ] ; diff --git a/pkgs/development/compilers/llvm/3.4/llvm.nix b/pkgs/development/compilers/llvm/3.4/llvm.nix index 73469fa122a9a..79b0c9ff898d8 100644 --- a/pkgs/development/compilers/llvm/3.4/llvm.nix +++ b/pkgs/development/compilers/llvm/3.4/llvm.nix @@ -36,7 +36,7 @@ in stdenv.mkDerivation rec { patches = stdenv.lib.optionals (!stdenv.isDarwin) [ # llvm-config --libfiles returns (non-existing) static libs - ./fix-llvm-config.patch + ../fix-llvm-config.patch ]; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/3.5/llvm.nix b/pkgs/development/compilers/llvm/3.5/llvm.nix index 8bb5a6c684bb6..c5503da9b838a 100644 --- a/pkgs/development/compilers/llvm/3.5/llvm.nix +++ b/pkgs/development/compilers/llvm/3.5/llvm.nix @@ -53,7 +53,8 @@ in stdenv.mkDerivation rec { "-DCAN_TARGET_i386=false" ]; - patches = [ ./fix-15974.patch ]; + patches = [ ./fix-15974.patch ] ++ + stdenv.lib.optionals (!stdenv.isDarwin) [../fix-llvm-config.patch ]; postBuild = '' rm -fR $out diff --git a/pkgs/development/compilers/llvm/3.7/fix-llvm-config.patch b/pkgs/development/compilers/llvm/3.7/fix-llvm-config.patch deleted file mode 100644 index 772c49609275e..0000000000000 --- a/pkgs/development/compilers/llvm/3.7/fix-llvm-config.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/utils/llvm-build/llvmbuild/main.py b/utils/llvm-build/llvmbuild/main.py -index eacefdf60bf..40d25f5cef8 100644 ---- a/utils/llvm-build/llvmbuild/main.py -+++ b/utils/llvm-build/llvmbuild/main.py -@@ -412,7 +412,7 @@ subdirectories = %s - if library_name is None: - library_name_as_cstr = '0' - else: -- library_name_as_cstr = '"lib%s.a"' % library_name -+ library_name_as_cstr = '"lib%s.so"' % library_name - f.write(' { "%s", %s, %d, { %s } },\n' % ( - name, library_name_as_cstr, is_installed, - ', '.join('"%s"' % dep diff --git a/pkgs/development/compilers/llvm/3.7/llvm.nix b/pkgs/development/compilers/llvm/3.7/llvm.nix index 1bdefd214f964..81aaa7cd65c21 100644 --- a/pkgs/development/compilers/llvm/3.7/llvm.nix +++ b/pkgs/development/compilers/llvm/3.7/llvm.nix @@ -55,7 +55,7 @@ in stdenv.mkDerivation rec { patches = stdenv.lib.optionals (!stdenv.isDarwin) [ # llvm-config --libfiles returns (non-existing) static libs - ./fix-llvm-config.patch + ../fix-llvm-config.patch ]; cmakeFlags = with stdenv; [ diff --git a/pkgs/development/compilers/llvm/3.8/fix-llvm-config.patch b/pkgs/development/compilers/llvm/3.8/fix-llvm-config.patch new file mode 100644 index 0000000000000..6e56c67c89774 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.8/fix-llvm-config.patch @@ -0,0 +1,11 @@ +--- llvm.org/utils/llvm-build/llvmbuild/main.py 2015-10-07 00:24:35.000000000 +0100 ++++ llvm/utils/llvm-build/llvmbuild/main.py 2017-06-16 17:08:39.866586578 +0100 +@@ -413,7 +413,7 @@ + if library_name is None: + library_name_as_cstr = 'nullptr' + else: +- library_name_as_cstr = '"lib%s.a"' % library_name ++ library_name_as_cstr = '"lib%s.so"' % library_name + if is_installed: + is_installed_as_cstr = 'true' + else: diff --git a/pkgs/development/compilers/llvm/3.8/llvm.nix b/pkgs/development/compilers/llvm/3.8/llvm.nix index 9394179a8f948..a3f652d783be3 100644 --- a/pkgs/development/compilers/llvm/3.8/llvm.nix +++ b/pkgs/development/compilers/llvm/3.8/llvm.nix @@ -37,9 +37,10 @@ in stdenv.mkDerivation rec { # Fix a segfault in llc # See http://lists.llvm.org/pipermail/llvm-dev/2016-October/106500.html - patches = [ ./D17533-1.patch ]; + patches = [ ./D17533-1.patch ] ++ + stdenv.lib.optionals (!stdenv.isDarwin) [./fix-llvm-config.patch]; - # hacky fix: New LLVM releases require a newer OS X SDK than + # hacky fix: New LLVM releases require a newer macOS SDK than # 10.9. This is a temporary measure until nixpkgs darwin support is # updated. postPatch = stdenv.lib.optionalString stdenv.isDarwin '' diff --git a/pkgs/development/compilers/llvm/3.9/llvm.nix b/pkgs/development/compilers/llvm/3.9/llvm.nix index 964b6232fb549..654e1ce0023b8 100644 --- a/pkgs/development/compilers/llvm/3.9/llvm.nix +++ b/pkgs/development/compilers/llvm/3.9/llvm.nix @@ -58,6 +58,14 @@ in stdenv.mkDerivation rec { propagatedBuildInputs = [ ncurses zlib ]; + patches = [ + # fix output of llvm-config (fixed in llvm 4.0) + (fetchpatch { + url = https://github.com/llvm-mirror/llvm/commit/5340b5b3d970069aebf3dde49d8964583742e01a.patch; + sha256 = "095f8knplwqbc2p7rad1kq8633i34qynni9jna93an7kyc80wdxl"; + }) + ]; + postPatch = "" + '' patch -p1 --reverse < ${fetchpatch { diff --git a/pkgs/development/compilers/llvm/4/clang/default.nix b/pkgs/development/compilers/llvm/4/clang/default.nix index 64dbaa21dd429..8d40ee3c8aa25 100644 --- a/pkgs/development/compilers/llvm/4/clang/default.nix +++ b/pkgs/development/compilers/llvm/4/clang/default.nix @@ -1,6 +1,6 @@ { stdenv, fetch, cmake, libxml2, libedit, llvm, version, release_version, clang-tools-extra_src, python , fixDarwinDylibNames -, enableManpages ? true +, enableManpages ? false }: let @@ -9,7 +9,7 @@ let name = "clang-${version}"; unpackPhase = '' - unpackFile ${fetch "cfe" "12n99m60aa680cir3ql56s1jsv6lp61hq4w9rabf4c6vpn7gi9ff"} + unpackFile ${fetch "cfe" "16vnv3msnvx33dydd17k2cq0icndi1a06bg5vcxkrhjjb1rqlwv1"} mv cfe-${version}* clang sourceRoot=$PWD/clang unpackFile ${clang-tools-extra_src} diff --git a/pkgs/development/compilers/llvm/4/default.nix b/pkgs/development/compilers/llvm/4/default.nix index 15918f9c1ebdf..9e5bccff35560 100644 --- a/pkgs/development/compilers/llvm/4/default.nix +++ b/pkgs/development/compilers/llvm/4/default.nix @@ -1,8 +1,8 @@ -{ newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }: +{ lowPrio, newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }: let callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl release_version version fetch; }); - release_version = "4.0.0"; + release_version = "4.0.1"; version = release_version; # differentiating these is important for rc's fetch = name: sha256: fetchurl { @@ -10,17 +10,28 @@ let inherit sha256; }; - compiler-rt_src = fetch "compiler-rt" "059ipqq27gd928ay06f1ck3vw6y5h5z4zd766x8k0k7jpqimpwnk"; - clang-tools-extra_src = fetch "clang-tools-extra" "16bwckgcxfn56mbqjlxi7fxja0zm9hjfa6s3ncm3dz98n5zd7ds1"; + compiler-rt_src = fetch "compiler-rt" "0h5lpv1z554szi4r4blbskhwrkd78ir50v3ng8xvk1s86fa7gj53"; + clang-tools-extra_src = fetch "clang-tools-extra" "1dhmp7ccfpr42bmvk3kp37ngjpf3a9m5d4kkpsn7d00hzi7fdl9m"; + + # Add man output without introducing extra dependencies. + overrideManOutput = drv: + let drv-manpages = drv.override { enableManpages = true; }; in + drv // { man = drv-manpages.man; /*outputs = drv.outputs ++ ["man"];*/ }; + + llvm = callPackage ./llvm.nix { + inherit compiler-rt_src stdenv; + }; + + clang-unwrapped = callPackage ./clang { + inherit clang-tools-extra_src stdenv; + }; self = { - llvm = callPackage ./llvm.nix { - inherit compiler-rt_src stdenv; - }; + llvm = overrideManOutput llvm; + clang-unwrapped = overrideManOutput clang-unwrapped; - clang-unwrapped = callPackage ./clang { - inherit clang-tools-extra_src stdenv; - }; + llvm-manpages = lowPrio self.llvm.man; + clang-manpages = lowPrio self.clang-unwrapped.man; clang = wrapCC self.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/4/libc++/default.nix b/pkgs/development/compilers/llvm/4/libc++/default.nix index a43826d7a310a..b74d2fb89dcd8 100644 --- a/pkgs/development/compilers/llvm/4/libc++/default.nix +++ b/pkgs/development/compilers/llvm/4/libc++/default.nix @@ -3,7 +3,7 @@ stdenv.mkDerivation rec { name = "libc++-${version}"; - src = fetch "libcxx" "15ngfcjc3pjakpwfq7d4n546jj0rgfdv5rpb1qv9xgv9mp236kag"; + src = fetch "libcxx" "0k6cmjcxnp2pyl8xwy1wkyyckkmdrjddim94yf1gzjbjy9qi22jj"; postUnpack = '' unpackFile ${libcxxabi.src} diff --git a/pkgs/development/compilers/llvm/4/libc++abi.nix b/pkgs/development/compilers/llvm/4/libc++abi.nix index 3a0e996fb9a02..6a3d91101360b 100644 --- a/pkgs/development/compilers/llvm/4/libc++abi.nix +++ b/pkgs/development/compilers/llvm/4/libc++abi.nix @@ -3,7 +3,7 @@ stdenv.mkDerivation { name = "libc++abi-${version}"; - src = fetch "libcxxabi" "1n416kv27anabg9jsw6331r28ic30xk46p381lx2vbb2jrhwpafw"; + src = fetch "libcxxabi" "0cqvzallxh0nwiijsf6i4d5ds9m5ijfzywg7376ncv50i64if24g"; nativeBuildInputs = [ cmake ]; buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind; diff --git a/pkgs/development/compilers/llvm/4/lld.nix b/pkgs/development/compilers/llvm/4/lld.nix index f9cd72b4200ce..776109ee74d18 100644 --- a/pkgs/development/compilers/llvm/4/lld.nix +++ b/pkgs/development/compilers/llvm/4/lld.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation { name = "lld-${version}"; - src = fetch "lld" "00km1qawk146pyjqa6aphcdzgkzrmg6cgk0ikg4661ffp5bn9q1k"; + src = fetch "lld" "1v9nkpr158j4yd4zmi6rpnfxkp78r1fapr8wji9s6v176gji1kk3"; nativeBuildInputs = [ cmake ]; buildInputs = [ llvm ]; diff --git a/pkgs/development/compilers/llvm/4/lldb.nix b/pkgs/development/compilers/llvm/4/lldb.nix index a3c46a4c7e94d..7d33179913be9 100644 --- a/pkgs/development/compilers/llvm/4/lldb.nix +++ b/pkgs/development/compilers/llvm/4/lldb.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation { name = "lldb-${version}"; - src = fetch "lldb" "0g83hbw1r4gd0z8hlph9i34xs6dlcc69vz3h2bqwkhb2qq2qzg9d"; + src = fetch "lldb" "0yy43a27zx3r51b6gkv3v2mdiqcq3mf0ngki47ya0i30v3gx4cl4"; patches = [ ./lldb-libedit.patch ]; postPatch = '' diff --git a/pkgs/development/compilers/llvm/4/llvm.nix b/pkgs/development/compilers/llvm/4/llvm.nix index 98c24495355c2..abfac1cce143d 100644 --- a/pkgs/development/compilers/llvm/4/llvm.nix +++ b/pkgs/development/compilers/llvm/4/llvm.nix @@ -16,13 +16,13 @@ , compiler-rt_src , libcxxabi , debugVersion ? false -, enableManpages ? true +, enableManpages ? false , enableSharedLibraries ? true , darwin }: let - src = fetch "llvm" "1giklnw71wzsgbqg9wb5x7dxnbj39m6zpfvskvzvhwvfz4fm244d"; + src = fetch "llvm" "0l9bf7kdwhlj0kq1hawpyxhna1062z3h7qcz2y8nfl9dz2qksy6s"; shlib = if stdenv.isDarwin then "dylib" else "so"; # Used when creating a version-suffixed symlink of libLLVM.dylib @@ -64,13 +64,6 @@ in stdenv.mkDerivation rec { + stdenv.lib.optionalString (enableSharedLibraries) '' substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib patch -p1 < ./llvm-outputs.patch - '' - # Remove broken tests: (https://bugs.llvm.org//show_bug.cgi?id=31610) - + '' - rm test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll - rm test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll - rm test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll - rm test/CodeGen/AMDGPU/runtime-metadata.ll ''; # hacky fix: created binaries need to be run before installation @@ -123,11 +116,11 @@ in stdenv.mkDerivation rec { + stdenv.lib.optionalString enableSharedLibraries '' moveToOutput "lib/libLLVM-*" "$lib" moveToOutput "lib/libLLVM.${shlib}" "$lib" - substituteInPlace "$out/lib/cmake/llvm/LLVMExports-release.cmake" \ + substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-" '' + stdenv.lib.optionalString (stdenv.isDarwin && enableSharedLibraries) '' - substituteInPlace "$out/lib/cmake/llvm/LLVMExports-release.cmake" \ + substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib" install_name_tool -id $lib/lib/libLLVM.dylib $lib/lib/libLLVM.dylib install_name_tool -change @rpath/libLLVM.dylib $lib/lib/libLLVM.dylib $out/bin/llvm-config diff --git a/pkgs/development/compilers/llvm/4/openmp.nix b/pkgs/development/compilers/llvm/4/openmp.nix index 197e9a784653e..0bdf5c71e1f3a 100644 --- a/pkgs/development/compilers/llvm/4/openmp.nix +++ b/pkgs/development/compilers/llvm/4/openmp.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation { name = "openmp-${version}"; - src = fetch "openmp" "09kf41zgv551fnv628kqhlwgqkd2bkiwii9gqi6q12djgdddhmfv"; + src = fetch "openmp" "195dykamd39yhi5az7nqj3ksqhb3wq30l93jnfkxl0061qbknsgc"; nativeBuildInputs = [ cmake perl ]; buildInputs = [ llvm ]; diff --git a/pkgs/development/compilers/llvm/3.4/fix-llvm-config.patch b/pkgs/development/compilers/llvm/fix-llvm-config.patch index 772c49609275e..772c49609275e 100644 --- a/pkgs/development/compilers/llvm/3.4/fix-llvm-config.patch +++ b/pkgs/development/compilers/llvm/fix-llvm-config.patch diff --git a/pkgs/development/compilers/mcpp/default.nix b/pkgs/development/compilers/mcpp/default.nix index 34cb63e783ecc..cdf201cec7ad0 100644 --- a/pkgs/development/compilers/mcpp/default.nix +++ b/pkgs/development/compilers/mcpp/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-mcpplib" ]; meta = with stdenv.lib; { - homepage = "http://mcpp.sourceforge.net/"; + homepage = http://mcpp.sourceforge.net/; description = "A portable c preprocessor"; license = licenses.bsd2; platforms = platforms.unix; diff --git a/pkgs/development/compilers/mono/5.0.nix b/pkgs/development/compilers/mono/5.0.nix new file mode 100644 index 0000000000000..911ba0ae02a72 --- /dev/null +++ b/pkgs/development/compilers/mono/5.0.nix @@ -0,0 +1,7 @@ +{ stdenv, callPackage, Foundation, libobjc }: + +callPackage ./generic-cmake.nix (rec { + inherit Foundation libobjc; + version = "5.0.1.1"; + sha256 = "064pgsmanpybpbhpam9jv9n8aicx6mlyb7a91yzh3kcksmqsxmj8"; +}) diff --git a/pkgs/development/compilers/mono/generic-cmake.nix b/pkgs/development/compilers/mono/generic-cmake.nix new file mode 100644 index 0000000000000..f6e3f5a0100b8 --- /dev/null +++ b/pkgs/development/compilers/mono/generic-cmake.nix @@ -0,0 +1,93 @@ +{ stdenv, fetchurl, bison, pkgconfig, glib, gettext, perl, libgdiplus, libX11, callPackage, ncurses, zlib, withLLVM ? false, cacert, Foundation, libobjc, python, version, sha256, autoconf, libtool, automake, cmake, which }: + +let + llvm = callPackage ./llvm.nix { }; +in +stdenv.mkDerivation rec { + name = "mono-${version}"; + + src = fetchurl { + inherit sha256; + url = "http://download.mono-project.com/sources/mono/${name}.tar.bz2"; + }; + + buildInputs = + [ bison pkgconfig glib gettext perl libgdiplus libX11 ncurses zlib python autoconf libtool automake cmake which + ] + ++ (stdenv.lib.optionals stdenv.isDarwin [ Foundation libobjc ]); + + propagatedBuildInputs = [glib]; + + NIX_LDFLAGS = if stdenv.isDarwin then "" else "-lgcc_s" ; + + # To overcome the bug https://bugzilla.novell.com/show_bug.cgi?id=644723 + dontDisableStatic = true; + + # In fact I think this line does not help at all to what I + # wanted to achieve: have mono to find libgdiplus automatically + configureFlags = [ + "--x-includes=${libX11.dev}/include" + "--x-libraries=${libX11.out}/lib" + "--with-libgdiplus=${libgdiplus}/lib/libgdiplus.so" + ] + ++ stdenv.lib.optionals withLLVM [ + "--enable-llvm" + "--enable-llvmloaded" + "--with-llvm=${llvm}" + ]; + + configurePhase = '' + patchShebangs ./ + ./autogen.sh --prefix $out + ''; + + # Attempt to fix this error when running "mcs --version": + # The file /nix/store/xxx-mono-2.4.2.1/lib/mscorlib.dll is an invalid CIL image + dontStrip = true; + + # Parallel building doesn't work, as shows http://hydra.nixos.org/build/2983601 + enableParallelBuilding = false; + + # We want pkg-config to take priority over the dlls in the Mono framework and the GAC + # because we control pkg-config + patches = [ ./pkgconfig-before-gac.patch ]; + + # Patch all the necessary scripts. Also, if we're using LLVM, we fix the default + # LLVM path to point into the Mono LLVM build, since it's private anyway. + preBuild = '' + makeFlagsArray=(INSTALL=`type -tp install`) + substituteInPlace mcs/class/corlib/System/Environment.cs --replace /usr/share "$out/share" + '' + stdenv.lib.optionalString withLLVM '' + substituteInPlace mono/mini/aot-compiler.c --replace "llvm_path = g_strdup (\"\")" "llvm_path = g_strdup (\"${llvm}/bin/\")" + ''; + + # Fix mono DLLMap so it can find libX11 and gdiplus to run winforms apps + # Other items in the DLLMap may need to be pointed to their store locations, I don't think this is exhaustive + # http://www.mono-project.com/Config_DllMap + postBuild = '' + find . -name 'config' -type f | xargs \ + sed -i -e "s@libX11.so.6@${libX11.out}/lib/libX11.so.6@g" \ + -e "s@/.*libgdiplus.so@${libgdiplus}/lib/libgdiplus.so@g" \ + ''; + + # Without this, any Mono application attempting to open an SSL connection will throw with + # The authentication or decryption has failed. + # ---> Mono.Security.Protocol.Tls.TlsException: Invalid certificate received from server. + postInstall = '' + echo "Updating Mono key store" + $out/bin/cert-sync ${cacert}/etc/ssl/certs/ca-bundle.crt + '' + # According to [1], gmcs is just mcs + # [1] https://github.com/mono/mono/blob/master/scripts/gmcs.in + + '' + ln -s $out/bin/mcs $out/bin/gmcs + ''; + + meta = { + homepage = http://mono-project.com/; + description = "Cross platform, open source .NET development framework"; + platforms = with stdenv.lib.platforms; darwin ++ linux; + maintainers = with stdenv.lib.maintainers; [ viric thoughtpolice obadz vrthra ]; + license = stdenv.lib.licenses.free; # Combination of LGPL/X11/GPL ? + }; +} diff --git a/pkgs/development/compilers/mono/pkgconfig-before-gac-5x.patch b/pkgs/development/compilers/mono/pkgconfig-before-gac-5x.patch new file mode 100644 index 0000000000000..1b9c59402bff2 --- /dev/null +++ b/pkgs/development/compilers/mono/pkgconfig-before-gac-5x.patch @@ -0,0 +1,65 @@ +diff -Naur mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets +--- mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets.old 2017-04-24 23:45:18.348116305 +0200 ++++ mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets 2017-04-24 23:45:11.407051755 +0200 +@@ -167,8 +167,8 @@ + $(ReferencePath); + @(AdditionalReferencePath); + {HintPathFromItem}; +- {TargetFrameworkDirectory}; + {PkgConfig}; ++ {TargetFrameworkDirectory}; + {GAC}; + {RawFileName}; + $(OutDir) +diff -Naur mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets +--- mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets.old 2017-04-24 23:49:53.019616196 +0200 ++++ mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets 2017-04-24 23:50:05.709729585 +0200 +@@ -232,8 +232,8 @@ + $(ReferencePath); + @(AdditionalReferencePath); + {HintPathFromItem}; +- {TargetFrameworkDirectory}; + {PkgConfig}; ++ {TargetFrameworkDirectory}; + {GAC}; + {RawFileName}; + $(OutDir) +diff -Naur mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets +--- mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets.old 2017-04-24 23:52:33.200037047 +0200 ++++ mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets 2017-04-24 23:52:43.281125802 +0200 +@@ -139,8 +139,8 @@ + $(ReferencePath); + @(AdditionalReferencePath); + {HintPathFromItem}; +- {TargetFrameworkDirectory}; + {PkgConfig}; ++ {TargetFrameworkDirectory}; + {GAC}; + {RawFileName}; + $(OutDir) +diff -Naur mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets +--- mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets.old 2017-04-24 23:54:02.585821594 +0200 ++++ mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets 2017-04-24 23:54:09.313880438 +0200 +@@ -234,8 +234,8 @@ + $(ReferencePath); + @(AdditionalReferencePath); + {HintPathFromItem}; +- {TargetFrameworkDirectory}; + {PkgConfig}; ++ {TargetFrameworkDirectory}; + {GAC}; + {RawFileName}; + $(OutDir) +diff -Naur mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets +--- mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets.old 2017-04-24 23:55:46.244895155 +0200 ++++ mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets 2017-04-24 23:55:51.998961342 +0200 +@@ -232,8 +232,8 @@ + $(ReferencePath); + @(AdditionalReferencePath); + {HintPathFromItem}; +- {TargetFrameworkDirectory}; + {PkgConfig}; ++ {TargetFrameworkDirectory}; + {GAC}; + {RawFileName}; + $(OutDir) diff --git a/pkgs/development/compilers/mozart/binary.nix b/pkgs/development/compilers/mozart/binary.nix index d802aa4fe2e7b..ebe562fcde327 100644 --- a/pkgs/development/compilers/mozart/binary.nix +++ b/pkgs/development/compilers/mozart/binary.nix @@ -63,7 +63,7 @@ stdenv.mkDerivation { ''; meta = with stdenv.lib; { - homepage = "http://www.mozart-oz.org/"; + homepage = http://www.mozart-oz.org/; description = "Multiplatform implementation of the Oz programming language"; longDescription = '' The Mozart Programming System combines ongoing research in diff --git a/pkgs/development/compilers/neko/default.nix b/pkgs/development/compilers/neko/default.nix index 493748d369b7d..e90f3af704dfe 100644 --- a/pkgs/development/compilers/neko/default.nix +++ b/pkgs/development/compilers/neko/default.nix @@ -24,6 +24,12 @@ stdenv.mkDerivation rec { + "fe87462d9c7a6ee27e28f5be5e4fc0ac87b34574.patch"; sha256 = "1jbmq6j32vg3qv20dbh82cp54886lgrh7gkcqins8a2y4l4dl3sc"; }) + # https://github.com/HaxeFoundation/neko/pull/165 + (fetchpatch { + url = "https://github.com/HaxeFoundation/neko/commit/" + + "c6d9c6d796200990b3b6a53a4dc716c9192398e6.patch"; + sha256 = "1pq0qhhb9gbhc3zbgylwp0amhwsz0q0ggpj6v2xgv0hfy7d63rcd"; + }) ]; buildInputs = diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix index 0cebd40afdba1..101f8ab64ba57 100644 --- a/pkgs/development/compilers/nim/default.nix +++ b/pkgs/development/compilers/nim/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "nim-${version}"; - version = "0.16.0"; + version = "0.17.0"; src = fetchurl { url = "http://nim-lang.org/download/${name}.tar.xz"; - sha256 = "0rsibhkc5n548bn9yyb9ycrdgaph5kq84sfxc9gabjs7pqirh6cy"; + sha256 = "16vsmk4rqnkg9lc9h9jk62ps0x778cdqg6qrs3k6fv2g73cqvq9n"; }; doCheck = true; diff --git a/pkgs/development/compilers/ocaml/4.04.nix b/pkgs/development/compilers/ocaml/4.04.nix index a63034d700d91..4f49bcf807285 100644 --- a/pkgs/development/compilers/ocaml/4.04.nix +++ b/pkgs/development/compilers/ocaml/4.04.nix @@ -1,8 +1,8 @@ import ./generic.nix { major_version = "4"; minor_version = "04"; - patch_version = "1"; - sha256 = "11f2kcldpad9h5ihi1crad5lvv2501iccb2g4c8m197fnjac8b12"; + patch_version = "2"; + sha256 = "0bhgjzi78l10824qga85nlh18jg9lb6aiamf9dah1cs6jhzfsn6i"; # If the executable is stipped it does not work dontStrip = true; diff --git a/pkgs/development/compilers/ocaml/4.05.nix b/pkgs/development/compilers/ocaml/4.05.nix new file mode 100644 index 0000000000000..a63b06a9f6288 --- /dev/null +++ b/pkgs/development/compilers/ocaml/4.05.nix @@ -0,0 +1,9 @@ +import ./generic.nix { + major_version = "4"; + minor_version = "05"; + patch_version = "0"; + sha256 = "1y9fw1ci9pwnbbrr9nwr8cq8vypcxwdf4akvxard3mxl2jx2g984"; + + # If the executable is stipped it does not work + dontStrip = true; +} diff --git a/pkgs/development/compilers/ocaml/configure-3.08.0 b/pkgs/development/compilers/ocaml/configure-3.08.0 index c62da78ab9fdd..9c8705855120b 100755 --- a/pkgs/development/compilers/ocaml/configure-3.08.0 +++ b/pkgs/development/compilers/ocaml/configure-3.08.0 @@ -45,7 +45,7 @@ gcc_warnings="-Wall" unset LANG unset LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME -# Turn off some MacOS X debugging stuff, same reason +# Turn off some macOS debugging stuff, same reason unset RC_TRACE_ARCHIVES RC_TRACE_DYLIBS RC_TRACE_PREBINDING_DISABLED # Parse command-line arguments diff --git a/pkgs/development/compilers/openjdk-darwin/8.nix b/pkgs/development/compilers/openjdk-darwin/8.nix index 51effd2c78412..6234b63208cd9 100644 --- a/pkgs/development/compilers/openjdk-darwin/8.nix +++ b/pkgs/development/compilers/openjdk-darwin/8.nix @@ -33,7 +33,7 @@ let # any package that depends on the JRE has $CLASSPATH set up # properly. mkdir -p $out/nix-support - echo -n "${setJavaClassPath}" > $out/nix-support/propagated-native-build-inputs + printWords ${setJavaClassPath} > $out/nix-support/propagated-native-build-inputs install_name_tool -change /usr/X11/lib/libfreetype.6.dylib ${freetype}/lib/libfreetype.6.dylib $out/jre/lib/libfontmanager.dylib diff --git a/pkgs/development/compilers/openjdk-darwin/default.nix b/pkgs/development/compilers/openjdk-darwin/default.nix index 10a9eb2b3666e..1e8f88beea664 100644 --- a/pkgs/development/compilers/openjdk-darwin/default.nix +++ b/pkgs/development/compilers/openjdk-darwin/default.nix @@ -23,7 +23,7 @@ let # any package that depends on the JRE has $CLASSPATH set up # properly. mkdir -p $out/nix-support - echo -n "${setJavaClassPath}" > $out/nix-support/propagated-native-build-inputs + printWords ${setJavaClassPath} > $out/nix-support/propagated-native-build-inputs install_name_tool -change /usr/X11/lib/libfreetype.6.dylib ${freetype}/lib/libfreetype.6.dylib $out/jre/lib/libfontmanager.dylib diff --git a/pkgs/development/compilers/openjdk/7.nix b/pkgs/development/compilers/openjdk/7.nix index 6dcbb0a330f1a..72f0ba293ba99 100644 --- a/pkgs/development/compilers/openjdk/7.nix +++ b/pkgs/development/compilers/openjdk/7.nix @@ -190,7 +190,7 @@ let # any package that depends on the JRE has $CLASSPATH set up # properly. mkdir -p $jre/nix-support - echo -n "${setJavaClassPath}" > $jre/nix-support/propagated-native-build-inputs + printWords ${setJavaClassPath} > $jre/nix-support/propagated-native-build-inputs # Set JAVA_HOME automatically. mkdir -p $out/nix-support diff --git a/pkgs/development/compilers/openjdk/8.nix b/pkgs/development/compilers/openjdk/8.nix index 7ddf2c7ef5d33..3355304b3bb2c 100644 --- a/pkgs/development/compilers/openjdk/8.nix +++ b/pkgs/development/compilers/openjdk/8.nix @@ -21,42 +21,42 @@ let else throw "openjdk requires i686-linux or x86_64 linux"; - update = "131"; - build = "11"; + update = "152"; + build = "04"; baseurl = "http://hg.openjdk.java.net/jdk8u/jdk8u"; repover = "jdk8u${update}-b${build}"; paxflags = if stdenv.isi686 then "msp" else "m"; jdk8 = fetchurl { url = "${baseurl}/archive/${repover}.tar.gz"; - sha256 = "1k401wsickbdy50yxjd26v8qm9519kxayaj3b103cr6ygp2rd9s6"; + sha256 = "1hnpbx0v89jmbg58ym4zm255da11zf5jq8y5s58zj4x2z6b1fpxi"; }; langtools = fetchurl { url = "${baseurl}/langtools/archive/${repover}.tar.gz"; - sha256 = "1qj75bb17a9czvxz7rm246w97cavglrssx0l1mkbickx0i0wamm8"; + sha256 = "060q01msfyspn14c9mkf9x0l8sprki9n8zb3cwlgglhnr2d4gfbr"; }; hotspot = fetchurl { url = "${baseurl}/hotspot/archive/${repover}.tar.gz"; - sha256 = "0kh8rk5y3n4g3hyjzflc8nwc0kyakjivpwlpj1bncsm1sykw8lr8"; + sha256 = "0705667y6llsmszvdcbhbxzbn1csv1f2rlyghwggx5xnaq46dhx6"; }; corba = fetchurl { url = "${baseurl}/corba/archive/${repover}.tar.gz"; - sha256 = "0gqa58mwwyf6mbgp48j1akv1y8yq55zpwfziqrbdbpkcsaf603n7"; + sha256 = "13f4h43lw9q1292fymn2d7whwvccpkcqraasdhvzf904101xcpsl"; }; jdk = fetchurl { url = "${baseurl}/jdk/archive/${repover}.tar.gz"; - sha256 = "0ymvvi7srr9qkss20s1yg3x2mjw178bscrnxa6s8y82gsw02y820"; + sha256 = "16wqinqv0aqyf6jg3nsn6rj5s7ggq82wvx86zm584g56011vkgf6"; }; jaxws = fetchurl { url = "${baseurl}/jaxws/archive/${repover}.tar.gz"; - sha256 = "0507mxvir4s536pdz45pvmahwa6s3h2yhg6rwdzrb568ab06asmi"; + sha256 = "0japl4nyb8y3w1mpfpkxn5vkf8fap1rg340vjnb6qm6fpqvl964f"; }; jaxp = fetchurl { url = "${baseurl}/jaxp/archive/${repover}.tar.gz"; - sha256 = "0igbg8axk028kqs9q11m8hb5bg2fa0qcwffbpfbhilyw5gmf7cy8"; + sha256 = "024zphx9r92ws9xjihvhyrbbbamfl7js0s24ff577v5z5gdb1lly"; }; nashorn = fetchurl { url = "${baseurl}/nashorn/archive/${repover}.tar.gz"; - sha256 = "0l63zm5a7ql3xvfxy5kzazq2184mpx0zyqzinjmq7v0q573g8xak"; + sha256 = "1crnbjjv1s6ndqpllcrggcpsxvqcnpr58zp51y0hjz3m3gpsxwcq"; }; openjdk8 = stdenv.mkDerivation { name = "openjdk-8u${update}b${build}"; @@ -97,6 +97,11 @@ let chmod +x configure substituteInPlace configure --replace /bin/bash "$shell" substituteInPlace hotspot/make/linux/adlc_updater --replace /bin/sh "$shell" + substituteInPlace hotspot/make/linux/makefiles/dtrace.make --replace /usr/include/sys/sdt.h "/no-such-path" + '' + # https://bugzilla.redhat.com/show_bug.cgi?id=1306558 + + stdenv.lib.optionalString stdenv.cc.isGNU '' + NIX_CFLAGS_COMPILE+=" -fno-lifetime-dse -fno-delete-null-pointer-checks" ''; configureFlags = [ @@ -202,7 +207,7 @@ let # any package that depends on the JRE has $CLASSPATH set up # properly. mkdir -p $jre/nix-support - echo -n "${setJavaClassPath}" > $jre/nix-support/propagated-native-build-inputs + printWords ${setJavaClassPath} > $jre/nix-support/propagated-native-build-inputs # Set JAVA_HOME automatically. mkdir -p $out/nix-support diff --git a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix index 8fe775de146ff..2a00cf5f2d29c 100644 --- a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix +++ b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix @@ -3,6 +3,7 @@ , downloadUrl , sha256_i686 , sha256_x86_64 +, sha256_armv7l , jceName , jceDownloadUrl , sha256JCE @@ -26,7 +27,8 @@ , mesa_noglu , freetype , fontconfig -, gnome2 +, gtk2 +, pango , cairo , alsaLib , atk @@ -34,10 +36,13 @@ , setJavaClassPath }: -assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"; +assert stdenv.system == "i686-linux" + || stdenv.system == "x86_64-linux" + || stdenv.system == "armv7l-linux"; assert swingSupport -> xorg != null; let + abortArch = abort "jdk requires i686-linux, x86_64-linux, or armv7l-linux"; /** * The JRE libraries are in directories that depend on the CPU. @@ -47,8 +52,10 @@ let "i386" else if stdenv.system == "x86_64-linux" then "amd64" + else if stdenv.system == "armv7l-linux" then + "arm" else - abort "jdk requires i686-linux or x86_64 linux"; + abortArch; jce = if installjce then @@ -59,6 +66,14 @@ let } else ""; + + rSubPaths = [ + "lib/${architecture}/jli" + "lib/${architecture}/server" + "lib/${architecture}/xawt" + "lib/${architecture}" + ]; + in let result = stdenv.mkDerivation rec { @@ -78,8 +93,14 @@ let result = stdenv.mkDerivation rec { url = downloadUrl; sha256 = sha256_x86_64; } + else if stdenv.system == "armv7l-linux" then + requireFile { + name = "jdk-${productVersion}u${patchVersion}-linux-arm32-vfp-hflt.tar.gz"; + url = downloadUrl; + sha256 = sha256_armv7l; + } else - abort "jdk requires i686-linux or x86_64 linux"; + abortArch; nativeBuildInputs = [ file ] ++ stdenv.lib.optional installjce unzip; @@ -134,18 +155,6 @@ let result = stdenv.mkDerivation rec { cp -v UnlimitedJCEPolicy*/*.jar $jrePath/lib/security fi - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/jli - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/server - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/xawt - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture} - - # set all the dynamic linkers - find $out -type f -perm -0100 \ - -exec patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "$rpath" {} \; - - find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; - if test -z "$pluginSupport"; then rm -f $out/bin/javaws if test -n "$installjdk"; then @@ -157,17 +166,28 @@ let result = stdenv.mkDerivation rec { ln -s $jrePath/lib/${architecture}/libnpjp2.so $jrePath/lib/${architecture}/plugins mkdir -p $out/nix-support - echo -n "${setJavaClassPath}" > $out/nix-support/propagated-native-build-inputs + printWords ${setJavaClassPath} > $out/nix-support/propagated-native-build-inputs # Set JAVA_HOME automatically. cat <<EOF >> $out/nix-support/setup-hook if [ -z "\$JAVA_HOME" ]; then export JAVA_HOME=$out; fi EOF + ''; + + postFixup = '' + rpath+="''${rpath:+:}${stdenv.lib.concatStringsSep ":" (map (a: "$jrePath/${a}") rSubPaths)}" + + # set all the dynamic linkers + find $out -type f -perm -0100 \ + -exec patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath "$rpath" {} \; + + find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; # Oracle Java Mission Control needs to know where libgtk-x11 and related is - if test -n "$installjdk"; then + if test -n "$installjdk" -a -x $out/bin/jmc; then wrapProgram "$out/bin/jmc" \ - --suffix-each LD_LIBRARY_PATH ':' "${rpath}" + --suffix-each LD_LIBRARY_PATH ':' "$rpath" fi ''; @@ -177,7 +197,7 @@ let result = stdenv.mkDerivation rec { * libXt is only needed on amd64 */ libraries = - [stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xorg.libXxf86vm alsaLib fontconfig freetype gnome2.pango gnome2.gtk cairo gdk_pixbuf atk] ++ + [stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xorg.libXxf86vm alsaLib fontconfig freetype pango gtk2 cairo gdk_pixbuf atk] ++ (if swingSupport then [xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt xorg.libXrender stdenv.cc.cc] else []); rpath = stdenv.lib.strings.makeLibraryPath libraries; @@ -192,7 +212,7 @@ let result = stdenv.mkDerivation rec { meta = with stdenv.lib; { license = licenses.unfree; - platforms = [ "i686-linux" "x86_64-linux" ]; # some inherit jre.meta.platforms + platforms = [ "i686-linux" "x86_64-linux" "armv7l-linux" ]; # some inherit jre.meta.platforms }; }; in result diff --git a/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix index 8e93f76ff1852..0d12b3ac89b02 100644 --- a/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix +++ b/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix @@ -1,9 +1,10 @@ import ./jdk-linux-base.nix { productVersion = "8"; - patchVersion = "131"; + patchVersion = "144"; downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html; - sha256_i686 = "0m3i1n1im1nlwb06wlsdajv19cd3zhrjkw8zbyjfznydn6qs4s80"; - sha256_x86_64 = "0dhj623ya01glcl3iir9ajifcrf6awhvpk936x9cxfj8zfyibck2"; + sha256_i686 = "1i5pginc65xl5vxzwid21ykakmfkqn59v3g01vpr94v28w30jk32"; + sha256_x86_64 = "1r5axvr8dg2qmr4zjanj73sk9x50m7p0w3vddz8c6ckgav7438z8"; + sha256_armv7l = "10r3nyssx8piyjaspravwgj2bnq4537041pn0lz4fk5b3473kgfb"; jceName = "jce_policy-8.zip"; jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html; sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk"; diff --git a/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix index 8e93f76ff1852..0d12b3ac89b02 100644 --- a/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix +++ b/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix @@ -1,9 +1,10 @@ import ./jdk-linux-base.nix { productVersion = "8"; - patchVersion = "131"; + patchVersion = "144"; downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html; - sha256_i686 = "0m3i1n1im1nlwb06wlsdajv19cd3zhrjkw8zbyjfznydn6qs4s80"; - sha256_x86_64 = "0dhj623ya01glcl3iir9ajifcrf6awhvpk936x9cxfj8zfyibck2"; + sha256_i686 = "1i5pginc65xl5vxzwid21ykakmfkqn59v3g01vpr94v28w30jk32"; + sha256_x86_64 = "1r5axvr8dg2qmr4zjanj73sk9x50m7p0w3vddz8c6ckgav7438z8"; + sha256_armv7l = "10r3nyssx8piyjaspravwgj2bnq4537041pn0lz4fk5b3473kgfb"; jceName = "jce_policy-8.zip"; jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html; sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk"; diff --git a/pkgs/development/compilers/orc/default.nix b/pkgs/development/compilers/orc/default.nix index fa3c95c9e090b..5e0cbb9d395da 100644 --- a/pkgs/development/compilers/orc/default.nix +++ b/pkgs/development/compilers/orc/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "The Oil Runtime Compiler"; - homepage = "http://code.entropywave.com/orc/"; + homepage = http://code.entropywave.com/orc/; # The source code implementing the Marsenne Twister algorithm is licensed # under the 3-clause BSD license. The rest is 2-clause BSD license. license = licenses.bsd3; diff --git a/pkgs/development/compilers/owl-lisp/default.nix b/pkgs/development/compilers/owl-lisp/default.nix new file mode 100644 index 0000000000000..b01914afc2950 --- /dev/null +++ b/pkgs/development/compilers/owl-lisp/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, coreutils }: + +stdenv.mkDerivation rec { + name = "owl-lisp-${version}"; + version = "0.1.14"; + + src = fetchFromGitHub { + owner = "aoh"; + repo = "owl-lisp"; + rev = "v${version}"; + sha256 = "1rr0icprna3zs834q1pj4xy21cql3pcfknfkqipq01rhnl2893sz"; + }; + + prePatch = '' + substituteInPlace Makefile --replace /usr $out + + for f in tests/run tests/exec.sh ; do + substituteInPlace $f --replace /bin/echo ${coreutils}/bin/echo + done + ''; + + # tests are already run as part of the compilation process + doCheck = false; + + meta = with stdenv.lib; { + descripton = "A functional lisp"; + homepage = https://github.com/aoh/owl-lisp; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg ]; + }; +} diff --git a/pkgs/development/compilers/pakcs/default.nix b/pkgs/development/compilers/pakcs/default.nix index 084a0941d24e4..d7590146e2ad6 100644 --- a/pkgs/development/compilers/pakcs/default.nix +++ b/pkgs/development/compilers/pakcs/default.nix @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { base containers directory either filepath mtl pretty syb time ]; testHaskellDepends = [ base Cabal filepath mtl ]; - homepage = "http://curry-language.org"; + homepage = http://curry-language.org; description = "Functions for manipulating Curry programs"; license = "unknown"; @@ -66,7 +66,7 @@ stdenv.mkDerivation rec { process syb transformers ]; testHaskellDepends = [ base Cabal curryBase filepath ]; - homepage = "http://curry-language.org"; + homepage = http://curry-language.org; description = "Compile the functional logic language Curry to several intermediate formats"; license = "unknown"; @@ -137,7 +137,7 @@ stdenv.mkDerivation rec { ''; meta = with stdenv.lib; { - homepage = "http://www.informatik.uni-kiel.de/~pakcs/"; + homepage = http://www.informatik.uni-kiel.de/~pakcs/; description = "An implementation of the multi-paradigm declarative language Curry"; license = licenses.bsd3; diff --git a/pkgs/development/compilers/polyml/5.6.nix b/pkgs/development/compilers/polyml/5.6.nix new file mode 100644 index 0000000000000..8b5d14e7f5fbc --- /dev/null +++ b/pkgs/development/compilers/polyml/5.6.nix @@ -0,0 +1,33 @@ +{stdenv, fetchurl, autoreconfHook}: + +let + version = "5.6"; +in + +stdenv.mkDerivation { + name = "polyml-${version}"; + + prePatch = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace configure.ac --replace stdc++ c++ + ''; + + buildInputs = stdenv.lib.optional stdenv.isDarwin autoreconfHook; + + src = fetchurl { + url = "mirror://sourceforge/polyml/polyml.${version}.tar.gz"; + sha256 = "05d6l2a5m9jf32a8kahwg2p2ph4x9rjf1nsl83331q3gwn5bkmr0"; + }; + + meta = { + description = "Standard ML compiler and interpreter"; + longDescription = '' + Poly/ML is a full implementation of Standard ML. + ''; + homepage = http://www.polyml.org/; + license = stdenv.lib.licenses.lgpl21; + platforms = with stdenv.lib.platforms; linux; + maintainers = [ #Add your name here! + stdenv.lib.maintainers.z77z + ]; + }; +} diff --git a/pkgs/development/compilers/ponyc/default.nix b/pkgs/development/compilers/ponyc/default.nix index 6b7f87b1e954b..f605f31c06dc8 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.14.0"; + version = "0.18.0"; src = fetchFromGitHub { owner = "ponylang"; repo = "ponyc"; rev = version; - sha256 = "0zzr3mmjp7010d3jfly6lbwaib546praml97kgj92yixahnwz533"; + sha256 = "0favj1895fp5j5i23cmjn9wvrrlchr2dmc18grlvbjr2cg2c76mg"; }; buildInputs = [ llvm makeWrapper which ]; diff --git a/pkgs/development/compilers/ponyc/pony-stable.nix b/pkgs/development/compilers/ponyc/pony-stable.nix index 9bee8e299c02e..4353c425489e9 100644 --- a/pkgs/development/compilers/ponyc/pony-stable.nix +++ b/pkgs/development/compilers/ponyc/pony-stable.nix @@ -1,13 +1,14 @@ {stdenv, fetchFromGitHub, ponyc }: -stdenv.mkDerivation { - name = "pony-stable-unstable-2017-03-30"; +stdenv.mkDerivation rec { + name = "pony-stable-${version}"; + version = "0.0.1"; src = fetchFromGitHub { - owner = "jemc"; + owner = "ponylang"; repo = "pony-stable"; - rev = "39890c7f11f79009630de6b551bd076868f7f5a2"; - sha256 = "1w15dg4l03zzncpllwww8jhsj7z1wgvhf89n7agr9f1w9m2zpskc"; + rev = version; + sha256 = "0q05135mnzzdwam7cnmxq34clqhmc83yp2gi63sx20c74rcw3p6v"; }; buildInputs = [ ponyc ]; @@ -20,7 +21,7 @@ stdenv.mkDerivation { description = "A simple dependency manager for the Pony language."; homepage = http://www.ponylang.org; license = stdenv.lib.licenses.bsd2; - maintainers = [ stdenv.lib.maintainers.dipinhora ]; + maintainers = with stdenv.lib.maintainers; [ dipinhora kamilchm ]; platforms = stdenv.lib.platforms.unix; }; } diff --git a/pkgs/development/compilers/purescript/psc-package/default.nix b/pkgs/development/compilers/purescript/psc-package/default.nix index 70ef8b63277f3..306eaa93958f1 100644 --- a/pkgs/development/compilers/purescript/psc-package/default.nix +++ b/pkgs/development/compilers/purescript/psc-package/default.nix @@ -4,13 +4,13 @@ with lib; mkDerivation rec { pname = "psc-package"; - version = "0.1.1"; + version = "0.2.0"; src = fetchFromGitHub { owner = "purescript"; repo = pname; rev = "v${version}"; - sha256 = "078xjn10yq4i0ff78bxscvxhn29p3s7iwv3pjyqxzlhaymn5949l"; + sha256 = "0vid8vc8n8xj0qa4gnm1any9s18rdh7yn960vgix17r7a3bdndwb"; }; isLibrary = false; diff --git a/pkgs/development/compilers/reason/default.nix b/pkgs/development/compilers/reason/default.nix index 7bd4750551f33..e364f536c8898 100644 --- a/pkgs/development/compilers/reason/default.nix +++ b/pkgs/development/compilers/reason/default.nix @@ -2,12 +2,12 @@ ocaml, opam, topkg, menhir, merlin_extend, ppx_tools_versioned, utop }: let - version = "1.13.4"; + version = "2.0.0"; src = fetchFromGitHub { owner = "facebook"; repo = "reason"; rev = version; - sha256 = "03r2ciikgwaq1dkzgzc8n7h7y0q95ajh6n9bb2n5bpgfhwkr1wqi"; + sha256 = "0l3lwfvppplah707rq5nqjav2354lq6d7xfflfigkzhn74hlx6iy"; }; meta = with stdenv.lib; { homepage = https://facebook.github.io/reason/; diff --git a/pkgs/development/compilers/rgbds/default.nix b/pkgs/development/compilers/rgbds/default.nix index 7233cceca0590..f883500eeb9f2 100644 --- a/pkgs/development/compilers/rgbds/default.nix +++ b/pkgs/development/compilers/rgbds/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { installFlags = "PREFIX=\${out}"; meta = with stdenv.lib; { - homepage = "https://www.anjbe.name/rgbds/"; + homepage = https://www.anjbe.name/rgbds/; description = "An assembler/linker package that produces Game Boy programs"; license = licenses.free; maintainers = with maintainers; [ matthewbauer ]; diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix index 2d4d6ad4db1fc..ac4102c9a63cd 100644 --- a/pkgs/development/compilers/rust/cargo.nix +++ b/pkgs/development/compilers/rust/cargo.nix @@ -47,7 +47,7 @@ rustPlatform.buildRustPackage rec { doCheck = false; meta = with stdenv.lib; { - homepage = http://crates.io; + homepage = https://crates.io; description = "Downloads your Rust project's dependencies and builds your project"; maintainers = with maintainers; [ wizeman retrry ]; license = [ licenses.mit licenses.asl20 ]; diff --git a/pkgs/development/compilers/rust/nightlyBin.nix b/pkgs/development/compilers/rust/nightlyBin.nix index bdb11bd5b52ec..af06835c5def1 100644 --- a/pkgs/development/compilers/rust/nightlyBin.nix +++ b/pkgs/development/compilers/rust/nightlyBin.nix @@ -7,7 +7,7 @@ let bootstrapHash = if stdenv.system == "x86_64-linux" - then "21f38f46bf16373d3240a38b775e1acff9bb429f1570a4d4da8b3000315d0085" + then "0svlm4bxsdhdn4jsv46f278kid23a9w978q2137qrba4xnyb06kf" else throw "missing bootstrap hash for platform ${stdenv.system}"; src = fetchurl { @@ -15,7 +15,7 @@ let sha256 = bootstrapHash; }; - version = "2017-05-30"; + version = "2017-06-26"; in import ./binaryBuild.nix { inherit stdenv fetchurl makeWrapper cacert zlib buildRustPackage curl; inherit version src platform; diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 717c0092c9460..f5bcc73fd6d1e 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -114,13 +114,17 @@ stdenv.mkDerivation { dontUseCmakeConfigure = true; # ps is needed for one of the test cases - nativeBuildInputs = [ file python2 procps rustPlatform.rust.rustc git cmake - which libffi gdb ]; + nativeBuildInputs = + [ file python2 procps rustPlatform.rust.rustc git cmake + which libffi + ] + # Only needed for the debuginfo tests + ++ optional (!stdenv.isDarwin) gdb; buildInputs = [ ncurses ] ++ targetToolchains ++ optional (!forceBundledLLVM) llvmShared; - outputs = [ "out" "doc" ]; + outputs = [ "out" "man" "doc" ]; setOutputFlags = false; # Disable codegen units for the tests. @@ -138,8 +142,7 @@ stdenv.mkDerivation { inherit doCheck; - ${if buildPlatform == hostPlatform then "dontSetConfigureCross" else null} = true; - ${if buildPlatform != hostPlatform then "configurePlatforms" else null} = []; + configurePlatforms = []; # https://github.com/NixOS/nixpkgs/pull/21742#issuecomment-272305764 # https://github.com/rust-lang/rust/issues/30181 diff --git a/pkgs/development/compilers/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix index 1fe2bb90ad92d..707f7966dd9b7 100644 --- a/pkgs/development/compilers/sbcl/bootstrap.nix +++ b/pkgs/development/compilers/sbcl/bootstrap.nix @@ -71,7 +71,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Lisp compiler"; - homepage = "http://www.sbcl.org"; + homepage = http://www.sbcl.org; license = licenses.publicDomain; # and FreeBSD maintainers = [maintainers.raskin maintainers.tohl]; platforms = attrNames options; diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index dcd110954c10e..82859a0e42986 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { name = "sbcl-${version}"; - version = "1.3.17"; + version = "1.3.20"; src = fetchurl { url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2"; - sha256 = "1bqd39cqcv129zxvp3w3z1x46m9g9nmgslnlrvcsbqwd69vgbfcl"; + sha256 = "0qhzrl2msdyzqp3165qlh9s6jrif5rddsmj9q50z0bxnaf0330jj"; }; patchPhase = '' diff --git a/pkgs/development/compilers/scala/default.nix b/pkgs/development/compilers/scala/default.nix index e48fc63096e5a..d4d4a0f31bc57 100644 --- a/pkgs/development/compilers/scala/default.nix +++ b/pkgs/development/compilers/scala/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, makeWrapper, jre, gnugrep, coreutils }: stdenv.mkDerivation rec { - name = "scala-2.12.2"; + name = "scala-2.12.3"; src = fetchurl { url = "http://www.scala-lang.org/files/archive/${name}.tgz"; - sha256 = "1xd68q9h0vzqndar3r4mvabbd7naa25fbiciahkhxwgw8sr6hq8r"; + sha256 = "133w4r2214ci7r4sg2yyk9lhn62ldm4ad0d89drwrvgvffvnly9b"; }; propagatedBuildInputs = [ jre ] ; diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix index 3ed5a2bef7221..714f06d0b53ff 100644 --- a/pkgs/development/compilers/solc/default.nix +++ b/pkgs/development/compilers/solc/default.nix @@ -1,30 +1,35 @@ { stdenv, fetchzip, fetchgit, boost, cmake }: -let jsoncpp = fetchzip { - url = https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz; - sha256 = "0jz93zv17ir7lbxb3dv8ph2n916rajs8i96immwx9vb45pqid3n0"; -}; in - -let commit = "68ef5810593e7c8092ed41d5f474dd43141624eb"; in +let + version = "0.4.13"; + rev = "0fb4cb1ab9bb4b6cc72e28cc5a1753ad14781f14"; + sha256 = "0rhrm0bmk5s2358j40yx7dzr1938q17dchzflrxw6y7yvkhscxrm"; + jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz; + jsoncpp = fetchzip { + url = jsoncppURL; + sha256 = "0jz93zv17ir7lbxb3dv8ph2n916rajs8i96immwx9vb45pqid3n0"; + }; +in -stdenv.mkDerivation rec { - version = "0.4.11"; +stdenv.mkDerivation { name = "solc-${version}"; # Cannot use `fetchFromGitHub' because of submodules src = fetchgit { url = "https://github.com/ethereum/solidity"; - rev = commit; - sha256 = "13zycybf23yvf3hkf9zgw9gbc1y4ifzxaf7sll69bsn24fcyq961"; + inherit rev sha256; }; patchPhase = '' - echo >commit_hash.txt ${commit} + echo >commit_hash.txt '${rev}' echo >prerelease.txt substituteInPlace deps/jsoncpp.cmake \ - --replace https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz ${jsoncpp} + --replace '${jsoncppURL}' ${jsoncpp} substituteInPlace cmake/EthCompilerSettings.cmake \ --replace 'add_compile_options(-Werror)' "" + substituteInPlace cmake/EthDependencies.cmake \ + --replace 'set(Boost_USE_STATIC_LIBS ON)' \ + 'set(Boost_USE_STATIC_LIBS OFF)' ''; buildInputs = [ boost cmake ]; @@ -34,6 +39,7 @@ stdenv.mkDerivation rec { longDescription = "This package also includes `lllc', the LLL compiler."; homepage = https://github.com/ethereum/solidity; license = stdenv.lib.licenses.gpl3; + platforms = with stdenv.lib.platforms; linux ++ darwin; maintainers = [ stdenv.lib.maintainers.dbrock ]; inherit version; }; diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix index 79f7e5256b214..0f84b8ba4cd8e 100644 --- a/pkgs/development/compilers/swi-prolog/default.nix +++ b/pkgs/development/compilers/swi-prolog/default.nix @@ -4,14 +4,14 @@ }: let - version = "7.2.3"; + version = "7.4.2"; in stdenv.mkDerivation { name = "swi-prolog-${version}"; src = fetchurl { url = "http://www.swi-prolog.org/download/stable/src/swipl-${version}.tar.gz"; - sha256 = "1da6sr8pz1zffs79nfa1d25a11ibhalm1vdwsb17p265nx8psra3"; + sha256 = "12yzy3w2l1p9fv77lv20xbqq47d0zjw5rkz96mx1xg1lldyja5vz"; }; buildInputs = [ gmp readline openssl libjpeg unixODBC libXinerama diff --git a/pkgs/development/compilers/swift/default.nix b/pkgs/development/compilers/swift/default.nix index 839ecdbeb6528..96b22b630f4fb 100644 --- a/pkgs/development/compilers/swift/default.nix +++ b/pkgs/development/compilers/swift/default.nix @@ -258,7 +258,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "The Swift Programming Language"; - homepage = "https://github.com/apple/swift"; + homepage = https://github.com/apple/swift; maintainers = with maintainers; [ jb55 dtzWill ]; license = licenses.asl20; # Swift doesn't support 32bit Linux, unknown on other platforms. diff --git a/pkgs/development/compilers/swift/patches/build-script-pax.patch b/pkgs/development/compilers/swift/patches/build-script-pax.patch index 9f1976a2d88de..fa2ccdf9d5c6a 100644 --- a/pkgs/development/compilers/swift/patches/build-script-pax.patch +++ b/pkgs/development/compilers/swift/patches/build-script-pax.patch @@ -1,12 +1,13 @@ --- swift/utils/build-script-impl 2017-01-23 12:47:20.401326309 -0600 +++ swift-pax/utils/build-script-impl 2017-01-23 13:24:10.339366996 -0600 -@@ -1823,6 +1823,16 @@ function set_lldb_xcodebuild_options() { +@@ -1823,6 +1823,17 @@ function set_lldb_xcodebuild_options() { fi } +## XXX: Taken from nixpkgs /pkgs/stdenv/generic/setup.sh +isELF() { + local fn="$1" ++ local fd + local magic + exec {fd}< "$fn" + read -n 4 -u $fd magic diff --git a/pkgs/development/compilers/tinycc/default.nix b/pkgs/development/compilers/tinycc/default.nix index c7e3c4b3c672b..7e083ffe67beb 100644 --- a/pkgs/development/compilers/tinycc/default.nix +++ b/pkgs/development/compilers/tinycc/default.nix @@ -2,10 +2,10 @@ with stdenv.lib; let - date = "20170605"; + date = "20170710"; version = "0.9.27pre-${date}"; - rev = "3e4b7693bfd5b76570b35558c83a935326513eff"; - sha256 = "0m5k1df73kakvg9xz06y3nlac4mwfccni6hdijaf4w8fyy3zz4bg"; + rev = "2acb04f7f2077a4cff103421d79ceee48441918a"; + sha256 = "1rh89dx1myqfm752d4rlzrm8aadfm17fm88ps0q9ibmbxavb45qw"; in stdenv.mkDerivation rec { diff --git a/pkgs/development/compilers/uhc/default.nix b/pkgs/development/compilers/uhc/default.nix index d200579168059..79b22214eccd0 100644 --- a/pkgs/development/compilers/uhc/default.nix +++ b/pkgs/development/compilers/uhc/default.nix @@ -38,7 +38,7 @@ in stdenv.mkDerivation rec { inherit clang; meta = with stdenv.lib; { - homepage = "http://www.cs.uu.nl/wiki/UHC"; + homepage = http://www.cs.uu.nl/wiki/UHC; description = "Utrecht Haskell Compiler"; maintainers = [ maintainers.phile314 ]; diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix index c1e1e2ece7a88..7145a8f2fa042 100644 --- a/pkgs/development/compilers/urweb/default.nix +++ b/pkgs/development/compilers/urweb/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { name = "urweb-${version}"; - version = "20170105"; + version = "20170720"; src = fetchurl { url = "http://www.impredicative.com/ur/${name}.tgz"; - sha256 = "2ad3aea2c4851c9b18f752d38c7127af8293fbbbbdb3dd06b73a4603fe399b67"; + sha256 = "17qh9mcmlhbv6r52yij8l9ik7j7x6x7c09lf6pznnbdh4sf8p5wb"; }; buildInputs = [ openssl mlton mysql.client postgresql sqlite ]; diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix index b0153a7540323..42b81a21a6710 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -18,7 +18,7 @@ let meta = with stdenv.lib; { description = "Compiler for GObject type system"; - homepage = "http://live.gnome.org/Vala"; + homepage = http://live.gnome.org/Vala; license = licenses.lgpl21Plus; platforms = platforms.unix; maintainers = with maintainers; [ antono lethalman peterhoeg ]; diff --git a/pkgs/development/compilers/wla-dx/default.nix b/pkgs/development/compilers/wla-dx/default.nix index 13a48aaaa30c7..78df2583140be 100644 --- a/pkgs/development/compilers/wla-dx/default.nix +++ b/pkgs/development/compilers/wla-dx/default.nix @@ -1,13 +1,14 @@ {stdenv, fetchFromGitHub, cmake}: stdenv.mkDerivation rec { - name = "wla-dx-git-2016-02-27"; + version = "2017-06-05"; + name = "wla-dx-git-${version}"; src = fetchFromGitHub { owner = "vhelin"; repo = "wla-dx"; - rev = "8189fe8d5620584ea16563875ff3c5430527c86a"; - sha256 = "02zgkcyfx7y8j6jvyi12lm29fydnd7m3rxv6g2psv23fyzmpkkir"; + rev = "ae6843f9711cbc2fa6dd8c200877b40bd2bcad7f"; + sha256 = "09c2kz12ld97ad41j6r8r65jknllrak1x8r43fgr26x7hdlxz5c6"; }; hardeningDisable = [ "format" ]; @@ -20,7 +21,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake ]; meta = with stdenv.lib; { - homepage = "http://www.villehelin.com/wla.html"; + homepage = http://www.villehelin.com/wla.html; description = "Yet Another GB-Z80/Z80/6502/65C02/6510/65816/HUC6280/SPC-700 Multi Platform Cross Assembler Package"; license = licenses.gpl2; maintainers = with maintainers; [ matthewbauer ]; diff --git a/pkgs/development/compilers/yap/default.nix b/pkgs/development/compilers/yap/default.nix index 021efbba34c1b..8e37dc76441be 100644 --- a/pkgs/development/compilers/yap/default.nix +++ b/pkgs/development/compilers/yap/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { configureFlags = "--enable-tabling=yes"; meta = { - homepage = "http://www.dcc.fc.up.pt/~vsc/Yap/"; + homepage = http://www.dcc.fc.up.pt/~vsc/Yap/; description = "A ISO-compatible high-performance Prolog compiler"; license = stdenv.lib.licenses.artistic2; diff --git a/pkgs/development/compilers/zulu/default.nix b/pkgs/development/compilers/zulu/default.nix index 7621aa82bc751..f7638757ff7a1 100644 --- a/pkgs/development/compilers/zulu/default.nix +++ b/pkgs/development/compilers/zulu/default.nix @@ -1,17 +1,28 @@ -{ stdenv, pkgs, fetchurl, unzip, makeWrapper, setJavaClassPath, swingSupport ? true }: - -with pkgs; +{ stdenv, lib, fetchurl, unzip, makeWrapper, setJavaClassPath +, zulu, glib, libxml2, libav_0_8, ffmpeg, libxslt, mesa_noglu, alsaLib +, fontconfig, freetype, gnome2, cairo, gdk_pixbuf, atk, xorg +, swingSupport ? true }: let - version = "8.19.0.1"; - openjdk = "8.0.112"; + version = "8.21.0.1"; + openjdk = "8.0.131"; - sha256_linux = "1icb6in1197n44wk2cqnrxr7w0bd5abxxysfrhbg56jlb9nzmp4x"; - sha256_darwin = "0kxwh62a6kckc9l9jkgakf86lqkqazp3dwfwaxqc4cg5zczgbhmd"; + sha256_linux = "0cr1wvk1ifdq69ia8sr6171yzciba8l5x7dszwa5g2v0vmmqq88p"; + sha256_darwin = "0xq9bdzbdq8wq48gj6j56bw30l2iafz6sy1wdhrf92n9bnz5qmw7"; platform = if stdenv.isDarwin then "macosx" else "linux"; hash = if stdenv.isDarwin then sha256_darwin else sha256_linux; extension = if stdenv.isDarwin then "zip" else "tar.gz"; + + libraries = [ + stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu + xorg.libXxf86vm alsaLib fontconfig freetype gnome2.pango + gnome2.gtk cairo gdk_pixbuf atk + ] ++ (lib.optionals swingSupport (with xorg; [ + xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp + xorg.libXt xorg.libXrender stdenv.cc.cc + ])); + in stdenv.mkDerivation rec { inherit version openjdk platform hash extension; @@ -22,7 +33,7 @@ in stdenv.mkDerivation rec { sha256 = hash; }; - buildInputs = [ makeWrapper ] ++ stdenv.lib.optional stdenv.isDarwin [ unzip ]; + buildInputs = [ makeWrapper ] ++ lib.optional stdenv.isDarwin unzip; installPhase = '' mkdir -p $out @@ -43,7 +54,7 @@ in stdenv.mkDerivation rec { find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; mkdir -p $out/nix-support - echo -n "${setJavaClassPath}" > $out/nix-support/propagated-native-build-inputs + printWords ${setJavaClassPath} > $out/nix-support/propagated-native-build-inputs # Set JAVA_HOME automatically. cat <<EOF >> $out/nix-support/setup-hook @@ -51,9 +62,6 @@ in stdenv.mkDerivation rec { EOF ''; - libraries = [ stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xorg.libXxf86vm alsaLib fontconfig freetype gnome2.pango gnome2.gtk cairo gdk_pixbuf atk ] - ++ (if swingSupport then [ xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt xorg.libXrender stdenv.cc.cc ] else [ ]); - rpath = stdenv.lib.strings.makeLibraryPath libraries; passthru = { @@ -64,8 +72,11 @@ in stdenv.mkDerivation rec { homepage = https://www.azul.com/products/zulu/; license = licenses.gpl2; description = "Certified builds of OpenJDK"; - longDescription = "Certified builds of OpenJDK that can be deployed across multiple operating systems, containers, hypervisors and Cloud platforms"; - maintainers = with maintainers; [ nequissimus ]; + longDescription = '' + Certified builds of OpenJDK that can be deployed across multiple + operating systems, containers, hypervisors and Cloud platforms. + ''; + maintainers = with maintainers; [ nequissimus fpletz ]; platforms = [ "x86_64-linux" "x86_64-darwin" ]; }; } |