hpccg: update app and add gitTable

This commit is contained in:
Rodrigo Arias 2021-04-20 18:02:53 +02:00
parent a359cc9d32
commit fb1d50e9dd
2 changed files with 41 additions and 23 deletions

View File

@ -1,44 +1,53 @@
{ {
stdenv stdenv
, nanos6
, mpi
, mcxx
, tampi
, icc , icc
, mpi ? null
, tampi ? null
, mcxx ? null
, gitBranch ? "garlic/mpi+isend+seq"
, gitCommit ? null
, garlicTools
}: }:
assert !(tampi != null && mcxx == null);
with stdenv.lib;
let
gitSource = garlicTools.fetchGarlicApp {
appName = "hpccg";
inherit gitCommit gitBranch;
gitTable = import ./git-table.nix;
};
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "hpccg"; name = "hpccg";
src = builtins.fetchGit { inherit (gitSource) src gitBranch gitCommit;
url = "ssh://git@bscpm03.bsc.es/mmaronas/HPCCG.git";
ref = "mmaronas-development"; programPath = "/bin/test_HPCCG-mpi.exe";
};
buildInputs = [ buildInputs = [
nanos6
mpi
icc icc
tampi ]
mcxx ++ optional (mpi != null) mpi
]; ++ optional (tampi != null) tampi
++ optional (mcxx != null) mcxx;
# The hpccg app fails to compile in parallel. Makefile must be fixed before. # The hpccg app fails to compile in parallel. Makefile must be fixed before.
enableParallelBuilding = false; enableParallelBuilding = false;
postPatch = '' makeFlags = [
sed -i 's/mpic++/mpiicpc/g' Makefile
sed -i 's/g++/icpc/g' Makefile
mkdir obj
'';
makeFlags = [
"USE_MPI=-DUSING_MPI" "USE_MPI=-DUSING_MPI"
"TAMPI_HOME=${tampi}" ]
]; ++ optional (tampi != null) "TAMPI_HOME=${tampi}";
dontPatchShebangs = true;
installPhase = '' installPhase = ''
echo ${tampi}
mkdir -p $out/bin mkdir -p $out/bin
cp test_HPCCG* $out/bin cp test_HPCCG-mpi.exe $out/bin
''; '';
} }

View File

@ -0,0 +1,9 @@
{
# Auto-generated with garlic-git-table on 2021-04-20 for repo:
# ssh://git@bscpm03.bsc.es/garlic/apps/hpccg.git
"garlic/mpi+isend+omp+fork" = "c84af0480d231961201f2904ee4e3fced9d5f9be";
"garlic/mpi+isend+seq" = "d1b47cd459440700de1b68233ec4fe794343dbd4";
"garlic/tampi+isend+oss+task" = "7238e9be2e4a7b028abc05d40b476462eaa3de6a";
"garlic/tampi+isend+oss+taskfor" = "02ec60f43b8d68d74575ea0563a9029fd441f1f1";
}