40 lines
1.1 KiB
Nix
40 lines
1.1 KiB
Nix
final: prev:
|
|
{
|
|
bsc = prev.bsc.extend (bscFinal: bscPrev: {
|
|
# Set MPICH as default
|
|
mpi = bscFinal.mpich;
|
|
|
|
# Configure the network for MPICH
|
|
mpich = with final; prev.mpich.overrideAttrs (old: {
|
|
buildInput = old.buildInputs ++ [
|
|
libfabric
|
|
pmix
|
|
];
|
|
configureFlags = [
|
|
"--enable-shared"
|
|
"--enable-sharedlib"
|
|
"--with-pm=no"
|
|
"--with-device=ch4:ofi"
|
|
"--with-pmi=pmix"
|
|
"--with-pmix=${final.pmix}"
|
|
"--with-libfabric=${final.libfabric}"
|
|
"--enable-g=log"
|
|
] ++ lib.optionals (lib.versionAtLeast gfortran.version "10") [
|
|
"FFLAGS=-fallow-argument-mismatch" # https://github.com/pmodels/mpich/issues/4300
|
|
"FCFLAGS=-fallow-argument-mismatch"
|
|
];
|
|
});
|
|
});
|
|
|
|
# Update ceph to 18.2.0 until it lands in nixpkgs, see:
|
|
# https://github.com/NixOS/nixpkgs/pull/247849
|
|
inherit (prev.callPackage ./ceph.nix {
|
|
lua = prev.lua5_4;
|
|
fmt = prev.fmt_8;
|
|
}) ceph ceph-client;
|
|
|
|
nix = prev.nix.overrideAttrs (old: {
|
|
patches = old.patches ++ [ ./nix-socket.patch ];
|
|
});
|
|
}
|