Bug#730492: RFH: hdf5
Le 04/12/2013 14:28, Sylvestre Ledru a écrit :
> Adding Julien as C/C because he did most of the work during on the last
> transition.
>
> Le 03/12/2013 14:42, Gilles Filippini a écrit :
>> Sylvestre Ledru a écrit , Le 03/12/2013 12:07:
>>> On 03/12/2013 11:57, Gilles Filippini wrote:
>>>> Gilles Filippini a écrit , Le 01/12/2013 19:06:
>>>> Is that OK for you?
>>> Sounds good. From the results that you can see, do you see a reason to
>>> dump the soname ?
>>
>> I'm afraid you'll have to give me a hint ;) The attached diff file shows:
>> * a few added symbols to the C library
> Not an issue.
>
>> * quite some randomly removed / added symbols from the C++ library
>> * and a move of the main part of the H5::H5Object interface to a new
>> H5::H5Location class.
>>
>> I really don't know whether the removed / moved interfaces are related
>> to actual entry points of the C++ library. Can you tell me?
> So, we don't have any changes in the C library. So, a nice transition
> would be a waste of time.
>
> Last time we checked (which was at least a year ago), we did not have
> library using the HDF5 C++ binding. Maybe that changed since then but if
> it didn't (or just for a couple of library), I would not bother.
>
> Anyway, we might want to create a dedicated library for the C++ binding.
Julien, on IRC, just pointed me the attached patch.
Sylvestre
diff -Nru hdf5-1.8.8/debian/changelog hdf5-1.8.8/debian/changelog
--- hdf5-1.8.8/debian/changelog 2012-03-08 11:09:55.000000000 +0100
+++ hdf5-1.8.8/debian/changelog 2013-10-08 15:27:41.000000000 +0200
@@ -1,3 +1,9 @@
+hdf5 (1.8.8-9+lglb1) UNRELEASED; urgency=low
+
+ * Bring back the c++ libs to a separate package.
+
+ -- Julien Cristau <julien.cristau@logilab.fr> Tue, 08 Oct 2013 15:27:17 +0200
+
hdf5 (1.8.8-9) unstable; urgency=low
* Force the dependency on the serpack for hdf5-tools & hdf5-helpers.
diff -Nru hdf5-1.8.8/debian/control hdf5-1.8.8/debian/control
--- hdf5-1.8.8/debian/control 2012-03-08 11:18:22.000000000 +0100
+++ hdf5-1.8.8/debian/control 2013-10-08 18:11:24.000000000 +0200
@@ -44,11 +44,27 @@
.
This package contains debug libraries.
+Package: libhdf5-7-cpp
+Section: libs
+Priority: extra
+Architecture: any
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends},
+ libhdf5-7 (= ${binary:Version}),
+Description: Hierarchical Data Format 5 (HDF5) - C++ libraries
+ HDF5 is a file format and library for storing scientific data.
+ HDF5 was designed and implemented to address the deficiencies of
+ HDF4.x. It has a more powerful and flexible data model, supports
+ files larger than 2 GB, and supports parallel I/O.
+ .
+ This package contains C++ libraries.
+
Package: libhdf5-dev
Section: libdevel
Architecture: any
Depends: libhdf5-7 (= ${binary:Version}), zlib1g-dev, libjpeg-dev,
- ${misc:Depends}, hdf5-helpers
+ ${misc:Depends}, hdf5-helpers, libhdf5-7-cpp (= ${binary:Version})
Suggests: libhdf5-doc
Provides: libhdf5-serial-dev
Replaces: libhdf5-serial-dev (<< 1.8.8-2)
diff -Nru hdf5-1.8.8/debian/control.in hdf5-1.8.8/debian/control.in
--- hdf5-1.8.8/debian/control.in 2012-03-08 10:33:48.000000000 +0100
+++ hdf5-1.8.8/debian/control.in 2013-10-08 15:30:14.000000000 +0200
@@ -44,11 +44,27 @@
.
This package contains debug libraries.
+Package: libhdf5-@SONAME@-cpp
+Section: libs
+Priority: extra
+Architecture: any
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends},
+ libhdf5-@SONAME@ (= ${binary:Version}),
+Description: Hierarchical Data Format 5 (HDF5) - C++ libraries
+ HDF5 is a file format and library for storing scientific data.
+ HDF5 was designed and implemented to address the deficiencies of
+ HDF4.x. It has a more powerful and flexible data model, supports
+ files larger than 2 GB, and supports parallel I/O.
+ .
+ This package contains C++ libraries.
+
Package: libhdf5-dev
Section: libdevel
Architecture: any
Depends: libhdf5-@SONAME@ (= ${binary:Version}), zlib1g-dev, libjpeg-dev,
- ${misc:Depends}, hdf5-helpers
+ ${misc:Depends}, hdf5-helpers, libhdf5-@SONAME@-cpp (= ${binary:Version})
Suggests: libhdf5-doc
Provides: libhdf5-serial-dev
Replaces: libhdf5-serial-dev (<< 1.8.8-2)
diff -Nru hdf5-1.8.8/debian/libhdf5-7-cpp.install hdf5-1.8.8/debian/libhdf5-7-cpp.install
--- hdf5-1.8.8/debian/libhdf5-7-cpp.install 1970-01-01 01:00:00.000000000 +0100
+++ hdf5-1.8.8/debian/libhdf5-7-cpp.install 2013-10-08 15:22:58.000000000 +0200
@@ -0,0 +1,2 @@
+usr/lib/libhdf5_cpp.so.7*
+usr/lib/libhdf5_hl_cpp.so.7*
diff -Nru hdf5-1.8.8/debian/rules hdf5-1.8.8/debian/rules
--- hdf5-1.8.8/debian/rules 2012-03-08 11:09:08.000000000 +0100
+++ hdf5-1.8.8/debian/rules 2013-10-08 18:06:33.000000000 +0200
@@ -91,7 +91,7 @@
--with-pthread --enable-linux-lfs --enable-unsupported \
--enable-shared --enable-production=$(USE_PROD) \
--disable-sharedlib-rpath --with-zlib --with-default-api-version=v18
-SERIAL_ONLY_FLAGS = --enable-fortran --enable-threadsafe
+SERIAL_ONLY_FLAGS = --enable-fortran --enable-threadsafe --enable-cxx
configure: configure-stamp-debian configure-stamp \
$(configure_stamp_openmpi) configure-stamp-mpich2
@@ -186,8 +186,9 @@
dh_testroot
-mkdir debian/build/tmpinst
$(MAKE) -C debian/build/ install prefix=$(CURDIR)/debian/build/tmpinst/usr
- dh_install -p$(serpack) -p$(package)-dev -phdf5-helpers -phdf5-tools \
+ dh_install -p$(serpack) -p$(package)-dev -phdf5-helpers -phdf5-tools -p$(serpack)-cpp \
--sourcedir=debian/build/tmpinst
+ find debian/$(serpack)/usr/lib -name '*cpp*' -delete
install-openmpi: build-stamp-openmpi
dh_testdir
@@ -235,6 +236,7 @@
dh_strip -phdf5-tools
dh_strip -phdf5-helpers
dh_strip -p$(serpack) --dbg-package=$(serpack)-dbg
+ dh_strip -p$(serpack)-cpp
dh_strip -p$(mpich2pack) --dbg-package=$(mpich2pack)-dbg
ifeq ($(build_openmpi),yes)
dh_strip -p$(openmpipack) --dbg-package=$(openmpipack)-dbg
@@ -246,8 +248,10 @@
endif
dh_makeshlibs -p$(mpich2pack) -V $(mpich2pack)
dh_makeshlibs -p$(serpack) -V "$(serpack) | $(virtpack)"
+ dh_makeshlibs -p$(serpack)-cpp
dh_installdeb $(ARCH_FLAG)
dh_shlibdeps -p$(serpack) -L$(serpack) -ldebian/$(serpack)/usr/lib:debian/build/test/.libs
+ dh_shlibdeps -p$(serpack)-cpp -L$(serpack) -ldebian/$(serpack)/usr/lib
dh_shlibdeps -phdf5-tools -L$(serpack) -ldebian/$(serpack)/usr/lib:debian/build/test/.libs
dh_shlibdeps -phdf5-helpers -L$(serpack) -ldebian/$(serpack)/usr/lib:debian/build/test/.libs
ifeq ($(build_openmpi),yes)
diff -Nru hdf5-1.8.8/debian/shlibs.in hdf5-1.8.8/debian/shlibs.in
--- hdf5-1.8.8/debian/shlibs.in 2012-02-14 13:37:37.000000000 +0100
+++ hdf5-1.8.8/debian/shlibs.in 2013-10-08 16:16:10.000000000 +0200
@@ -1,8 +1,8 @@
-libhdf5_cpp 7 libhdf5-@SONAME@
+libhdf5_cpp 7 libhdf5-@SONAME@-cpp
libhdf5_fortran 7 libhdf5-@SONAME@
libhdf5 7 libhdf5-@SONAME@ | libhdf5-openmpi-@SONAME@ | libhdf5-mpich2-@SONAME@
libh5test 7 libhdf5-@SONAME@ | libhdf5-openmpi-@SONAME@ | libhdf5-mpich2-@SONAME@
libhdf5_hl 7 libhdf5-@SONAME@ | libhdf5-openmpi-@SONAME@ | libhdf5-mpich2-@SONAME@
-libhdf5_hl_cpp 7 libhdf5-@SONAME@ | libhdf5-openmpi-@SONAME@ | libhdf5-mpich2-@SONAME@
+libhdf5_hl_cpp 7 libhdf5-@SONAME@-cpp
libhdf5hl_fortran 7 libhdf5-@SONAME@ | libhdf5-openmpi-@SONAME@ | libhdf5-mpich2-@SONAME@
Reply to: