From cc1b834fe966d40206d148e1f27f0502463ac69f Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Sat, 6 Aug 2016 19:07:22 +0200 Subject: [PATCH] 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 --- prepare-release | 7 +++++++ 1 file changed, 7 insertions(+) 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 -- 2.45.2