Gilles Filippini a écrit le 20/06/2026 à 13:47 :
Control: tags -1 + patchHi, Gilles Filippini a écrit le 09/06/2026 à 11:57 :Source: haskell-hdf5 Version: 1.8.15-1 Severity: important Tags: ftbfs Hi, During a test rebuild of HDF5's reverse dependcies against HDF5 2.1.0 currently in experimental, haskell-hdf5 FTBFS with: src/Bindings/HDF5/Datatype.hs:183:13: error: [GHC-88464] Variable not in scope: h5t_decode :: InArray CChar -> IO Bindings.HDF5.Raw.H5I.HId_t Suggested fix: Perhaps use one of these: ‘h5p_decode’ (imported from Bindings.HDF5.Raw.H5P), ‘h5t_decode1’ (imported from Bindings.HDF5.Raw.H5T), ‘h5t_encode’ (imported from Bindings.HDF5.Raw.H5T) | 183 | h5t_decode (InArray buf) | ^^^^^^^^^^ H5Tdecode() was deprecated starting with HDF5 2.0.0. I'm not familiar at all with Haskell so I don't have any clue how to patch haskell-hdf5 so that it builds correctly against HDF5 1.14.6 in unstable and HDF5 2.1.0 in experimental.Please review the attached patch.
Patch updated to fix hkl FTBFS. Best, _g.
diff -Nru haskell-hdf5-1.8.15/debian/changelog haskell-hdf5-1.8.15/debian/changelog --- haskell-hdf5-1.8.15/debian/changelog 2026-01-11 21:19:24.000000000 +0100 +++ haskell-hdf5-1.8.15/debian/changelog 2026-06-20 13:19:39.000000000 +0200 @@ -1,3 +1,10 @@ +haskell-hdf5 (1.8.15-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * HDF5 2.1.0 support (closes: #1139497) + + -- Gilles Filippini <[email protected]> Sat, 20 Jun 2026 13:19:39 +0200 + haskell-hdf5 (1.8.15-1) unstable; urgency=medium * Build using dh-haskell diff -Nru haskell-hdf5-1.8.15/debian/patches/hdf5-2.1.0.patch haskell-hdf5-1.8.15/debian/patches/hdf5-2.1.0.patch --- haskell-hdf5-1.8.15/debian/patches/hdf5-2.1.0.patch 1970-01-01 01:00:00.000000000 +0100 +++ haskell-hdf5-1.8.15/debian/patches/hdf5-2.1.0.patch 2026-06-20 13:19:39.000000000 +0200 @@ -0,0 +1,184 @@ +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5T.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5T.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5T.hsc +@@ -694,7 +694,21 @@ h5t_MIPS_F64 = h5t_IEEE_F64BE + -- or negative on failure. + -- + -- > hid_t H5Tdecode(const void *buf); +-#ccall H5Tdecode, InArray a -> IO <hid_t> ++#if defined(H5Tdecode_vers) ++# ccall H5Tdecode1, InArray a -> IO <hid_t> ++# ccall H5Tdecode2, InArray a -> <size_t> -> IO <hid_t> ++# if H5Tdecode_vers == 1 ++h5t_decode :: InArray a -> IO HId_t ++h5t_decode = h5t_decode1 ++# elif H5Tdecode_vers == 2 ++h5t_decode :: InArray a -> Size_t -> IO HId_t ++h5t_decode = h5t_decode2 ++# else ++# error TODO ++# endif ++#else ++# ccall H5Tdecode, InArray a -> IO <hid_t> ++#endif + + -- > herr_t H5Tflush(hid_t type_id); + #ccall H5Tflush, <hid_t> -> IO <herr_t> +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Core.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5FD/Core.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Core.hsc +@@ -15,15 +15,17 @@ import Bindings.HDF5.Raw.H5I + + import Foreign.Ptr.Conventions + +-#mangle_ident "H5FD_CORE" ++#if defined(H5FD_core_init) ++# mangle_ident "H5FD_CORE" + :: HId_t +-#mangle_ident "H5FD_CORE" ++# mangle_ident "H5FD_CORE" + = unsafePerformIO (#mangle_ident "H5FD_core_init") + + -- |Initialize this driver by registering the driver with the library. + -- + -- > hid_t H5FD_core_init(void);x +-#ccall H5FD_core_init, IO <hid_t> ++# ccall H5FD_core_init, IO <hid_t> ++#endif + + #if H5_VERSION_LE(1,8,18) + -- |Shut down the VFD. +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Family.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5FD/Family.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Family.hsc +@@ -25,15 +25,17 @@ import Bindings.HDF5.Raw.H5 + import Bindings.HDF5.Raw.H5I + import Foreign.Ptr.Conventions + +-#mangle_ident "H5FD_FAMILY" ++#if defined(H5FD_family_init) ++# mangle_ident "H5FD_FAMILY" + :: HId_t +-#mangle_ident "H5FD_FAMILY" ++# mangle_ident "H5FD_FAMILY" + = unsafePerformIO (#mangle_ident "H5FD_family_init") + + -- |Initialize this driver by registering the driver with the library. + -- + -- > hid_t H5FD_family_init(void); +-#ccall H5FD_family_init, IO <hid_t> ++# ccall H5FD_family_init, IO <hid_t> ++#endif + + #if H5_VERSION_LE(1,8,18) + -- |Shut down the VFD. +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Log.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5FD/Log.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Log.hsc +@@ -18,10 +18,12 @@ import System.IO.Unsafe (unsafePerformIO + import Bindings.HDF5.Raw.H5 + import Bindings.HDF5.Raw.H5I + +-#mangle_ident "H5FD_LOG" ++#if defined(H5FD_family_init) ++# mangle_ident "H5FD_LOG" + :: HId_t +-#mangle_ident "H5FD_LOG" ++# mangle_ident "H5FD_LOG" + = unsafePerformIO (#mangle_ident "H5FD_log_init") ++#endif + + -- * Flags for 'h5p_set_fapl_log' + +@@ -62,7 +64,9 @@ import Bindings.HDF5.Raw.H5I + -- |Initialize this driver by registering the driver with the library. + -- + -- > hid_t H5FD_log_init(void); +-#ccall H5FD_log_init, IO <hid_t> ++#if defined(H5FD_family_init) ++# ccall H5FD_log_init, IO <hid_t> ++#endif + + #if H5_VERSION_LE(1,8,18) + -- |Shut down the VFD. +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Multi.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5FD/Multi.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Multi.hsc +@@ -16,9 +16,10 @@ import Bindings.HDF5.Raw.H5I + import Bindings.HDF5.Raw.H5FD + import Foreign.Ptr.Conventions + +-#mangle_ident "H5FD_MULTI" ++#if defined(H5FD_multi_init) ++# mangle_ident "H5FD_MULTI" + :: HId_t +-#mangle_ident "H5FD_MULTI" ++# mangle_ident "H5FD_MULTI" + = unsafePerformIO (#mangle_ident "H5FD_multi_init") + + -- |Initialize this driver by registering the driver with the library. +@@ -27,7 +28,8 @@ import Foreign.Ptr.Conventions + -- returns a negative value. + -- + -- > hid_t H5FD_multi_init(void); +-#ccall H5FD_multi_init, IO <hid_t> ++# ccall H5FD_multi_init, IO <hid_t> ++#endif + + #if H5_VERSION_LE(1,8,18) + -- Shut down the VFD +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Sec2.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5FD/Sec2.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/Sec2.hsc +@@ -15,15 +15,17 @@ import System.IO.Unsafe (unsafePerformIO + import Bindings.HDF5.Raw.H5 + import Bindings.HDF5.Raw.H5I + +-#mangle_ident "H5FD_SEC2" ++#if defined(H5FD_sec2_init) ++# mangle_ident "H5FD_SEC2" + :: HId_t +-#mangle_ident "H5FD_SEC2" ++# mangle_ident "H5FD_SEC2" + = unsafePerformIO (#mangle_ident "H5FD_sec2_init") + + -- |Initialize this driver by registering the driver with the library. + -- + -- > hid_t H5FD_sec2_init(void); +-#ccall H5FD_sec2_init, IO <hid_t> ++# ccall H5FD_sec2_init, IO <hid_t> ++#endif + + #if H5_VERSION_LE(1,8,18) + -- |Shut down the VFD. +Index: haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/StdIO.hsc +=================================================================== +--- haskell-hdf5-1.8.15.orig/src/Bindings/HDF5/Raw/H5FD/StdIO.hsc ++++ haskell-hdf5-1.8.15/src/Bindings/HDF5/Raw/H5FD/StdIO.hsc +@@ -9,15 +9,17 @@ import System.IO.Unsafe (unsafePerformIO + import Bindings.HDF5.Raw.H5 + import Bindings.HDF5.Raw.H5I + +-#mangle_ident "H5FD_STDIO" ++#if defined(H5FD_stdio_init) ++# mangle_ident "H5FD_STDIO" + :: HId_t +-#mangle_ident "H5FD_STDIO" ++# mangle_ident "H5FD_STDIO" + = unsafePerformIO (#mangle_ident "H5FD_stdio_init") + + -- |Initialize this driver by registering the driver with the library. + -- + -- > hid_t H5FD_stdio_init(void); +-#ccall H5FD_stdio_init, IO <hid_t> ++# ccall H5FD_stdio_init, IO <hid_t> ++#endif + + #if H5_VERSION_LE(1,8,18) + diff -Nru haskell-hdf5-1.8.15/debian/patches/series haskell-hdf5-1.8.15/debian/patches/series --- haskell-hdf5-1.8.15/debian/patches/series 2025-02-19 04:45:44.000000000 +0100 +++ haskell-hdf5-1.8.15/debian/patches/series 2026-06-20 13:19:39.000000000 +0200 @@ -1 +1,2 @@ no-rts-n +hdf5-2.1.0.patch
OpenPGP_signature.asc
Description: OpenPGP digital signature

