summary refs log tree commit diff
path: root/pkgs/tools/misc/hdf5
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2023-11-21 16:12:21 +0100
committerAlyssa Ross <hi@alyssa.is>2023-11-21 16:12:48 +0100
commit048a4cd441a59cbf89defb18bb45c9f0b4429b35 (patch)
treef8f5850ff05521ab82d65745894714a8796cbfb6 /pkgs/tools/misc/hdf5
parent030c5028b07afcedce7c5956015c629486cc79d9 (diff)
parent4c2d05dd6435d449a3651a6dd314d9411b5f8146 (diff)
downloadnixpkgs-rootfs.tar
nixpkgs-rootfs.tar.gz
nixpkgs-rootfs.tar.bz2
nixpkgs-rootfs.tar.lz
nixpkgs-rootfs.tar.xz
nixpkgs-rootfs.tar.zst
nixpkgs-rootfs.zip
Rebase onto e4ad989506ec7d71f7302cc3067abd82730a4beb HEAD rootfs
Signed-off-by: Alyssa Ross <hi@alyssa.is>
Diffstat (limited to 'pkgs/tools/misc/hdf5')
-rw-r--r--pkgs/tools/misc/hdf5/default.nix43
-rw-r--r--pkgs/tools/misc/hdf5/hdf5-more-determinism.patch15
2 files changed, 20 insertions, 38 deletions
diff --git a/pkgs/tools/misc/hdf5/default.nix b/pkgs/tools/misc/hdf5/default.nix
index 3c9c6169192..89702cfd1a7 100644
--- a/pkgs/tools/misc/hdf5/default.nix
+++ b/pkgs/tools/misc/hdf5/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchurl
+, cmake
 , removeReferencesTo
 , cppSupport ? false
 , fortranSupport ? false
@@ -26,7 +27,7 @@ assert !cppSupport || !mpiSupport;
 let inherit (lib) optional optionals; in
 
 stdenv.mkDerivation rec {
-  version = "1.14.2";
+  version = "1.14.3";
   pname = "hdf5"
     + lib.optionalString cppSupport "-cpp"
     + lib.optionalString fortranSupport "-fortran"
@@ -34,11 +35,13 @@ stdenv.mkDerivation rec {
     + lib.optionalString threadsafe "-threadsafe";
 
   src = fetchurl {
-    url = let
+    url =
+      let
         majorMinor = lib.versions.majorMinor version;
         majorMinorPatch = with lib.versions; "${major version}.${minor version}.${patch version}";
-      in "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-${majorMinor}/hdf5-${majorMinorPatch}/src/hdf5-${version}.tar.bz2";
-    sha256 = "sha256-6jxeJX7zIq9ed/weUurTrWvzu0rAZIDdF+45ANeiTPs=";
+      in
+      "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-${majorMinor}/hdf5-${majorMinorPatch}/src/hdf5-${version}.tar.bz2";
+    sha256 = "sha256-lCXyJO110SgLtG1vJpI92Tj5BA5+rr9X5m7HNXwI+Rc=";
   };
 
   passthru = {
@@ -57,7 +60,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ removeReferencesTo ]
+  nativeBuildInputs = [ removeReferencesTo cmake ]
     ++ optional fortranSupport fortran;
 
   buildInputs = optional fortranSupport fortran
@@ -67,24 +70,18 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = optional zlibSupport zlib
     ++ optional mpiSupport mpi;
 
-  configureFlags = optional cppSupport "--enable-cxx"
-    ++ optional fortranSupport "--enable-fortran"
-    ++ optional szipSupport "--with-szlib=${szip}"
-    ++ optionals mpiSupport [ "--enable-parallel" "CC=${mpi}/bin/mpicc" ]
-    ++ optional enableShared "--enable-shared"
-    ++ optional javaSupport "--enable-java"
-    ++ optional usev110Api "--with-default-api-version=v110"
-    # hdf5 hl (High Level) library is not considered stable with thread safety and should be disabled.
-    ++ optionals threadsafe [ "--enable-threadsafe" "--disable-hl" ];
-
-  patches = [
-    # Avoid non-determinism in autoconf build system:
-    # - build time
-    # - build user
-    # - uname -a (kernel version)
-    # Can be dropped once/if we switch to cmake.
-    ./hdf5-more-determinism.patch
-  ];
+  cmakeFlags = [
+    "-DHDF5_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake"
+  ] ++ lib.optional stdenv.isDarwin "-DHDF5_BUILD_WITH_INSTALL_NAME=ON"
+    ++ lib.optional cppSupport "-DHDF5_BUILD_CPP_LIB=ON"
+    ++ lib.optional fortranSupport "-DHDF5_BUILD_FORTRAN=ON"
+    ++ lib.optional szipSupport "-DHDF5_ENABLE_SZIP_SUPPORT=ON"
+    ++ lib.optionals mpiSupport [ "-DHDF5_ENABLE_PARALLEL=ON" "CC=${mpi}/bin/mpicc" ]
+    ++ lib.optional enableShared "-DBUILD_SHARED_LIBS=ON"
+    ++ lib.optional javaSupport "-DHDF5_BUILD_JAVA=ON"
+    ++ lib.optional usev110Api "-DDEFAULT_API_VERSION=v110"
+    ++ lib.optionals threadsafe [ "-DDHDF5_ENABLE_THREADSAFE:BOOL=ON" "-DHDF5_BUILD_HL_LIB=OFF" ]
+  ;
 
   postInstall = ''
     find "$out" -type f -exec remove-references-to -t ${stdenv.cc} '{}' +
diff --git a/pkgs/tools/misc/hdf5/hdf5-more-determinism.patch b/pkgs/tools/misc/hdf5/hdf5-more-determinism.patch
deleted file mode 100644
index 9a9bfe24af7..00000000000
--- a/pkgs/tools/misc/hdf5/hdf5-more-determinism.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/src/libhdf5.settings.in b/src/libhdf5.settings.in
-index a4d4af6..70f1909 100644
---- a/src/libhdf5.settings.in
-+++ b/src/libhdf5.settings.in
-@@ -4,10 +4,7 @@
- General Information:
- -------------------
-                    HDF5 Version: @H5_VERSION@
--                  Configured on: @CONFIG_DATE@
--                  Configured by: @CONFIG_USER@
-                     Host system: @host_cpu@-@host_vendor@-@host_os@
--              Uname information: @UNAME_INFO@
-                        Byte sex: @BYTESEX@
-              Installation point: @prefix@
-