summaryrefslogtreecommitdiffstats
path: root/pkgs
diff options
context:
space:
mode:
authorMarkus Kowalewski <markus.kowalewski@gmail.com>2021-01-10 13:40:19 +0100
committerMarkus Kowalewski <markus.kowalewski@gmail.com>2021-01-23 12:15:13 +0100
commit6dba41fbcb4239a628ac5bdf0035882a679b8648 (patch)
treea11ed2cef0b00b88ba8e99a8d30f8890aec90781 /pkgs
parentf6a583eeece936a1d917de67194fec4b6c74cf1f (diff)
mpi: use mpi attribute consistently as the default MPI implementations
Use the attribute mpi to provide a system wide default MPI implementation. The default is openmpi (as before). This now allows for overriding the MPI implentation by using the overlay mechanism. Build all packages with mpich instead of the default openmpi can now be achived like this: self: super: { mpi = super.mpich; } All derivations that have been using "mpi ? null" to provide optional building with MPI have been change in the following way to allow for optional builds with MPI: { ... , mpi , useMpi ? false }
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/graphics/paraview/default.nix4
-rw-r--r--pkgs/applications/science/biology/migrate/default.nix4
-rw-r--r--pkgs/applications/science/biology/neuron/default.nix9
-rw-r--r--pkgs/applications/science/biology/raxml/default.nix10
-rw-r--r--pkgs/applications/science/chemistry/openmolcas/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/quantum-espresso/default.nix7
-rw-r--r--pkgs/applications/science/chemistry/siesta/default.nix9
-rw-r--r--pkgs/applications/science/electronics/openems/default.nix5
-rw-r--r--pkgs/applications/science/math/cntk/default.nix6
-rw-r--r--pkgs/applications/science/math/getdp/default.nix4
-rw-r--r--pkgs/applications/science/math/scotch/default.nix4
-rw-r--r--pkgs/applications/science/molecular-dynamics/gromacs/default.nix4
-rw-r--r--pkgs/applications/science/molecular-dynamics/lammps/default.nix4
-rw-r--r--pkgs/applications/science/physics/elmerfem/default.nix4
-rw-r--r--pkgs/development/libraries/boost/generic.nix7
-rw-r--r--pkgs/development/libraries/globalarrays/default.nix4
-rw-r--r--pkgs/development/libraries/precice/default.nix4
-rw-r--r--pkgs/development/python-modules/cntk/default.nix8
-rw-r--r--pkgs/development/python-modules/pytorch/default.nix8
-rw-r--r--pkgs/development/python-modules/tensorflow/default.nix4
-rw-r--r--pkgs/development/r-modules/default.nix10
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix6
-rw-r--r--pkgs/tools/misc/hdf5/default.nix11
-rw-r--r--pkgs/tools/misc/hpcg/default.nix4
-rw-r--r--pkgs/tools/system/ior/default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix39
-rw-r--r--pkgs/top-level/python-packages.nix5
27 files changed, 90 insertions, 102 deletions
diff --git a/pkgs/applications/graphics/paraview/default.nix b/pkgs/applications/graphics/paraview/default.nix
index 6e4738dd07c1..7bbff5499f65 100644
--- a/pkgs/applications/graphics/paraview/default.nix
+++ b/pkgs/applications/graphics/paraview/default.nix
@@ -1,6 +1,6 @@
{ boost, cmake, fetchFromGitHub, ffmpeg, qtbase, qtx11extras,
qttools, qtxmlpatterns, qtsvg, gdal, gfortran, libXt, makeWrapper,
- mkDerivation, ninja, openmpi, python3, lib, stdenv, tbb, libGLU, libGL }:
+ mkDerivation, ninja, mpi, python3, lib, stdenv, tbb, libGLU, libGL }:
mkDerivation rec {
pname = "paraview";
@@ -65,7 +65,7 @@ mkDerivation rec {
buildInputs = [
libGLU libGL
libXt
- openmpi
+ mpi
tbb
boost
ffmpeg
diff --git a/pkgs/applications/science/biology/migrate/default.nix b/pkgs/applications/science/biology/migrate/default.nix
index 0e2aa1c1a791..ba55898e4f9d 100644
--- a/pkgs/applications/science/biology/migrate/default.nix
+++ b/pkgs/applications/science/biology/migrate/default.nix
@@ -1,4 +1,4 @@
-{ gccStdenv, fetchurl, zlib, openmpi }:
+{ gccStdenv, fetchurl, zlib, mpi }:
gccStdenv.mkDerivation rec {
version = "3.7.2";
@@ -9,7 +9,7 @@ gccStdenv.mkDerivation rec {
sha256 = "1p2364ffjc56i82snzvjpy6pkf6wvqwvlvlqxliscx2c303fxs8v";
};
- buildInputs = [ zlib openmpi ];
+ buildInputs = [ zlib mpi ];
setSourceRoot = ''sourceRoot=$(echo */src)'';
buildFlags = [ "thread" "mpis" ];
preInstall = "mkdir -p $out/man/man1";
diff --git a/pkgs/applications/science/biology/neuron/default.nix b/pkgs/applications/science/biology/neuron/default.nix
index 154965b15214..7bfef3a82fed 100644
--- a/pkgs/applications/science/biology/neuron/default.nix
+++ b/pkgs/applications/science/biology/neuron/default.nix
@@ -8,7 +8,8 @@
, readline
, which
, python ? null
-, mpi ? null
+, useMpi ? false
+, mpi
, iv
}:
@@ -17,7 +18,8 @@ stdenv.mkDerivation rec {
version = "7.5";
nativeBuildInputs = [ which pkg-config automake autoconf libtool ];
- buildInputs = [ ncurses readline python mpi iv ];
+ buildInputs = [ ncurses readline python iv ]
+ ++ lib.optional useMpi mpi;
src = fetchurl {
url = "https://www.neuron.yale.edu/ftp/neuron/versions/v${version}/nrn-${version}.tar.gz";
@@ -54,7 +56,7 @@ stdenv.mkDerivation rec {
configureFlags = with lib;
[ "--with-readline=${readline}" "--with-iv=${iv}" ]
++ optionals (python != null) [ "--with-nrnpython=${python.interpreter}" ]
- ++ (if mpi != null then ["--with-mpi" "--with-paranrn"]
+ ++ (if useMpi then ["--with-mpi" "--with-paranrn"]
else ["--without-mpi"]);
@@ -84,4 +86,3 @@ stdenv.mkDerivation rec {
platforms = platforms.x86_64 ++ platforms.i686;
};
}
-
diff --git a/pkgs/applications/science/biology/raxml/default.nix b/pkgs/applications/science/biology/raxml/default.nix
index 4f9b5aca1b2d..6e747e318f57 100644
--- a/pkgs/applications/science/biology/raxml/default.nix
+++ b/pkgs/applications/science/biology/raxml/default.nix
@@ -1,7 +1,7 @@
{ lib, stdenv
, fetchFromGitHub
-, pkgs
-, mpi ? false
+, useMpi ? false
+, mpi
}:
stdenv.mkDerivation rec {
@@ -15,16 +15,16 @@ stdenv.mkDerivation rec {
sha256 = "1jqjzhch0rips0vp04prvb8vmc20c5pdmsqn8knadcf91yy859fh";
};
- buildInputs = lib.optionals mpi [ pkgs.openmpi ];
+ buildInputs = lib.optionals useMpi [ mpi ];
# TODO darwin, AVX and AVX2 makefile targets
- buildPhase = if mpi then ''
+ buildPhase = if useMpi then ''
make -f Makefile.MPI.gcc
'' else ''
make -f Makefile.SSE3.PTHREADS.gcc
'';
- installPhase = if mpi then ''
+ installPhase = if useMpi then ''
mkdir -p $out/bin && cp raxmlHPC-MPI $out/bin
'' else ''
mkdir -p $out/bin && cp raxmlHPC-PTHREADS-SSE3 $out/bin
diff --git a/pkgs/applications/science/chemistry/openmolcas/default.nix b/pkgs/applications/science/chemistry/openmolcas/default.nix
index 1297e595b9a8..4bd88456b8f6 100644
--- a/pkgs/applications/science/chemistry/openmolcas/default.nix
+++ b/pkgs/applications/science/chemistry/openmolcas/default.nix
@@ -1,6 +1,6 @@
{ lib, stdenv, fetchFromGitLab, cmake, gfortran, perl
, openblas, hdf5-cpp, python3, texlive
-, armadillo, openmpi, globalarrays, openssh
+, armadillo, mpi, globalarrays, openssh
, makeWrapper, fetchpatch
} :
@@ -33,7 +33,7 @@ in stdenv.mkDerivation {
hdf5-cpp
python
armadillo
- openmpi
+ mpi
globalarrays
openssh
];
diff --git a/pkgs/applications/science/chemistry/quantum-espresso/default.nix b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
index c7b1f9010468..6d70e9f984f6 100644
--- a/pkgs/applications/science/chemistry/quantum-espresso/default.nix
+++ b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
@@ -1,6 +1,7 @@
{ lib, stdenv, fetchurl
, gfortran, fftw, blas, lapack
-, mpi ? null
+, useMpi ? false
+, mpi
}:
stdenv.mkDerivation rec {
@@ -21,9 +22,9 @@ stdenv.mkDerivation rec {
'';
buildInputs = [ fftw blas lapack gfortran ]
- ++ (lib.optionals (mpi != null) [ mpi ]);
+ ++ (lib.optionals useMpi [ mpi ]);
-configureFlags = if (mpi != null) then [ "LD=${mpi}/bin/mpif90" ] else [ "LD=${gfortran}/bin/gfortran" ];
+configureFlags = if useMpi then [ "LD=${mpi}/bin/mpif90" ] else [ "LD=${gfortran}/bin/gfortran" ];
makeFlags = [ "all" ];
diff --git a/pkgs/applications/science/chemistry/siesta/default.nix b/pkgs/applications/science/chemistry/siesta/default.nix
index 0df953f71067..02ff4c1ca440 100644
--- a/pkgs/applications/science/chemistry/siesta/default.nix
+++ b/pkgs/applications/science/chemistry/siesta/default.nix
@@ -1,6 +1,7 @@
{ lib, stdenv, fetchurl
-, gfortran, blas, lapack
-, mpi ? null, scalapack
+, gfortran, blas, lapack, scalapack
+, useMpi ? false
+, mpi
}:
stdenv.mkDerivation {
@@ -17,7 +18,7 @@ stdenv.mkDerivation {
};
buildInputs = [ blas lapack gfortran ]
- ++ (lib.optionals (mpi != null) [ mpi scalapack ]);
+ ++ lib.optionals useMpi [ mpi scalapack ];
enableParallelBuilding = true;
@@ -29,7 +30,7 @@ stdenv.mkDerivation {
cp gfortran.make arch.make
'';
- preBuild = if (mpi != null) then ''
+ preBuild = if useMpi then ''
makeFlagsArray=(
CC="mpicc" FC="mpifort"
FPPFLAGS="-DMPI" MPI_INTERFACE="libmpi_f90.a" MPI_INCLUDE="."
diff --git a/pkgs/applications/science/electronics/openems/default.nix b/pkgs/applications/science/electronics/openems/default.nix
index e1063f8e26cf..64afe3222c2d 100644
--- a/pkgs/applications/science/electronics/openems/default.nix
+++ b/pkgs/applications/science/electronics/openems/default.nix
@@ -11,16 +11,15 @@
, cmake
, octave
, gl2ps
+, mpi
, withQcsxcad ? true
, withMPI ? false
, withHyp2mat ? true
, qcsxcad ? null
-, openmpi ? null
, hyp2mat ? null
}:
assert withQcsxcad -> qcsxcad != null;
-assert withMPI -> openmpi != null;
assert withHyp2mat -> hyp2mat != null;
stdenv.mkDerivation {
@@ -50,7 +49,7 @@ stdenv.mkDerivation {
csxcad
(octave.override { inherit hdf5; }) ]
++ lib.optionals withQcsxcad [ qcsxcad ]
- ++ lib.optionals withMPI [ openmpi ]
+ ++ lib.optionals withMPI [ mpi ]
++ lib.optionals withHyp2mat [ hyp2mat ];
postFixup = ''
diff --git a/pkgs/applications/science/math/cntk/default.nix b/pkgs/applications/science/math/cntk/default.nix
index a348210179e2..e15e2a43d774 100644
--- a/pkgs/applications/science/math/cntk/default.nix
+++ b/pkgs/applications/science/math/cntk/default.nix
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchgit, fetchFromGitHub, cmake
-, openblas, blas, lapack, opencv3, libzip, boost, protobuf, openmpi
+, openblas, blas, lapack, opencv3, libzip, boost, protobuf, mpi
, onebitSGDSupport ? false
, cudaSupport ? false, addOpenGLRunpath, cudatoolkit, nvidia_x11
, cudnnSupport ? cudaSupport, cudnn
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
# Force OpenMPI to use g++ in PATH.
OMPI_CXX = "g++";
- buildInputs = [ openblas opencv3 libzip boost protobuf openmpi ]
+ buildInputs = [ openblas opencv3 libzip boost protobuf mpi ]
++ lib.optional cudaSupport cudatoolkit
++ lib.optional cudnnSupport cudnn;
@@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
"--with-openblas=${openblas}"
"--with-boost=${boost.dev}"
"--with-protobuf=${protobuf}"
- "--with-mpi=${openmpi}"
+ "--with-mpi=${mpi}"
"--cuda=${if cudaSupport then "yes" else "no"}"
# FIXME
"--asgd=no"
diff --git a/pkgs/applications/science/math/getdp/default.nix b/pkgs/applications/science/math/getdp/default.nix
index 915c7e1147f1..39d9c866caef 100644
--- a/pkgs/applications/science/math/getdp/default.nix
+++ b/pkgs/applications/science/math/getdp/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, gfortran, blas, lapack, openmpi, petsc, python3 }:
+{ lib, stdenv, fetchurl, cmake, gfortran, blas, lapack, mpi, petsc, python3 }:
stdenv.mkDerivation rec {
name = "getdp-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ cmake gfortran ];
- buildInputs = [ blas lapack openmpi petsc python3 ];
+ buildInputs = [ blas lapack mpi petsc python3 ];
meta = with lib; {
description = "A General Environment for the Treatment of Discrete Problems";
diff --git a/pkgs/applications/science/math/scotch/default.nix b/pkgs/applications/science/math/scotch/default.nix
index 6f8753ff38ac..b6613f25cbc7 100644
--- a/pkgs/applications/science/math/scotch/default.nix
+++ b/pkgs/applications/science/math/scotch/default.nix
@@ -1,11 +1,11 @@
-{ lib, stdenv, fetchurl, bison, openmpi, flex, zlib}:
+{ lib, stdenv, fetchurl, bison, mpi, flex, zlib}:
stdenv.mkDerivation rec {
version = "6.0.4";
pname = "scotch";
src_name = "scotch_${version}";
- buildInputs = [ bison openmpi flex zlib ];
+ buildInputs = [ bison mpi flex zlib ];
src = fetchurl {
url = "https://gforge.inria.fr/frs/download.php/file/34618/${src_name}.tar.gz";
diff --git a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
index c40faddbbf94..bdec2ccc669f 100644
--- a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
@@ -3,10 +3,10 @@
, cmake
, hwloc
, fftw
-, openmpi
, perl
, singlePrec ? true
, mpiEnabled ? false
+, mpi
, cpuAcceleration ? null
}:
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
buildInputs = [ fftw perl hwloc ]
- ++ (lib.optionals mpiEnabled [ openmpi ]);
+ ++ (lib.optionals mpiEnabled [ mpi ]);
cmakeFlags = [
"-DGMX_SIMD:STRING=${SIMD cpuAcceleration}"
diff --git a/pkgs/applications/science/molecular-dynamics/lammps/default.nix b/pkgs/applications/science/molecular-dynamics/lammps/default.nix
index 123afef03e86..51ce64115ea5 100644
--- a/pkgs/applications/science/molecular-dynamics/lammps/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/lammps/default.nix
@@ -1,6 +1,7 @@
{ lib, stdenv, fetchFromGitHub
, libpng, gzip, fftw, blas, lapack
-, mpi ? null
+, withMPI ? false
+, mpi
}:
let packages = [
"asphere" "body" "class2" "colloid" "compress" "coreshell"
@@ -8,7 +9,6 @@ let packages = [
"opt" "peri" "qeq" "replica" "rigid" "shock" "snap" "srd" "user-reaxc"
];
lammps_includes = "-DLAMMPS_EXCEPTIONS -DLAMMPS_GZIP -DLAMMPS_MEMALIGN=64";
- withMPI = (mpi != null);
in
stdenv.mkDerivation rec {
# LAMMPS has weird versioning converted to ISO 8601 format
diff --git a/pkgs/applications/science/physics/elmerfem/default.nix b/pkgs/applications/science/physics/elmerfem/default.nix
index 6fa25ce66aeb..5033b28bd3b3 100644
--- a/pkgs/applications/science/physics/elmerfem/default.nix
+++ b/pkgs/applications/science/physics/elmerfem/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, git, gfortran, openmpi, blas, liblapack, qt4, qwt6_qt4, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, cmake, git, gfortran, mpi, blas, liblapack, qt4, qwt6_qt4, pkg-config }:
stdenv.mkDerivation rec {
pname = "elmerfem";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "format" ];
nativeBuildInputs = [ cmake pkg-config git ];
- buildInputs = [ gfortran openmpi blas liblapack qt4 qwt6_qt4 ];
+ buildInputs = [ gfortran mpi blas liblapack qt4 qwt6_qt4 ];
preConfigure = ''
patchShebangs ./
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
index 5a2b437d41dc..abff1268bfae 100644
--- a/pkgs/development/libraries/boost/generic.nix
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -14,7 +14,8 @@
, enableNumpy ? false
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
, patches ? []
-, mpi ? null
+, useMpi ? false
+, mpi
, extraB2Args ? []
# Attributes inherit from specific versions
@@ -94,7 +95,7 @@ let
++ optional (variant == "release") "debug-symbols=off"
++ optional (toolset != null) "toolset=${toolset}"
++ optional (!enablePython) "--without-python"
- ++ optional (mpi != null || stdenv.hostPlatform != stdenv.buildPlatform) "--user-config=user-config.jam"
+ ++ optional (useMpi || stdenv.hostPlatform != stdenv.buildPlatform) "--user-config=user-config.jam"
++ optionals (stdenv.hostPlatform.libc == "msvcrt") [
"threadapi=win32"
] ++ extraB2Args
@@ -140,7 +141,7 @@ stdenv.mkDerivation {
substituteInPlace tools/build/src/tools/clang-darwin.jam \
--replace '@rpath/$(<[1]:D=)' "$out/lib/\$(<[1]:D=)";
fi;
- '' + optionalString (mpi != null) ''
+ '' + optionalString useMpi ''
cat << EOF >> user-config.jam
using mpi : ${mpi}/bin/mpiCC ;
EOF
diff --git a/pkgs/development/libraries/globalarrays/default.nix b/pkgs/development/libraries/globalarrays/default.nix
index 049e262bb17b..1f70946cbcec 100644
--- a/pkgs/development/libraries/globalarrays/default.nix
+++ b/pkgs/development/libraries/globalarrays/default.nix
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchpatch, fetchFromGitHub, autoreconfHook
-, blas, gfortran, openssh, openmpi
+, blas, gfortran, openssh, mpi
} :
let
@@ -17,7 +17,7 @@ in stdenv.mkDerivation {
};
nativeBuildInputs = [ autoreconfHook ];
- buildInputs = [ openmpi blas gfortran openssh ];
+ buildInputs = [ mpi blas gfortran openssh ];
preConfigure = ''
configureFlagsArray+=( "--enable-i8" \
diff --git a/pkgs/development/libraries/precice/default.nix b/pkgs/development/libraries/precice/default.nix
index e9e67737d328..10a80ebb91e8 100644
--- a/pkgs/development/libraries/precice/default.nix
+++ b/pkgs/development/libraries/precice/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, gcc, boost, eigen, libxml2, openmpi, python3, petsc }:
+{ lib, stdenv, fetchFromGitHub, cmake, gcc, boost, eigen, libxml2, mpi, python3, petsc }:
stdenv.mkDerivation rec {
pname = "precice";
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = lib.optional stdenv.isDarwin [ "-D_GNU_SOURCE" ];
nativeBuildInputs = [ cmake gcc ];
- buildInputs = [ boost eigen libxml2 openmpi python3 python3.pkgs.numpy ];
+ buildInputs = [ boost eigen libxml2 mpi python3 python3.pkgs.numpy ];
meta = {
description = "preCICE stands for Precise Code Interaction Coupling Environment";
diff --git a/pkgs/development/python-modules/cntk/default.nix b/pkgs/development/python-modules/cntk/default.nix
index ce388bb1d5d2..b1bba8cf1e0f 100644
--- a/pkgs/development/python-modules/cntk/default.nix
+++ b/pkgs/development/python-modules/cntk/default.nix
@@ -3,7 +3,7 @@
, pkgs
, numpy
, scipy
-, openmpi
+, mpi
, enum34
, protobuf
, pip
@@ -17,8 +17,8 @@ in
buildPythonPackage {
inherit (cntk) name version src;
- nativeBuildInputs = [ swig openmpi ];
- buildInputs = [ cntk openmpi ];
+ nativeBuildInputs = [ swig mpi ];
+ buildInputs = [ cntk mpi ];
propagatedBuildInputs = [ numpy scipy enum34 protobuf pip ];
CNTK_LIB_PATH = "${cntk}/lib";
@@ -28,7 +28,7 @@ buildPythonPackage {
postPatch = ''
cd bindings/python
- sed -i 's,"libmpi.so.12","${openmpi}/lib/libmpi.so",g' cntk/train/distributed.py
+ sed -i 's,"libmpi.so.12","${mpi}/lib/libmpi.so",g' cntk/train/distributed.py
# Remove distro and libs checks; they aren't compatible with NixOS and besides we guarantee
# compatibility by providing a package.
diff --git a/pkgs/development/python-modules/pytorch/default.nix b/pkgs/development/python-modules/pytorch/default.nix
index f072972937a9..822586bf190c 100644
--- a/pkgs/development/python-modules/pytorch/default.nix
+++ b/pkgs/development/python-modules/pytorch/default.nix
@@ -1,7 +1,7 @@
{ stdenv, lib, fetchFromGitHub, fetchpatch, buildPythonPackage, python,
cudaSupport ? false, cudatoolkit ? null, cudnn ? null, nccl ? null, magma ? null,
mklDnnSupport ? true, useSystemNccl ? true,
- openMPISupport ? false, openmpi ? null,
+ MPISupport ? false, mpi,
buildDocs ? false,
cudaArchList ? null,
@@ -29,8 +29,6 @@
isPy3k, pythonOlder }:
-assert !openMPISupport || openmpi != null;
-
# assert that everything needed for cuda is present and that the correct cuda versions are used
assert !cudaSupport || cudatoolkit != null;
assert cudnn == null || cudatoolkit != null;
@@ -38,7 +36,7 @@ assert !cudaSupport || (let majorIs = lib.versions.major cudatoolkit.version;
in majorIs == "9" || majorIs == "10" || majorIs == "11");
# confirm that cudatoolkits are sync'd across dependencies
-assert !(openMPISupport && cudaSupport) || openmpi.cudatoolkit == cudatoolkit;
+assert !(MPISupport && cudaSupport) || mpi.cudatoolkit == cudatoolkit;
assert !cudaSupport || magma.cudatoolkit == cudatoolkit;
let
@@ -224,7 +222,7 @@ in buildPythonPackage rec {
typing-extensions
# the following are required for tensorboard support
pillow six future tensorflow-tensorboard protobuf
- ] ++ lib.optionals openMPISupport [ openmpi ]
+ ] ++ lib.optionals MPISupport [ mpi ]
++ lib.optionals (pythonOlder "3.7") [ dataclasses ];
checkInputs = [ hypothesis ninja psutil ];
diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix
index 342a87a6e8d5..9f64a689e2b8 100644
--- a/pkgs/development/python-modules/tensorflow/default.nix
+++ b/pkgs/development/python-modules/tensorflow/default.nix
@@ -11,7 +11,7 @@
# Common deps
, git, pybind11, which, binutils, glibcLocales, cython, perl
# Common libraries
-, jemalloc, openmpi, gast, grpc, sqlite, boringssl, jsoncpp
+, jemalloc, mpi, gast, grpc, sqlite, boringssl, jsoncpp
, curl, snappy, flatbuffers-core, lmdb-core, icu, double-conversion, libpng, libjpeg_turbo, giflib
# Upsteam by default includes cuda support since tensorflow 1.15. We could do
# that in nix as well. It would make some things easier and less confusing, but
@@ -129,7 +129,7 @@ let
buildInputs = [
jemalloc
- openmpi
+ mpi
glibcLocales
git
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index e79504bdaab3..e827c9b807fd 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -237,7 +237,7 @@ let
BayesSAE = [ pkgs.gsl_1 ];
BayesVarSel = [ pkgs.gsl_1 ];
BayesXsrc = [ pkgs.readline.dev pkgs.ncurses ];
- bigGP = [ pkgs.openmpi ];
+ bigGP = [ pkgs.mpi ];
bio3d = [ pkgs.zlib ];
BiocCheck = [ pkgs.which ];
Biostrings = [ pkgs.zlib ];
@@ -284,8 +284,8 @@ let
n1qn1 = [ pkgs.gfortran ];
odbc = [ pkgs.unixODBC ];
pander = [ pkgs.pandoc pkgs.which ];
- pbdMPI = [ pkgs.openmpi ];
- pbdPROF = [ pkgs.openmpi ];
+ pbdMPI = [ pkgs.mpi ];
+ pbdPROF = [ pkgs.mpi ];
pbdZMQ = lib.optionals stdenv.isDarwin [ pkgs.which ];
pdftools = [ pkgs.poppler.dev ];
phytools = [ pkgs.which ];
@@ -309,14 +309,14 @@ let
RGtk2 = [ pkgs.gtk2.dev ];
rhdf5 = [ pkgs.zlib ];
Rhdf5lib = [ pkgs.zlib ];
- Rhpc = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.lzma.dev pkgs.openmpi pkgs.pcre.dev ];
+ Rhpc = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.lzma.dev pkgs.mpi pkgs.pcre.dev ];
Rhtslib = [ pkgs.zlib.dev pkgs.automake pkgs.autoconf pkgs.bzip2.dev pkgs.lzma.dev pkgs.curl.dev ];
rjags = [ pkgs.jags ];
rJava = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.lzma.dev pkgs.pcre.dev pkgs.jdk pkgs.libzip ];
Rlibeemd = [ pkgs.gsl_1 ];
rmatio = [ pkgs.zlib.dev ];
Rmpfr = [ pkgs.gmp pkgs.mpfr.dev ];
- Rmpi = [ pkgs.openmpi ];
+ Rmpi = [ pkgs.mpi ];
RMySQL = [ pkgs.zlib pkgs.libmysqlclient pkgs.openssl.dev ];
RNetCDF = [ pkgs.netcdf pkgs.udunits ];
RODBC = [ pkgs.libiodbc ];
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix b/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
index 310657589141..c3cea53189ba 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
@@ -245,7 +245,7 @@ self: super:
horovod = super.horovod.overridePythonAttrs (
old: {
- propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.openmpi ];
+ propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.mpi ];
}
);
@@ -528,14 +528,14 @@ self: super:
{ }
{
mpi = {
- mpicc = "${pkgs.openmpi.outPath}/bin/mpicc";
+ mpicc = "${pkgs.mpi.outPath}/bin/mpicc";
};
}
);
};
in
{
- propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.openmpi ];
+ propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.mpi ];
enableParallelBuilding = true;
preBuild = ''
ln -sf ${cfg} mpi.cfg
diff --git a/pkgs/tools/misc/hdf5/default.nix b/pkgs/tools/misc/hdf5/default.nix
index 0a5032074c1f..fc7bb635040a 100644
--- a/pkgs/tools/misc/hdf5/default.nix
+++ b/pkgs/tools/misc/hdf5/default.nix
@@ -5,13 +5,14 @@
, gfortran ? null
, zlib ? null
, szip ? null
-, mpi ? null
+, mpiSupport ? false
+, mpi
, enableShared ? !stdenv.hostPlatform.isStatic
}:
# cpp and mpi options are mutually exclusive
# (--enable-unsupported could be used to force the build)
-assert !cpp || mpi == null;
+assert !cpp || !mpiSupport;
let inherit (lib) optional optionals; in
@@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
};
passthru = {
- mpiSupport = (mpi != null);
+ inherit mpiSupport;
inherit mpi;
};
@@ -38,13 +39,13 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = []
++ optional (zlib != null) zlib
- ++ optional (mpi != null) mpi;
+ ++ optional mpiSupport mpi;
configureFlags = []
++ optional cpp "--enable-cxx"
++ optional (gfortran != null) "--enable-fortran"
++ optional (szip != null) "--with-szlib=${szip}"
- ++ optionals (mpi != null) ["--enable-parallel" "CC=${mpi}/bin/mpicc"]
+ ++ optionals mpiSupport ["--enable-parallel" "CC=${mpi}/bin/mpicc"]
++ optional enableShared "--enable-shared";
patches = [
diff --git a/pkgs/tools/misc/hpcg/default.nix b/pkgs/tools/misc/hpcg/default.nix
index 29799641880c..d6896527ad2a 100644
--- a/pkgs/tools/misc/hpcg/default.nix
+++ b/