diff --git a/bsc/parastation/pscom.nix b/bsc/parastation/pscom.nix new file mode 100644 index 0000000..00434e6 --- /dev/null +++ b/bsc/parastation/pscom.nix @@ -0,0 +1,22 @@ +{ stdenv +, popt +}: + +stdenv.mkDerivation rec { + pname = "pscom"; + version = "5.4.6-1"; + + src = builtins.fetchTarball { + url = "https://github.com/ParaStation/${pname}/archive/${version}.tar.gz"; + sha256 = "1n9ic0j94iy09j287cfpfy0dd2bk17qakf1ml669jkibxbc5fqk8"; + }; + + postPatch = '' + patchShebangs ./ + ''; + + buildInputs = [ popt ]; + preferLocalBuild = true; + + enableParallelBuilding = false; +} diff --git a/bsc/parastation/psmpi.nix b/bsc/parastation/psmpi.nix new file mode 100644 index 0000000..e7950e2 --- /dev/null +++ b/bsc/parastation/psmpi.nix @@ -0,0 +1,33 @@ +{ stdenv +, pscom +, perl +}: + +stdenv.mkDerivation rec { + pname = "psmpi"; + version = "5.4.6-1"; + + src = builtins.fetchTarball { + url = "https://github.com/ParaStation/${pname}/archive/${version}.tar.gz"; + sha256 = "1kr624216fz8pmfgbwdb3ks77pr6zhrssmn16j3pwaq5mkf3i9wc"; + }; + + postPatch = '' + patchShebangs ./ + echo "${version}" > VERSION + ''; + + preferLocalBuild = true; + buildInputs = [ pscom ]; + nativeBuildInputs = [ perl ]; + #makeFlags = [ "V=1" ]; + + configureFlags = [ + "--with-confset=default" + "--with-threading" + "--disable-fortran" + "MPICH2_LDFLAGS=-lpsco" + ]; + + enableParallelBuilding = false; +} diff --git a/default.nix b/default.nix index e003f67..ef392d7 100644 --- a/default.nix +++ b/default.nix @@ -38,6 +38,10 @@ let enableCxx = true; }; + # ParaStation MPI + pscom = callPackage ./bsc/parastation/pscom.nix { }; + psmpi = callPackage ./bsc/parastation/psmpi.nix { }; + # Default Intel MPI version is 2019 (the last one) impi = intel-mpi; intel-mpi = intel-mpi-2019;