hpccg: update app and add gitTable
This commit is contained in:
parent
a359cc9d32
commit
fb1d50e9dd
@ -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
|
||||||
'';
|
'';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
9
garlic/apps/hpccg/git-table.nix
Normal file
9
garlic/apps/hpccg/git-table.nix
Normal 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";
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user