python312Packages.types-aiobotocore: 2.15.2 -> 2.15.2.post3 (#361801)
[NixPkgs.git] / pkgs / by-name / h5 / h5utils / package.nix
blob3c93a3f2a4071e1286e4f57e8cecaccdfbe9c9a9
2   stdenv,
3   fetchurl,
4   lib,
5   hdf5,
6   libpng,
7   libjpeg,
8   hdf4 ? null,
9   libmatheval ? null,
12 stdenv.mkDerivation (finalAttrs: {
13   version = "1.13.2";
14   pname = "h5utils";
16   # fetchurl is used instead of fetchFromGitHub because the git repo version requires
17   # additional tools to build compared to the tarball release; see the README for details.
18   src = fetchurl {
19     url = "https://github.com/stevengj/h5utils/releases/download/${finalAttrs.version}/h5utils-${finalAttrs.version}.tar.gz";
20     hash = "sha256-7qeFWoI1+st8RU5hEDCY5VZY2g3fS23luCqZLl8CQ1E=";
21   };
23   # libdf is an alternative name for libhdf (hdf4)
24   preConfigure = lib.optionalString (hdf4 != null) ''
25     substituteInPlace configure \
26     --replace "-ldf" "-lhdf" \
27   '';
29   preBuild = lib.optionalString hdf5.mpiSupport "export CC=${lib.getBin hdf5.mpi}/mpicc";
31   buildInputs =
32     [
33       hdf5
34       libjpeg
35       libpng
36     ]
37     ++ lib.optional hdf5.mpiSupport hdf5.mpi
38     ++ lib.optional (hdf4 != null) hdf4
39     ++ lib.optional (libmatheval != null) libmatheval;
41   meta = {
42     description = "Set of utilities for visualization and conversion of scientific data in the free, portable HDF5 format";
43     homepage = "https://github.com/stevengj/h5utils";
44     changelog = "https://github.com/NanoComp/h5utils/releases/tag/${finalAttrs.version}";
45     license = with lib.licenses; [
46       mit
47       gpl2Plus
48     ];
49     maintainers = [ lib.maintainers.sfrijters ];
50   };