This is an automated email from the git hooks/post-receive script. pini pushed a commit to branch master in repository hdf5.
commit 418b702a9b9bd2846977146e0c1d41dc504fa49d Author: Gilles Filippini <p...@debian.org> Date: Mon Nov 16 18:03:14 2015 +0100 Soname bump for c++ libs. --- debian/changelog | 2 ++ debian/control | 8 ++--- debian/control.in | 8 ++--- debian/libhdf5-cpp-10.lintian-overrides | 3 -- debian/libhdf5-cpp-11.lintian-overrides | 3 ++ ...bhdf5-cpp-10.symbols => libhdf5-cpp-11.symbols} | 4 +-- ...in => libhdf5-flavor-cpp-soname_cxx.install.in} | 0 debian/make-version-scripts | 7 +++-- debian/process-symbols-files | 9 +++--- debian/rules | 34 +++++++++++++++------- 10 files changed, 47 insertions(+), 31 deletions(-) diff --git a/debian/changelog b/debian/changelog index 6a35bc5..01b4e0c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,8 @@ hdf5 (1.8.16+docs-1) UNRELEASED; urgency=medium * New upstream release. + * Starting with this release, each library has its own soname. Only + the cpp libs' soname was bumped this time. -- Gilles Filippini <p...@debian.org> Mon, 16 Nov 2015 11:03:02 +0100 diff --git a/debian/control b/debian/control index 89ae9f6..d8a55bc 100644 --- a/debian/control +++ b/debian/control @@ -41,7 +41,7 @@ Description: Hierarchical Data Format 5 (HDF5) - Debug package . This package contains debug libraries. -Package: libhdf5-cpp-10 +Package: libhdf5-cpp-11 Section: libs Architecture: any Depends: @@ -57,14 +57,14 @@ Description: Hierarchical Data Format 5 (HDF5) - C++ libraries . This package contains C++ libraries. -Package: libhdf5-cpp-10-dbg +Package: libhdf5-cpp-11-dbg Section: debug Priority: extra Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, - libhdf5-cpp-10 (= ${binary:Version}), libhdf5-10-dbg (= ${binary:Version}) + libhdf5-cpp-11 (= ${binary:Version}), libhdf5-10-dbg (= ${binary:Version}) Multi-Arch: same Description: Hierarchical Data Format 5 (HDF5) - C++ Debug package HDF5 is a file format and library for storing scientific data. @@ -78,7 +78,7 @@ Package: libhdf5-dev Section: libdevel Architecture: any Depends: libhdf5-10 (= ${binary:Version}), zlib1g-dev, libjpeg-dev, - ${misc:Depends}, hdf5-helpers, libhdf5-cpp-10 (= ${binary:Version}) + ${misc:Depends}, hdf5-helpers, libhdf5-cpp-11 (= ${binary:Version}) Suggests: libhdf5-doc Provides: libhdf5-serial-dev Replaces: libhdf5-serial-dev (<< 1.8.12-9~) diff --git a/debian/control.in b/debian/control.in index e1510bb..20f6fc1 100644 --- a/debian/control.in +++ b/debian/control.in @@ -41,7 +41,7 @@ Description: Hierarchical Data Format 5 (HDF5) - Debug package . This package contains debug libraries. -Package: libhdf5-cpp-@SONAME@ +Package: libhdf5-cpp-@SONAME_CXX@ Section: libs Architecture: any Depends: @@ -57,14 +57,14 @@ Description: Hierarchical Data Format 5 (HDF5) - C++ libraries . This package contains C++ libraries. -Package: libhdf5-cpp-@SONAME@-dbg +Package: libhdf5-cpp-@SONAME_CXX@-dbg Section: debug Priority: extra Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, - libhdf5-cpp-@SONAME@ (= ${binary:Version}), libhdf5-@SONAME@-dbg (= ${binary:Version}) + libhdf5-cpp-@SONAME_CXX@ (= ${binary:Version}), libhdf5-@SONAME@-dbg (= ${binary:Version}) Multi-Arch: same Description: Hierarchical Data Format 5 (HDF5) - C++ Debug package HDF5 is a file format and library for storing scientific data. @@ -78,7 +78,7 @@ Package: libhdf5-dev Section: libdevel Architecture: any Depends: libhdf5-@SONAME@ (= ${binary:Version}), zlib1g-dev, libjpeg-dev, - ${misc:Depends}, hdf5-helpers, libhdf5-cpp-@SONAME@ (= ${binary:Version}) + ${misc:Depends}, hdf5-helpers, libhdf5-cpp-@SONAME_CXX@ (= ${binary:Version}) Suggests: libhdf5-doc Provides: libhdf5-serial-dev Replaces: libhdf5-serial-dev (<< 1.8.12-9~) diff --git a/debian/libhdf5-cpp-10.lintian-overrides b/debian/libhdf5-cpp-10.lintian-overrides deleted file mode 100644 index 3d1e9e4..0000000 --- a/debian/libhdf5-cpp-10.lintian-overrides +++ /dev/null @@ -1,3 +0,0 @@ -libhdf5-cpp-10: package-name-doesnt-match-sonames libhdf5-cpp10 libhdf5-hl-cpp10 -# false positive because upstream release is 1.8.15-patch1 -libhdf5-cpp-10: symbols-file-contains-debian-revision on symbol HDF5_CPP_1.8.15.1@HDF5_CPP_1.8.15.1 and 153 others diff --git a/debian/libhdf5-cpp-11.lintian-overrides b/debian/libhdf5-cpp-11.lintian-overrides new file mode 100644 index 0000000..56620a9 --- /dev/null +++ b/debian/libhdf5-cpp-11.lintian-overrides @@ -0,0 +1,3 @@ +libhdf5-cpp-11: package-name-doesnt-match-sonames libhdf5-cpp11 libhdf5-hl-cpp11 +# false positive because upstream release is 1.8.15-patch1 +libhdf5-cpp-11: symbols-file-contains-debian-revision on symbol HDF5_CPP_1.8.15.1@HDF5_CPP_1.8.15.1 and 153 others diff --git a/debian/libhdf5-cpp-10.symbols b/debian/libhdf5-cpp-11.symbols similarity index 99% rename from debian/libhdf5-cpp-10.symbols rename to debian/libhdf5-cpp-11.symbols index d5b6c9f..aa76ab6 100644 --- a/debian/libhdf5-cpp-10.symbols +++ b/debian/libhdf5-cpp-11.symbols @@ -1,4 +1,4 @@ -libhdf5_cpp.so.10 libhdf5-cpp-10 #MINVER# +libhdf5_cpp.so.11 libhdf5-cpp-11 #MINVER# (optional|c++)"H5::AbstractDs::AbstractDs()@HDF5_CPP_1.8.9" 1.8.13 (optional|c++)"H5::AbstractDs::AbstractDs(int)@HDF5_CPP_1.8.9" 1.8.13 (optional|c++)"H5::AbstractDs::getArrayType() const@HDF5_CPP_1.8.9" 1.8.13 @@ -1044,7 +1044,7 @@ libhdf5_cpp.so.10 libhdf5-cpp-10 #MINVER# (optional|c++)"vtable for H5::ReferenceException@HDF5_CPP_1.8.9" 1.8.13 (optional|c++)"vtable for H5::StrType@HDF5_CPP_1.8.9" 1.8.13 (optional|c++)"vtable for H5::VarLenType@HDF5_CPP_1.8.9" 1.8.13 -libhdf5_hl_cpp.so.10 libhdf5-cpp-10 #MINVER# +libhdf5_hl_cpp.so.11 libhdf5-cpp-11 #MINVER# (optional|c++)"FL_PacketTable::AppendPacket(void*)@HDF5_CPP_1.8.9" 1.8.13 (optional|c++)"FL_PacketTable::AppendPackets(unsigned long, void*)@HDF5_CPP_1.8.13" 1.8.13 (optional|c++)"FL_PacketTable::FL_PacketTable(int, char*)@HDF5_CPP_1.8.9" 1.8.13 diff --git a/debian/libhdf5-flavor-cpp-soname.install.in b/debian/libhdf5-flavor-cpp-soname_cxx.install.in similarity index 100% rename from debian/libhdf5-flavor-cpp-soname.install.in rename to debian/libhdf5-flavor-cpp-soname_cxx.install.in diff --git a/debian/make-version-scripts b/debian/make-version-scripts index e0becbe..c9d2e72 100755 --- a/debian/make-version-scripts +++ b/debian/make-version-scripts @@ -7,8 +7,9 @@ set -e debian_dir="$(dirname "$(readlink -f "$0")")" cd "$debian_dir" -# 2- Get soname -soname=$(./rules soname) +# 2- Get sonames +soname=$(./rules SONAME) +soname_cxx=$(./rules SONAME_CXX) # 3- Read mangled C++ symbols table and declare tne new table declare -A mangled @@ -83,7 +84,7 @@ function map_symbols_file { rm -f mangled-symbols-table.new map_symbols_file "libhdf5-$soname.symbols" | sed 's/@MAP@/SERIAL/' >map_serial.ver -map_symbols_file "libhdf5-cpp-$soname.symbols" | sed 's/@MAP@/CPP/' >>map_serial.ver +map_symbols_file "libhdf5-cpp-$soname_cxx.symbols" | sed 's/@MAP@/CPP/' >>map_serial.ver map_symbols_file "libhdf5-openmpi-$soname.symbols" | sed 's/@MAP@/MPI/' >map_mpi.ver # 5- Replace the mangled C++ symbols table with the updated one diff --git a/debian/process-symbols-files b/debian/process-symbols-files index 57c8494..bbb689c 100755 --- a/debian/process-symbols-files +++ b/debian/process-symbols-files @@ -6,9 +6,10 @@ set -e debian_dir="$(dirname "$(readlink -f "$0")")" cd "$debian_dir" -# 2- Get version an soname +# 2- Get version and sonames version="$(grep 'HDF5 config.lt' ../configure | awk '{print $3}' | sed 's/-patch/./')" -soname=$(./rules soname) +soname=$(./rules SONAME) +soname_cxx=$(./rules SONAME_CXX) # 3- Unmangle c++ symbols in symbols file # While doing this we keep trac of the mangled symbol in the file @@ -39,7 +40,7 @@ if [ -f mangled-symbols-table ]; then cp mangled-symbols-table mangled-symbols-table.new fi unmangle_symbols_file "libhdf5-$soname.symbols" | sed 's/#MAP#/SERIAL/' >"libhdf5-$soname.symbols.new" -unmangle_symbols_file "libhdf5-cpp-$soname.symbols" | sed 's/#MAP#/CPP/' >"libhdf5-cpp-$soname.symbols.new" +unmangle_symbols_file "libhdf5-cpp-$soname_cxx.symbols" | sed 's/#MAP#/CPP/' >"libhdf5-cpp-$soname_cxx.symbols.new" unmangle_symbols_file "libhdf5-openmpi-$soname.symbols" | sed 's/#MAP#/MPI/' >"libhdf5-openmpi-$soname.symbols.new" unmangle_symbols_file "libhdf5-mpich-$soname.symbols" | sed 's/#MAP#/MPI/' >"libhdf5-mpich-$soname.symbols.new" if [ -f mangled-symbols-table.new ]; then @@ -48,7 +49,7 @@ fi # 4- Sort symbols in symbols file to workaround bug #773718 ./sort-symbols "libhdf5-$soname.symbols.new" >"libhdf5-$soname.symbols" -./sort-symbols "libhdf5-cpp-$soname.symbols.new" >"libhdf5-cpp-$soname.symbols" +./sort-symbols "libhdf5-cpp-$soname_cxx.symbols.new" >"libhdf5-cpp-$soname_cxx.symbols" ./sort-symbols "libhdf5-openmpi-$soname.symbols.new" >"libhdf5-openmpi-$soname.symbols" ./sort-symbols "libhdf5-mpich-$soname.symbols.new" >"libhdf5-mpich-$soname.symbols" diff --git a/debian/rules b/debian/rules index b320a68..bff4ebc 100755 --- a/debian/rules +++ b/debian/rules @@ -15,17 +15,28 @@ include /usr/share/dpkg/buildflags.mk package = libhdf5 pkgversion ?= $(shell dpkg-parsechangelog | awk '/^Version:/ {print $$2}') version ?= $(shell echo $(pkgversion) | sed 's/\([0-9\.]\)\(+docs[0-9]*\)\?-[^-]*$$/\1/') -soname = 10 -# Target used by helper script make-version-scripts -soname: - @echo $(soname) +# Get sonames from config/lt_vers.am +include config/lt_vers.am +INTERFACES := @ _CXX _F _HL _HL_CXX _F _TOOLS +istr = $(subst @,,$(interface)) +$(foreach interface,$(INTERFACES),$(eval \ + SONAME$(istr) := $(shell echo $$(($(LT$(istr)_VERS_INTERFACE) - $(LT$(istr)_VERS_AGE)))))) + +# Informative target +sonames: + @$(foreach interface,$(INTERFACES),echo "SONAME$(istr) = $(SONAME$(istr))" &&) true + +# Targets used by helper script make-version-scripts +SONAM%: interface = $(subst SONAME,,$@) +SONAM%: + @echo $(SONAME$(istr)) major_version = $(shell echo $(version) | cut -d. -f1,2) -serpack = $(package)-$(soname) -sercpppack = $(package)-cpp-$(soname) -openmpipack = $(package)-openmpi-$(soname) -mpichpack = $(package)-mpich-$(soname) +serpack = $(package)-$(SONAME) +sercpppack = $(package)-cpp-$(SONAME_CXX) +openmpipack = $(package)-openmpi-$(SONAME) +mpichpack = $(package)-mpich-$(SONAME) virtpack = $(package)-$(major_version) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) @@ -112,7 +123,7 @@ configure-stamp-debian: debian/control.in # This loop generates helper files from debian/*.*.in templates cd debian && for file in *.*.in; do \ for flavor in serial openmpi mpich; do \ - helper=`basename $$file .in | sed 's/soname/$(soname)/g'` ; \ + helper=`basename $$file .in | sed 's/soname_cxx/$(SONAME_CXX)/g;s/soname/$(SONAME)/g'` ; \ flavorpkgstr="" ; \ flavorlibstr="" ; \ ifmpi="#"; \ @@ -133,7 +144,8 @@ configure-stamp-debian: debian/control.in -e 's/@IFMPI@/'$$ifmpi'/g' \ -e 's/@IFSERIAL@/'$$ifserial'/g' \ -e 's/@MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' \ - -e 's/@SONAME@/$(soname)/g' \ + -e 's/@SONAME_CXX@/$(SONAME_CXX)/g' \ + -e 's/@SONAME@/$(SONAME)/g' \ $$file >$$helper ; \ done ; \ done @@ -223,7 +235,7 @@ clean: -rm -rf debian/build -rm -rf debian/build-openmpi -rm -rf debian/build-mpich - grep -v ^\% debian/control.in | sed -e "s/@SONAME@/$(soname)/g" -e "s/@OMPIARCHS@/$(OMPIARCHS)/" -e "s/@MPICHARCHS@/$(MPICHARCHS)/" -e "s/@MAJOR_VERSION@/$(major_version)/" > debian/control + grep -v ^\% debian/control.in | sed -e "s/@SONAME@/$(SONAME)/g" -e "s/@SONAME_CXX@/$(SONAME_CXX)/g" -e "s/@OMPIARCHS@/$(OMPIARCHS)/" -e "s/@MPICHARCHS@/$(MPICHARCHS)/" -e "s/@MAJOR_VERSION@/$(major_version)/" > debian/control dh_autoreconf_clean rm -f m4/l* -cd debian && rm -f `ls libhdf5-*.install libhdf5-*.shlibs libhdf5-*.doc | grep -v 'libhdf5-doc'` -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/hdf5.git _______________________________________________ Pkg-grass-devel mailing list Pkg-grass-devel@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel