nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 python3Packages,
6 autoconf,
7 automake,
8 mpi,
9 nix-update-script,
10}:
11
12stdenv.mkDerivation (finalAttrs: {
13 pname = "hp2p";
14 version = "4.2";
15
16 src = fetchFromGitHub {
17 owner = "cea-hpc";
18 repo = "hp2p";
19 tag = finalAttrs.version;
20 hash = "sha256-KuDf1VhLQRDDY3NZaNaHDVGipLmB8+1K36/W1fKnno0=";
21 };
22
23 enableParallelBuilding = true;
24 nativeBuildInputs = [
25 autoconf
26 automake
27 python3Packages.wrapPython
28 ];
29 buildInputs = [
30 mpi
31 ]
32 ++ (with python3Packages; [
33 python
34 plotly
35 ]);
36 pythonPath = (with python3Packages; [ plotly ]);
37
38 preConfigure = ''
39 patchShebangs autogen.sh
40 ./autogen.sh
41 export CC=mpicc
42 export CXX=mpic++
43 '';
44
45 postInstall = ''
46 wrapPythonPrograms
47 '';
48
49 passthru = {
50 updateScript = nix-update-script { };
51 };
52
53 meta = {
54 description = "MPI based benchmark for network diagnostics";
55 homepage = "https://github.com/cea-hpc/hp2p";
56 changelog = "https://github.com/cea-hpc/hp2p/releases/tag/${finalAttrs.version}";
57 platforms = lib.platforms.unix;
58 license = lib.licenses.cecill-c;
59 maintainers = [ lib.maintainers.bzizou ];
60 mainProgram = "hp2p.exe";
61 badPlatforms = [
62 # hp2p_algo_cpp.cpp:38:10: error: no member named 'random_shuffle' in namespace 'std'
63 lib.systems.inspect.patterns.isDarwin
64 ];
65 };
66})