Dear Maintainer,
currently, libhdf5_serial.so compiles the s3 Virtual File Driver (VFD)
support into the library itself, which leads to inflated .so
dependencies: libcurl.so pulls in about 20 other (networking, crypto)
libs -- below is the output from lddtree.
Starting from version 1.13.0, HDF5 should support virtual file drivers
(VFDs) as plugins [1], similar to already existing filtering plugins.
This report suggests to package the S3 VFD as a plugin, if possible,
considering that most HDF5 users won't use s3 and the number of
indirect dependencies is high.
Thank you for considering this option. Your packaging work is
appreciated.
$ lddtree /lib/x86_64-linux-gnu/libhdf5_serial.so.103
libhdf5_serial.so.103 => /lib/x86_64-linux-gnu/libhdf5_serial.so.103 (interpreter => none)
libcrypto.so.3 => /lib/x86_64-linux-gnu/libcrypto.so.3
libcurl.so.4 => /lib/x86_64-linux-gnu/libcurl.so.4
libnghttp2.so.14 => /lib/x86_64-linux-gnu/libnghttp2.so.14
libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0
libunistring.so.2 => /lib/x86_64-linux-gnu/libunistring.so.2
librtmp.so.1 => /lib/x86_64-linux-gnu/librtmp.so.1
libgnutls.so.30 => /lib/x86_64-linux-gnu/libgnutls.so.30
libp11-kit.so.0 => /lib/x86_64-linux-gnu/libp11-kit.so.0
libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8
libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6
ld-linux-x86-64.so.2 => /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
libhogweed.so.6 => /lib/x86_64-linux-gnu/libhogweed.so.6
libnettle.so.8 => /lib/x86_64-linux-gnu/libnettle.so.8
libgmp.so.10 => /lib/x86_64-linux-gnu/libgmp.so.10
libssh.so.4 => /lib/x86_64-linux-gnu/libssh.so.4
libpsl.so.5 => /lib/x86_64-linux-gnu/libpsl.so.5
libssl.so.3 => /lib/x86_64-linux-gnu/libssl.so.3
libgssapi_krb5.so.2 => /lib/x86_64-linux-gnu/libgssapi_krb5.so.2
libkrb5.so.3 => /lib/x86_64-linux-gnu/libkrb5.so.3
libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2
libk5crypto.so.3 => /lib/x86_64-linux-gnu/libk5crypto.so.3
libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2
libkrb5support.so.0 => /lib/x86_64-linux-gnu/libkrb5support.so.0
libldap-2.5.so.0 => /lib/x86_64-linux-gnu/libldap-2.5.so.0
libsasl2.so.2 => /lib/x86_64-linux-gnu/libsasl2.so.2
liblber-2.5.so.0 => /lib/x86_64-linux-gnu/liblber-2.5.so.0
libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1
libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1
libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1
libsz.so.2 => /lib/x86_64-linux-gnu/libsz.so.2
libaec.so.0 => /lib/x86_64-linux-gnu/libaec.so.0
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
[1]
https://www.hdfgroup.org/wp-content/uploads/2021/10/HDF5-VFD-Plugins-HUG.pdf