The following commit has been merged in the master branch:
commit b1edd722dec846e7bc5bcbd74c72d64c153393f3
Author: Gilles Filippini <p...@debian.org>
Date:   Sun Dec 8 14:19:19 2013 +0100

    Helper script to check dependencies against C++ API

diff --git a/debian/README.source b/debian/README.source
index a37916b..8d45063 100644
--- a/debian/README.source
+++ b/debian/README.source
@@ -22,9 +22,15 @@ To update the symbols files on new upstream releases:
 2- Patch the symbols files from the dpkg-gensymbols output in the build log
    $ patch -p0 <path_to_build_log
 3- Use the debian/sort-symbols script on the symbol files to unmangle and
-   and sort C++ symbols
+   sort C++ symbols
 4- Rebuild the package and check that no diff are reported by dpkg-gensymbols
 
+There was a non backward-compatible change in the C++ API between releases
+1.8.11 and 1.8.12 with no soname bump. Since there is no packages in sid
+using this C++ library, we don't bother.
+
+The script debian/check-dep-on-hdf5-cpp is used to check these dependencies.
+
 About shared libraries versioning and SONAME
 --------------------------------------------
 Worth reading to get the picture about libtool versioning:
diff --git a/debian/check-dep-on-hdf5-cpp b/debian/check-dep-on-hdf5-cpp
new file mode 100755
index 0000000..86c2c00
--- /dev/null
+++ b/debian/check-dep-on-hdf5-cpp
@@ -0,0 +1,36 @@
+#!/bin/sh
+# Script to list dependencies on HDF5 C++ API
+set -e
+[ -x /usr/bin/aptitude ]
+[ -x /usr/bin/file ]
+
+wkdir=
+cleanup () {
+  if [ -n "$wkdir" ]; then
+    rm -fr "$wkdir"
+  fi
+}
+trap 'cleanup' EXIT TERM ABRT INT
+
+wkdir=$(mktemp -d)
+cd "$wkdir"
+
+for pkg in $(apt-cache rdepends libhdf5-7 | grep -v '^    ' | tail -n +3 | 
sort -u | sed 's/^  //' | grep -v '^libhdf5-'); do
+  /usr/bin/aptitude download $pkg >/dev/null
+done
+for pkgfile in $(ls *.deb); do
+  mkdir root
+  dpkg-deb -x "$pkgfile" root
+  for file in $(find root -type f -print); do
+    if /usr/bin/file "$file" | grep -wq "ELF"; then
+      unset dep
+      dep=$(ldd "$file" | grep 'libhdf5_cpp\.so') || true
+      #dep=$(ldd "$file" | grep 'libhdf5\.so') || true
+      if [ -n "$dep" ]; then
+        echo "$(echo $pkgfile | awk -F'_' '{print $1}'): $dep"
+        break
+      fi
+    fi
+  done
+  rm -fr root
+done

-- 
Hierarchical Data Format 5 (HDF5)

_______________________________________________
Pkg-grass-devel mailing list
Pkg-grass-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel

Reply via email to