ifsker: initial version

This commit is contained in:
Rodrigo Arias 2020-12-03 18:49:28 +01:00
parent 266fffdb5f
commit eb4adf9520
2 changed files with 52 additions and 0 deletions

View File

@ -0,0 +1,50 @@
{
stdenv
, mpi
, gfortran
, tampi
, nanos6
, mcxx
}:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "ifsker";
src = builtins.fetchGit {
url = "ssh://git@bscpm02.bsc.es/ksala/ifsker.git";
ref = "master";
};
buildInputs = [ tampi mpi nanos6 mcxx gfortran ];
preferLocalBuild = true;
# Mercurium seems to fail when building with fortran in parallel
enableParallelBuilding = false;
# FIXME: Patch mcxx to use other directory than $HOME for the lock
# files.
preConfigure = ''
export TAMPI_HOME=${tampi}
# $HOME is required for the lock files by mcxx to compile fortran.
# So we use the $TMPDIR to store them.
export HOME=$TMPDIR
'';
makeFlags = [
"-f" "Makefile.gcc"
];
installPhase = ''
mkdir -p $out/bin
cp *.bin $out/bin/
'';
# TODO: Split the app into variants
programPath = "/bin/03.ifsker.mpi.ompss2.tasks.bin";
}

View File

@ -308,6 +308,8 @@ let
variant = "ompss-2";
};
ifsker = callPackage ./garlic/apps/ifsker/default.nix { };
# heat = callPackage ./garlic/apps/heat/default.nix {
# # FIXME: The heat program must be able to compile with gcc9 and newer
# stdenv = self.gcc7Stdenv;