Bug#1087776: ncl: FTBFS with HDF5 1.14: too few arguments to function ‘H5Oget_info_by_name3’

Gilles Filippini pini at debian.org
Mon Nov 18 15:38:53 GMT 2024


Source: ncl
Version: 6.6.2.dfsg.1-9
Severity: important
Tags: ftbfs patch

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hi,

Durig a test rebuild against HDF5 1.14 currently in experimental ncl
FTBFS with:

cc -g -O2 -Wno-error=implicit-function-declaration -ffile-prefix-map=/build/ncl-rfsutr/ncl-6.6.2.dfsg.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection   -Wno-error=int-conversion -Wno-error=implicit-function-declaration -I/usr/include/hdf5/serial -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE   -I../../../.././include -I/usr/include/freetype2 -I/usr/include/gdal  -I/usr/include/hdf-eos5 -I/usr/include/hdf -I/usr/include/x86_64-linux-gnu/hdf -I/usr/include/mpi  -DLinux -DMAJOR=6 -DUSE_NETCDF4 -DBuildHDFEOS  -DBuildHDF4  -DBuildHDFEOS5  -DBuildHDF5 -DBuildGRIB2 -D__64BIT__ -DBuildGDAL -DNIO_LIB_ONLY  -DENV_DEFS='{"tmp","TMPDIR",NULL,"/tmp",NULL,			"fontcap","FONTCAP",NULL,"/usr/share/ncarg/fontcaps",NULL,				"graphcap","GRAPHCAP",NULL,"/usr/share/ncarg/graphcaps",NULL,				"root",NULL,NULL,"/usr",NULL,		"usrresfile",NULL,NULL,"~/.hluresfile",NULL,			"gks_output",NULL,NULL,"gmeta",NULL,				"bin",NULL,"root","/usr/bin",NULL,					"lib",NULL,NULL,"/usr/lib/x86_64-linux-gnu/ncarg",NULL,			"include",NULL,"root","/usr/include/ncarg",NULL,				"man",NULL,"root","/usr/share/man",NULL,					"ncarg",NULL,NULL,"/usr/share/ncarg",NULL,					"config",NULL,"ncarg",NULL,NULL,				"data",NULL,"ncarg","/usr/share/ncarg/data",NULL,	"database",NULL,"ncarg","/usr/share/ncarg/database",NULL,				"doc",NULL,"ncarg","/usr/share/doc/libncarg-data",NULL,					"fontcaps",NULL,"ncarg","/usr/share/ncarg/fontcaps",NULL,				"graphcaps",NULL,"ncarg","/usr/share/ncarg/graphcaps",NULL,				"colormaps",NULL,"ncarg","/usr/share/ncarg/colormaps",NULL,				"rangs","NCARG_RANGS","database","/usr/share/rangs",NULL,			"udunits","NCARG_UDUNITS",NULL,"/usr/share/xml/udunits",NULL,			"psadilookup","PSADILOOKUP_PATH",NULL,NULL,NULL,		"examples",NULL,"ncarg","/usr/share/doc/libncarg-dev/examples",NULL,				"hluex",NULL,"ncarg","/usr/share/ncarg/hluex",NULL,					"nclex",NULL,"ncarg","/usr/share/ncarg/nclex",NULL,					"pynglex",NULL,"ncarg",NULL,NULL,				"resfiles",NULL,"ncarg","/usr/share/ncarg/resfiles",NULL,				"tests",NULL,"ncarg","/usr/share/ncarg/tests",NULL,					"tutorial",NULL,"ncarg","/usr/share/doc/libncarg-dev/tutorial",NULL,				"xapp",NULL,"ncarg",NULL,NULL,					"ngwww",NULL,"ncarg","/usr/share/ncarg/ngwww",NULL,		"ngurl",NULL,"ngwww","/usr/share/ncarg/ngwww/ngurl",NULL,					"sysresfile",NULL,"ncarg","/usr/share/ncarg/sysresfile",NULL,			"sysappres",NULL,"ncarg","/usr/share/ncarg/sysappres",NULL,				"grib2_codetables","NIO_GRIB2_CODETABLES","ncarg","/usr/share/ncarg/grib2_codetables",NULL, 		"ftfonts",NULL,"database","/usr/share/fonts/truetype/ncl",NULL,            		NULL}'   -DSYSV -D_POSIX_SOURCE -D_XOPEN_SOURCE -DByteSwapped -DNeedFuncProto  -Wdate-time -D_FORTIFY_SOURCE=2    -c -o h5reader.o h5reader.c
In file included from /usr/include/hdf5/serial/H5public.h:31,
                 from /usr/include/hdf5/serial/hdf5.h:21,
                 from h5data_struct.h:32,
                 from h5reader.c:1:
h5reader.c: In function ‘_NclHDF5check_obj’:
/usr/include/hdf5/serial/H5version.h:947:31: error: too few arguments to function ‘H5Oget_info_by_name3’
  947 |   #define H5Oget_info_by_name H5Oget_info_by_name3
      |                               ^~~~~~~~~~~~~~~~~~~~
h5reader.c:42:14: note: in expansion of macro ‘H5Oget_info_by_name’
   42 |     status = H5Oget_info_by_name(fid, root_name, &oi, H5P_DEFAULT);
      |              ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/hdf5/serial/H5Apublic.h:21,
                 from /usr/include/hdf5/serial/hdf5.h:22:
/usr/include/hdf5/serial/H5Opublic.h:543:15: note: declared here
  543 | H5_DLL herr_t H5Oget_info_by_name3(hid_t loc_id, const char *name, H5O_info2_t *oinfo, unsigned fields,
      |               ^~~~~~~~~~~~~~~~~~~~


Please find attached a patch proposal.

Best,
_g.

- -- System Information:
Debian Release: 12.0
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-26-amd64 (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEoJObzArDE05WtIyR7+hsbH/+z4MFAmc7X4QACgkQ7+hsbH/+
z4McPgf/X25DFCRBxFe+xM5H6B5NsbkuE9fqlgfZ2kKfEHkKuQcU3HYESeBcbSvO
IYIEhAnVL9tCgj0qQV3Dp0FfhuKDwnc8QZQ6kutHWBw5j3eeZdlmsj6tfTR4wSPV
D24VLTW3Hh3wGYDGblpP4Q2IbTZV8bDLWLZfp+feAieFHfpUrXZZYmihdECSPl91
L0EL7JxNDK7rmtEGVucOx1v4SsgyxSNcz10nAflkQ8lr8DgcGinaKmFUmtE1aMHu
2KXvQG1s5k91DKQEYKpi9M6J69RBYBzRkHrP1f2vooFl07LBRBd7d0S2Ow7IFXl+
boboUp023HqrC7wE4+g6aRYj2Gx1Fw==
=yMQ/
-----END PGP SIGNATURE-----
-------------- next part --------------
diff -Nru ncl-6.6.2.dfsg.1/debian/changelog ncl-6.6.2.dfsg.1/debian/changelog
--- ncl-6.6.2.dfsg.1/debian/changelog	2024-11-07 15:45:42.000000000 +0100
+++ ncl-6.6.2.dfsg.1/debian/changelog	2024-11-18 11:26:56.000000000 +0100
@@ -1,3 +1,10 @@
+ncl (6.6.2.dfsg.1-9.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Add -DH5_USE_110_API to CPPFLAGS to support HDF5 1.14
+
+ -- Gilles Filippini <pini at debian.org>  Mon, 18 Nov 2024 11:26:56 +0100
+
 ncl (6.6.2.dfsg.1-9) unstable; urgency=medium
 
   * More work on gcc14.patch; still incomplete
diff -Nru ncl-6.6.2.dfsg.1/debian/rules ncl-6.6.2.dfsg.1/debian/rules
--- ncl-6.6.2.dfsg.1/debian/rules	2024-11-07 15:45:42.000000000 +0100
+++ ncl-6.6.2.dfsg.1/debian/rules	2024-11-18 11:26:56.000000000 +0100
@@ -62,6 +62,9 @@
 
 export LD_LIBRARY_PATH=$(CURDIR)/shared:$(LIBDIR)/fortran/$(F77):$(LIBDIR)/libfakeroot
 
+# Force HDF5 1.10 API to support building against HDF5 1.14
+export DEB_CPPFLAGS_MAINT_APPEND = -DH5_USE_110_API
+
 # We built it twice: first shared, to get the shared libraries (with -fpic -fPIC)
 # then static, for execution speed.
 


More information about the debian-science-maintainers mailing list