[hdf5] 23/26: Improve symbols files helpers
Gilles Filippini
pini at debian.org
Sun Jan 24 15:33:18 UTC 2016
This is an automated email from the git hooks/post-receive script.
pini pushed a commit to branch master-1.10
in repository hdf5.
commit 48454c574f6ab84823e72fbd1b28956492621ac1
Author: Gilles Filippini <pini at debian.org>
Date: Sun Jan 24 14:47:49 2016 +0100
Improve symbols files helpers
Symbols from alpha and beta releases are binded to their target release.
New helper debian/update-symbols-files-soname for stage 0: rename and
patch symbols files with their new soname.
---
debian/README.source | 5 +++--
debian/process-symbols-files | 2 +-
debian/rules | 2 +-
debian/update-symbols-files-soname | 15 +++++++++++++++
4 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/debian/README.source b/debian/README.source
index 1ab104a..d3358e9 100644
--- a/debian/README.source
+++ b/debian/README.source
@@ -16,8 +16,9 @@ This is taken care by uscan companion script debian/orig-tar.sh.
About symbols files
-------------------
To update the symbols files on new upstream releases:
-1- Build the package for the new release with symbols files untouched (but
- the soname in case it was bumped)
+0- Rename and update the symbols files with the new sonames. This can be
+ done with the script debian/update-symbols-files-soname
+1- Build the package for the new release
2- Patch the symbols files from the dpkg-gensymbols output in the build log
$ patch -p0 <path_to_build_log
3- Use the debian/process-symbols-files script to unmangle and sort C++
diff --git a/debian/process-symbols-files b/debian/process-symbols-files
index d2033c2..712aae0 100755
--- a/debian/process-symbols-files
+++ b/debian/process-symbols-files
@@ -7,7 +7,7 @@ debian_dir="$(dirname "$(readlink -f "$0")")"
cd "$debian_dir"
# 2- Get version and sonames
-version="$(grep 'HDF5 config.lt' ../configure | awk '{print $3}' | sed 's/-patch/./')"
+version="$(grep 'HDF5 config.lt' ../configure | awk '{print $3}' | sed -r 's/-patch/./;s/-(alpha|beta)[0-9]*//')"
soname=$(cd .. && ./debian/rules SONAME)
soname_cxx=$(cd .. && ./debian/rules SONAME_CXX)
diff --git a/debian/rules b/debian/rules
index 7f123f9..fbac53c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -30,7 +30,7 @@ $(foreach interface,$(INTERFACES),$(eval \
# Informative target
sonames:
- @$(foreach interface,$(INTERFACES),echo "SONAME$(istr) = $(SONAME$(istr))" &&) true
+ @$(foreach interface,$(INTERFACES),echo "SONAME$(istr)=$(SONAME$(istr))" &&) true
# Targets used by helper script make-version-scripts
SONAM%: interface = $(subst SONAME,,$@)
diff --git a/debian/update-symbols-files-soname b/debian/update-symbols-files-soname
new file mode 100755
index 0000000..28bd0d4
--- /dev/null
+++ b/debian/update-symbols-files-soname
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+set -e
+
+eval "$(debian/rules sonames)"
+
+[ -f "debian/libhdf5-$SONAME.symbols" ] || mv debian/libhdf5-[0-9]*.symbols "debian/libhdf5-$SONAME.symbols"
+[ -f "debian/libhdf5-cpp-$SONAME.symbols" ] || mv debian/libhdf5-cpp-[0-9]*.symbols "debian/libhdf5-cpp-$SONAME.symbols"
+[ -f "debian/libhdf5-openmpi-$SONAME.symbols" ] || mv debian/libhdf5-openmpi-[0-9]*.symbols "debian/libhdf5-openmpi-$SONAME.symbols"
+[ -f "debian/libhdf5-mpich-$SONAME.symbols" ] || mv debian/libhdf5-mpich-[0-9]*.symbols "debian/libhdf5-mpich-$SONAME.symbols"
+
+sed -ri '/^lib/{s/([\.-])[0-9]+/\1'"$SONAME"'/g}' "debian/libhdf5-$SONAME.symbols"
+sed -ri '/^lib/{s/([\.-])[0-9]+/\1'"$SONAME_CXX"'/g}' "debian/libhdf5-cpp-$SONAME_CXX.symbols"
+sed -ri '/^lib/{s/([\.-])[0-9]+/\1'"$SONAME"'/g}' "debian/libhdf5-openmpi-$SONAME.symbols"
+sed -ri '/^lib/{s/([\.-])[0-9]+/\1'"$SONAME"'/g}' "debian/libhdf5-mpich-$SONAME.symbols"
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/hdf5.git
More information about the Pkg-grass-devel
mailing list