nixpkgs/pkgs/applications/science/misc/simgrid/default.nix

111 lines
3.5 KiB
Nix
Raw Normal View History

2021-01-15 13:21:58 +00:00
{ lib, stdenv, fetchFromGitLab, cmake, perl, python3, boost, valgrind
# Optional requirements
# Lua 5.3 needed and not available now
#, luaSupport ? false, lua5
, fortranSupport ? false, gfortran
, buildDocumentation ? false, transfig, ghostscript, doxygen
, buildJavaBindings ? false, openjdk
Update simgrid 3.19.1 -> 3.20 + parallel tests + enable darwin (#42721) * simgrid: 3.19.1 -> 3.20 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/simgrid/versions. These checks were done: - built on NixOS - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicc passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicxx passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpirun passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/tesh had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid-colorizer passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_update_xml had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_convert_TI_traces passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpimain had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/graphicator passed the binary check. - 6 of 9 passed binary check by having a zero exit code. - 4 of 9 passed binary check by having the new version present in output. - found 3.20 with grep in /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20 - directory tree listing: https://gist.github.com/edefc2f1a2e81412484edc2e45986e03 - du listing: https://gist.github.com/a44f7d57537e93152a8e6c569f8ed1ae * simgrid: 3.19.1 -> 3.20 + add darwin - Fix dependencies to enable build on darwin - Add ctest flag to enable parallel testing * Use simpler parallel testing logic because it is already done in nixpkgs/pkgs/stdenv/generic/setup.sh
2018-08-16 00:54:41 +00:00
, modelCheckingSupport ? false, libunwind, libevent, elfutils # Inside elfutils: libelf and libdw
, debug ? false
, moreTests ? false
}:
2021-01-15 13:21:58 +00:00
with lib;
2018-05-24 08:02:12 +00:00
let
2019-09-08 23:38:31 +00:00
optionOnOff = option: if option then "on" else "off";
in
stdenv.mkDerivation rec {
2019-05-13 19:26:09 +00:00
pname = "simgrid";
2020-12-16 18:22:00 +00:00
version = "3.26";
2019-05-13 19:26:09 +00:00
src = fetchFromGitLab {
domain = "framagit.org";
owner = pname;
repo = pname;
rev = "v${version}";
2020-12-16 18:22:00 +00:00
sha256 = "0kwiggdjqjhjvmwb1m7hb9clvm3xz948fy5ia67dif2pakwad754";
};
Update simgrid 3.19.1 -> 3.20 + parallel tests + enable darwin (#42721) * simgrid: 3.19.1 -> 3.20 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/simgrid/versions. These checks were done: - built on NixOS - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicc passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicxx passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpirun passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/tesh had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid-colorizer passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_update_xml had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_convert_TI_traces passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpimain had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/graphicator passed the binary check. - 6 of 9 passed binary check by having a zero exit code. - 4 of 9 passed binary check by having the new version present in output. - found 3.20 with grep in /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20 - directory tree listing: https://gist.github.com/edefc2f1a2e81412484edc2e45986e03 - du listing: https://gist.github.com/a44f7d57537e93152a8e6c569f8ed1ae * simgrid: 3.19.1 -> 3.20 + add darwin - Fix dependencies to enable build on darwin - Add ctest flag to enable parallel testing * Use simpler parallel testing logic because it is already done in nixpkgs/pkgs/stdenv/generic/setup.sh
2018-08-16 00:54:41 +00:00
nativeBuildInputs = [ cmake perl python3 boost valgrind ]
2018-05-24 08:02:12 +00:00
++ optionals fortranSupport [ gfortran ]
++ optionals buildJavaBindings [ openjdk ]
++ optionals buildDocumentation [ transfig ghostscript doxygen ]
Update simgrid 3.19.1 -> 3.20 + parallel tests + enable darwin (#42721) * simgrid: 3.19.1 -> 3.20 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/simgrid/versions. These checks were done: - built on NixOS - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicc passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicxx passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpirun passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/tesh had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid-colorizer passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_update_xml had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_convert_TI_traces passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpimain had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/graphicator passed the binary check. - 6 of 9 passed binary check by having a zero exit code. - 4 of 9 passed binary check by having the new version present in output. - found 3.20 with grep in /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20 - directory tree listing: https://gist.github.com/edefc2f1a2e81412484edc2e45986e03 - du listing: https://gist.github.com/a44f7d57537e93152a8e6c569f8ed1ae * simgrid: 3.19.1 -> 3.20 + add darwin - Fix dependencies to enable build on darwin - Add ctest flag to enable parallel testing * Use simpler parallel testing logic because it is already done in nixpkgs/pkgs/stdenv/generic/setup.sh
2018-08-16 00:54:41 +00:00
++ optionals modelCheckingSupport [ libunwind libevent elfutils ];
#buildInputs = optional luaSupport lua5;
2018-05-24 08:02:12 +00:00
# Make it so that libsimgrid.so will be found when running programs from
# the build dir.
preConfigure = ''
export LD_LIBRARY_PATH="$PWD/build/lib"
2018-05-24 08:02:12 +00:00
'';
# Release mode is not supported in SimGrid
cmakeBuildType = "Debug";
# Disable/Enable functionality
# Note: those packages are not packaged in Nixpkgs yet so some options
# are disabled:
# - papi: for enable_smpi_papi
# - ns3: for enable_ns3
# - lua53: for enable_lua
#
# For more information see:
# https://simgrid.org/doc/3.22/Installing_SimGrid.html#simgrid-compilation-options)
2019-10-29 22:21:22 +00:00
cmakeFlags = [
"-Denable_documentation=${optionOnOff buildDocumentation}"
"-Denable_java=${optionOnOff buildJavaBindings}"
"-Denable_fortran=${optionOnOff fortranSupport}"
"-Denable_model-checking=${optionOnOff modelCheckingSupport}"
"-Denable_ns3=off"
"-Denable_lua=off"
"-Denable_lib_in_jar=off"
"-Denable_maintainer_mode=off"
"-Denable_mallocators=on"
"-Denable_debug=on"
"-Denable_smpi=on"
"-Denable_smpi_ISP_testsuite=${optionOnOff moreTests}"
"-Denable_smpi_MPICH3_testsuite=${optionOnOff moreTests}"
"-Denable_compile_warnings=${optionOnOff debug}"
"-Denable_compile_optimizations=${optionOnOff (!debug)}"
"-Denable_lto=${optionOnOff (!debug)}"
# "-Denable_lua=${optionOnOff luaSupport}"
# "-Denable_smpi_papi=${optionOnOff moreTests}"
];
2019-10-29 22:21:22 +00:00
makeFlags = optional debug "VERBOSE=1";
2018-05-24 08:02:12 +00:00
# Some Perl scripts are called to generate test during build which
# is before the fixupPhase, so do this manualy here:
preBuild = ''
patchShebangs ..
'';
doCheck = true;
Update simgrid 3.19.1 -> 3.20 + parallel tests + enable darwin (#42721) * simgrid: 3.19.1 -> 3.20 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/simgrid/versions. These checks were done: - built on NixOS - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicc passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicxx passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpirun passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/tesh had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid-colorizer passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_update_xml had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_convert_TI_traces passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpimain had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/graphicator passed the binary check. - 6 of 9 passed binary check by having a zero exit code. - 4 of 9 passed binary check by having the new version present in output. - found 3.20 with grep in /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20 - directory tree listing: https://gist.github.com/edefc2f1a2e81412484edc2e45986e03 - du listing: https://gist.github.com/a44f7d57537e93152a8e6c569f8ed1ae * simgrid: 3.19.1 -> 3.20 + add darwin - Fix dependencies to enable build on darwin - Add ctest flag to enable parallel testing * Use simpler parallel testing logic because it is already done in nixpkgs/pkgs/stdenv/generic/setup.sh
2018-08-16 00:54:41 +00:00
# Prevent the execution of tests known to fail.
preCheck = ''
cat <<EOW >CTestCustom.cmake
SET(CTEST_CUSTOM_TESTS_IGNORE smpi-replay-multiple)
EOW
2018-05-24 08:02:12 +00:00
'';
Update simgrid 3.19.1 -> 3.20 + parallel tests + enable darwin (#42721) * simgrid: 3.19.1 -> 3.20 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/simgrid/versions. These checks were done: - built on NixOS - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicc passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpicxx passed the binary check. - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpirun passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/tesh had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid-colorizer passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_update_xml had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/simgrid_convert_TI_traces passed the binary check. - Warning: no invocation of /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/smpimain had a zero exit code or showed the expected version - /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20/bin/graphicator passed the binary check. - 6 of 9 passed binary check by having a zero exit code. - 4 of 9 passed binary check by having the new version present in output. - found 3.20 with grep in /nix/store/cvyi6hvgc9rvgrnp7c028xrlzbl7jzb9-simgrid-3.20 - directory tree listing: https://gist.github.com/edefc2f1a2e81412484edc2e45986e03 - du listing: https://gist.github.com/a44f7d57537e93152a8e6c569f8ed1ae * simgrid: 3.19.1 -> 3.20 + add darwin - Fix dependencies to enable build on darwin - Add ctest flag to enable parallel testing * Use simpler parallel testing logic because it is already done in nixpkgs/pkgs/stdenv/generic/setup.sh
2018-08-16 00:54:41 +00:00
2018-05-24 08:02:12 +00:00
meta = {
description = "Framework for the simulation of distributed applications";
2018-05-24 08:02:12 +00:00
longDescription = ''
SimGrid is a toolkit that provides core functionalities for the
simulation of distributed applications in heterogeneous distributed
environments. The specific goal of the project is to facilitate
research in the area of distributed and parallel application
scheduling on distributed computing platforms ranging from simple
network of workstations to Computational Grids.
'';
homepage = "https://simgrid.org/";
2018-05-24 08:02:12 +00:00
license = licenses.lgpl2Plus;
2019-06-30 11:42:54 +00:00
maintainers = with maintainers; [ mickours mpoquet ];
2018-10-31 19:25:30 +00:00
platforms = ["x86_64-linux"];
};
}