summaryrefslogtreecommitdiff
path: root/find-libdeps.in
diff options
context:
space:
mode:
authorFlorian Pritz <bluewind@xinu.at>2012-03-04 21:30:26 +0100
committerPierre Schmitz <pierre@archlinux.de>2012-03-04 22:25:22 +0100
commitc5893672a639939b63dc338edc31d952035ff8c2 (patch)
treea915ae1d2f16e4f92f94314f65590f6038e07b14 /find-libdeps.in
parent73d61f43c7627d47d8918f79862ceb61a3172507 (diff)
downloaddevtools-c5893672a639939b63dc338edc31d952035ff8c2.tar.xz
find-libdeps: fix extraction of soname
libperl.so results in soname="libperl.so.so" which is wrong. This returns the correct string: "libperl.so" Fix-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
Diffstat (limited to 'find-libdeps.in')
-rw-r--r--find-libdeps.in3
1 files changed, 2 insertions, 1 deletions
diff --git a/find-libdeps.in b/find-libdeps.in
index a7f2b82..36e2c43 100644
--- a/find-libdeps.in
+++ b/find-libdeps.in
@@ -3,6 +3,7 @@
m4_include(lib/common.sh)
set -e
+shopt -s extglob
IGNORE_INTERNAL=0
@@ -40,7 +41,7 @@ fi
process_sofile() {
# extract the library name: libfoo.so
- soname="${sofile%%\.so\.*}.so"
+ soname="${sofile%.so?(+(.+([0-9])))}".so
# extract the major version: 1
soversion="${sofile##*\.so\.}"
if [[ "$soversion" = "$sofile" ]] && (($IGNORE_INTERNAL)); then