summaryrefslogtreecommitdiff
path: root/prepare-release
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2016-08-06 19:07:22 +0200
committerJulian Andres Klode <jak@debian.org>2016-08-06 22:35:54 +0200
commitcc1b834fe966d40206d148e1f27f0502463ac69f (patch)
treee0b0b861c76431b71acb4ef96ae8abae5b7a6dc8 /prepare-release
parent2b54bc754edb937a5c9bfe6e0e62c2787d760976 (diff)
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
Diffstat (limited to 'prepare-release')
-rwxr-xr-xprepare-release7
1 files changed, 7 insertions, 0 deletions
diff --git a/prepare-release b/prepare-release
index 18fd3af94..77d8580d9 100755
--- a/prepare-release
+++ b/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