Browse Source

prepare-release: Also search for libraries in CMake locations

With this change, the 'library' command looks for a library libX
in the directories: build/bin, */X, X.

This allows it to find the library when building with the
upcoming CMake backend, which places the libraries in a sub
directory of the build tree with the same name as the source
tree.

For example, if building in 'build/', the apt-pkg library
will be available at 'build/apt-pkg/libapt-pkg.so.5.0'.

In case there are multiple instances of a library,
the newest one will be used.

Gbp-Dch: ignore
debian/1.8.y
Julian Andres Klode 6 years ago
parent
commit
cc1b834fe9
  1. 7
      prepare-release

7
prepare-release

@ -127,7 +127,14 @@ elif [ "$1" = 'post-build' ]; then
elif [ "$1" = 'library' ]; then
librarysymbols() {
local libname=$(echo "${1}" | cut -c 4-)
local buildlib="build/bin/${1}.so.${2}"
for dir in $libname */$libname; do
local new_buildlib="$dir/${1}.so.${2}"
if [ -r "${new_buildlib}" ] && [ ! -e "$buildlib" -o "$new_buildlib" -nt "$buildlib" ]; then
local buildlib="${new_buildlib}"
fi
done
if [ ! -r "$buildlib" ]; then
echo "ERROR: The library ${1} has to be built before symbols can be checked!"
return

Loading…
Cancel
Save