Merge branch 'master' into staging-next

Hydra nixpkgs: ?compare=1582510
This commit is contained in:
Vladimír Čunát
2020-04-18 07:42:26 +02:00
227 changed files with 10467 additions and 5463 deletions
+16 -50
View File
@@ -178,33 +178,6 @@ let
}));
in rec {
binaryCrystal_0_27 = genericBinary {
version = "0.27.2";
sha256s = {
x86_64-linux = "05l5x7kx2acgnv42fj3rr17z73ix06zvi05h7d7vf3kw0izxrasm";
i686-linux = "1iwizkvn6pglc0azkyfhlmk9ap793krdgcnbihd1kvrvs4cz0mm9";
x86_64-darwin = "14c69ac2dmfwmb5q56ps3xyxxb0mrbc91ahk9h07c8fiqfii3k9g";
};
};
binaryCrystal_0_29 = genericBinary {
version = "0.29.0";
sha256s = {
x86_64-linux = "1wrk29sfx35akg7hxwpdiikvl18wd40gq1kwirw7x522hnq7vlna";
i686-linux = "1nx0piis2k3nn7kqiijqazzbvlaavhgvsln0l3dxmpfa4i4dz5h2";
x86_64-darwin = "1fd0fbyf05abivnp3igjlrm2axf65n2wdmg4aq6nqj60ipc01rvd";
};
};
binaryCrystal_0_30 = genericBinary {
version = "0.30.1";
sha256s = {
x86_64-linux = "1k2mb74jh3ns3m7y73j4wpf571sayn73zbn6d7q81d09r280zrma";
i686-linux = "0vsq1ayf922spydp2g2mmimc797jmm7nl5nljhfppcclrwygdyk2";
x86_64-darwin = "1p3s4lwdgykb7h7aysjhrs7vm0zhinzw5d7rfv6jsyin4j8yxhzz";
};
};
binaryCrystal_0_31 = genericBinary {
version = "0.31.1";
sha256s = {
@@ -214,32 +187,11 @@ in rec {
};
};
crystal_0_27 = generic {
version = "0.27.2";
sha256 = "0vxqnpqi85yh0167nrkbksxsni476iwbh6y3znbvbjbbfhsi3nsj";
doCheck = false; # about 20 tests out of more than 15000 are failing
binary = binaryCrystal_0_27;
};
crystal_0_29 = generic {
version = "0.29.0";
sha256 = "0v9l253b2x8yw6a43vvalywpwciwr094l3g5wakmndfrzak2s3zr";
doCheck = false; # 6 checks are failing now
binary = binaryCrystal_0_29;
};
crystal_0_30 = generic {
version = "0.30.1";
sha256 = "0fbk784zjflsl3hys5a1xmn8mda8kb2z7ql58wpyfavivswxanbs";
doCheck = false; # 6 checks are failing now
binary = binaryCrystal_0_29;
};
crystal_0_31 = generic {
version = "0.31.1";
sha256 = "1dswxa32w16gnc6yjym12xj7ibg0g6zk3ngvl76lwdjqb1h6lwz8";
doCheck = false; # 5 checks are failing now
binary = binaryCrystal_0_30;
binary = binaryCrystal_0_31;
};
crystal_0_32 = generic {
@@ -248,7 +200,21 @@ in rec {
binary = binaryCrystal_0_31;
};
crystal = crystal_0_32;
crystal_0_33 = generic {
version = "0.33.0";
sha256 = "1zg0qixcws81s083wrh54hp83ng2pa8iyyafaha55mzrh8293jbi";
binary = binaryCrystal_0_31;
doCheck = false; # 4 checks are failing now
};
crystal_0_34 = generic {
version = "0.34.0";
sha256 = "110lfpxk9jnqyznbfnilys65ixj5sdmy8pvvnlhqhc3ccvrlnmq4";
binary = crystal_0_33;
doCheck = false; # 4 checks are failing now
};
crystal = crystal_0_34;
crystal2nix = callPackage ./crystal2nix.nix {};
}
+30 -18
View File
@@ -2,13 +2,17 @@
# build-tools
, bootPkgs
, autoconf, autoreconfHook, automake, coreutils, fetchgit, fetchpatch, perl, python3, m4, sphinx
, autoconf, autoreconfHook, automake, coreutils, fetchgit, perl, python3, m4, sphinx
, bash
, libiconv ? null, ncurses
, # GHC can be built with system libffi or a bundled one.
libffi ? null
, enableDwarf ? !stdenv.targetPlatform.isDarwin &&
!stdenv.targetPlatform.isWindows, elfutils # for DWARF support
!stdenv.targetPlatform.isWindows
, elfutils # for DWARF support
, useLLVM ? !stdenv.targetPlatform.isx86 || stdenv.targetPlatform.isiOS
, # LLVM is conceptually a run-time-only depedendency, but for
@@ -18,7 +22,8 @@
, # If enabled, GHC will be built with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
enableIntegerSimple ? !(stdenv.lib.any (stdenv.lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
enableIntegerSimple ? !(stdenv.lib.any (stdenv.lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms)
, gmp
, # If enabled, use -fPIC when compiling static libs.
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
@@ -30,7 +35,7 @@
, # Whetherto build terminfo.
enableTerminfo ? !stdenv.targetPlatform.isWindows
, version ? "8.10.20191119"
, version ? "8.11.20200403"
, # What flavour to build. An empty string indicates no
# specific flavour and falls back to ghc default values.
ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
@@ -75,6 +80,7 @@ let
# Splicer will pull out correct variations
libDeps = platform: stdenv.lib.optional enableTerminfo ncurses
++ [libffi]
++ stdenv.lib.optional (!enableIntegerSimple) gmp
++ stdenv.lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv
++ stdenv.lib.optional enableDwarf elfutils;
@@ -97,17 +103,14 @@ stdenv.mkDerivation (rec {
src = fetchgit {
url = "https://gitlab.haskell.org/ghc/ghc.git/";
rev = "0418c38d55c7a47967187dce2db5ea2ab1021b1e";
sha256 = "1d8g30ii0w4xh6fh61bxbalsqqyanny99nn3p727fx7favnhgvxi";
rev = "4291bddaea3148908c55f235ee8978e1d9aa6f20";
sha256 = "1gs3mxmsdpsgsp7vnawx8mys0qwg4x2zhfrbciy3wv8nv13ar1af";
};
enableParallelBuilding = true;
outputs = [ "out" "doc" ];
patches = [
];
postPatch = "patchShebangs .";
# GHC is a bit confused on its cross terminology.
@@ -130,8 +133,8 @@ stdenv.mkDerivation (rec {
export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
echo -n "${buildMK}" > mk/build.mk
echo ${version} >VERSION
echo ${src.rev} >GIT_COMMIT_ID
echo ${version} > VERSION
echo ${src.rev} > GIT_COMMIT_ID
./boot
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
'' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
@@ -161,31 +164,40 @@ stdenv.mkDerivation (rec {
# TODO(@Ericson2314): Always pass "--target" and always prefix.
configurePlatforms = [ "build" "host" ]
++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
# `--with` flags for libraries needed for RTS linker
configureFlags = [
"--datadir=$doc/share/doc/ghc"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
"--with-curses-libraries=${ncurses.out}/lib"
] ++ stdenv.lib.optionals (libffi != null) [
"--with-system-libffi"
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
] ++ stdenv.lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [
"--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
] ++ stdenv.lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
"--with-iconv-includes=${libiconv}/include"
"--with-iconv-libraries=${libiconv}/lib"
] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
"--enable-bootstrap-with-devel-snapshot"
] ++ stdenv.lib.optionals useLdGold [
"CFLAGS=-fuse-ld=gold"
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
] ++ stdenv.lib.optionals (disableLargeAddressSpace) [
"--disable-large-address-space"
] ++ stdenv.lib.optionals enableDwarf [
] ++ stdenv.lib.optional disableLargeAddressSpace "--disable-large-address-space"
++ stdenv.lib.optionals enableDwarf [
"--enable-dwarf-unwind"
"--with-libdw-includes=${stdenv.lib.getDev elfutils}/include"
"--with-libdw-libraries=${stdenv.lib.getLib elfutils}/lib"
];
# Make sure we never relax`$PATH` and hooks support for compatability.
# Make sure we never relax`$PATH` and hooks support for compatibility.
strictDeps = true;
# Dont add -liconv to LDFLAGS automatically so that GHC will add it itself.
dontAddExtraLibs = true;
nativeBuildInputs = [
perl autoconf autoreconfHook automake m4 python3 sphinx
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
@@ -1,7 +1,10 @@
{ llvmPackages, lib, fetchFromGitHub, cmake
, libpng, libjpeg, mesa, eigen, openblas
, libpng, libjpeg, mesa, eigen
, openblas, blas, lapack
}:
assert blas.implementation == "openblas" && lapack.implementation == "openblas";
let
version = "2019_08_27";
+7 -17
View File
@@ -7,28 +7,22 @@
# standard library dependencies
, curl, fftwSinglePrec, fftw, gmp, libgit2, mpfr, openlibm, openspecfun, pcre2
# linear algebra
, openblas, arpack
, blas, lapack, arpack
# Darwin frameworks
, CoreServices, ApplicationServices
}:
assert (!blas.is64bit) && (!lapack.is64bit);
with stdenv.lib;
# All dependencies must use the same OpenBLAS.
let
arpack_ = arpack;
in
let
arpack = arpack_.override { inherit openblas; };
in
let
majorVersion = "1";
minorVersion = "3";
maintenanceVersion = "1";
src_sha256 = "0q9a7yc3b235psrwl5ghyxgwly25lf8n818l8h6bkf2ymdbsv5p6";
version = "${majorVersion}.${minorVersion}.${maintenanceVersion}";
in
in
stdenv.mkDerivation rec {
pname = "julia";
@@ -67,7 +61,7 @@ stdenv.mkDerivation rec {
buildInputs = [
arpack fftw fftwSinglePrec gmp libgit2 libunwind mpfr
pcre2.dev openblas openlibm openspecfun readline utf8proc
pcre2.dev blas lapack openlibm openspecfun readline utf8proc
zlib
]
++ stdenv.lib.optionals stdenv.isDarwin [CoreServices ApplicationServices]
@@ -94,13 +88,9 @@ stdenv.mkDerivation rec {
"SHELL=${stdenv.shell}"
"USE_SYSTEM_BLAS=1"
"USE_BLAS64=${if openblas.blas64 then "1" else "0"}"
"LIBBLAS=-lopenblas"
"LIBBLASNAME=libopenblas"
"USE_BLAS64=${if blas.is64bit then "1" else "0"}"
"USE_SYSTEM_LAPACK=1"
"LIBLAPACK=-lopenblas"
"LIBLAPACKNAME=libopenblas"
"USE_SYSTEM_ARPACK=1"
"USE_SYSTEM_FFTW=1"
@@ -123,7 +113,7 @@ stdenv.mkDerivation rec {
];
LD_LIBRARY_PATH = makeLibraryPath [
arpack fftw fftwSinglePrec gmp libgit2 mpfr openblas openlibm
arpack fftw fftwSinglePrec gmp libgit2 mpfr blas openlibm
openspecfun pcre2
];
+5 -15
View File
@@ -15,20 +15,14 @@
# standard library dependencies
, curl, fftwSinglePrec, fftw, gmp, libgit2, mpfr, openlibm, openspecfun, pcre2
# linear algebra
, openblas, arpack
, blas, lapack, arpack
# Darwin frameworks
, CoreServices, ApplicationServices
}:
with stdenv.lib;
# All dependencies must use the same OpenBLAS.
let
arpack_ = arpack;
in
let
arpack = arpack_.override { inherit openblas; };
in
assert (!blas.is64bit) && (!lapack.is64bit);
let
dsfmtVersion = "2.2.3";
@@ -118,7 +112,7 @@ stdenv.mkDerivation rec {
buildInputs = [
arpack fftw fftwSinglePrec gmp libgit2 libunwind mpfr
pcre2.dev openblas openlibm openspecfun readline utf8proc
pcre2.dev blas lapack openlibm openspecfun readline utf8proc
zlib
]
++ stdenv.lib.optionals stdenv.isDarwin [CoreServices ApplicationServices]
@@ -143,13 +137,9 @@ stdenv.mkDerivation rec {
"SHELL=${stdenv.shell}"
"USE_SYSTEM_BLAS=1"
"USE_BLAS64=${if openblas.blas64 then "1" else "0"}"
"LIBBLAS=-lopenblas"
"LIBBLASNAME=libopenblas"
"USE_BLAS64=${if blas.is64bit then "1" else "0"}"
"USE_SYSTEM_LAPACK=1"
"LIBLAPACK=-lopenblas"
"LIBLAPACKNAME=libopenblas"
"USE_SYSTEM_ARPACK=1"
"USE_SYSTEM_FFTW=1"
@@ -173,7 +163,7 @@ stdenv.mkDerivation rec {
];
LD_LIBRARY_PATH = makeLibraryPath [
arpack fftw fftwSinglePrec gmp libgit2 mpfr openblas openlibm
arpack fftw fftwSinglePrec gmp libgit2 mpfr blas lapack openlibm
openspecfun pcre2
];
+28 -6
View File
@@ -1,25 +1,47 @@
{ stdenv, fetchFromGitHub, cmake, llvmPackages, libxml2, zlib }:
{ stdenv, fetchFromGitHub, cmake, llvmPackages, libxml2, zlib, substituteAll }:
stdenv.mkDerivation rec {
version = "0.5.0";
llvmPackages.stdenv.mkDerivation rec {
version = "0.6.0";
pname = "zig";
src = fetchFromGitHub {
owner = "ziglang";
repo = pname;
rev = version;
sha256 = "0xyl0riakh6kwb3yvxihb451kqs4ai4q0aygqygnlb2rlr1dn1zb";
sha256 = "13dwm2zpscn4n0p5x8ggs9n7mwmq9cgip383i3qqphg7m3pkls8z";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ llvmPackages.clang-unwrapped llvmPackages.llvm libxml2 zlib ];
buildInputs = [
llvmPackages.clang-unwrapped
llvmPackages.llvm
llvmPackages.lld
libxml2
zlib
];
patches = [
(substituteAll {
src = ./llvm10_polly.patch;
llvm_extras = "-Wl,${llvmPackages.llvm}/lib/LLVMPolly.so";
})
];
preBuild = ''
export HOME=$TMPDIR;
'';
checkPhase = ''
runHook preCheck
./zig test $src/test/stage1/behavior.zig
runHook postCheck
'';
doCheck = true;
meta = with stdenv.lib; {
description = "Programming languaged designed for robustness, optimality, and clarity";
description =
"General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software";
homepage = "https://ziglang.org/";
license = licenses.mit;
platforms = platforms.unix;
@@ -0,0 +1,10 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 97608cddf..e451c0711 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -369,4 +369,5 @@ target_link_libraries(zig_cpp LINK_PUBLIC
${CLANG_LIBRARIES}
${LLD_LIBRARIES}
${LLVM_LIBRARIES}
+ @llvm_extras@
)