summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Kapshuk <alexander.kapshuk@gmail.com>2015-10-12 21:39:54 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-10-17 21:55:26 -0700
commit1e5f739c61f669fdd954b1f16674c07bdf5ef8a1 (patch)
tree0b155f9bc2c7cdc51495a5156e1b227651f62891
parentcbb57d10af048d886274129d91f2347d4d48e489 (diff)
ver_linux: ldd, look for numerical input, not field number
Rely on regex to find the version number, rather than rely on numerical input to be found in a particular input field. Proposed implementation also eliminates the necessity to invoke 'head' + 'awk'. The '-v' flag either seems to have been deprecated in some distros, e.g. Gentoo, or is an alias for '--version' in others. The proposed implementation uses the latter flag only. Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rwxr-xr-xscripts/ver_linux8
1 files changed, 6 insertions, 2 deletions
diff --git a/scripts/ver_linux b/scripts/ver_linux
index 909d039284f8..a7d0ecad5ad4 100755
--- a/scripts/ver_linux
+++ b/scripts/ver_linux
@@ -114,8 +114,12 @@ sed '
q
' /proc/self/maps
-ldd -v > /dev/null 2>&1 && ldd -v || ldd --version |head -n 1 | awk \
-'NR==1{print "Dynamic linker (ldd) ", $NF}'
+ldd --version 2>&1 |
+awk '/^ldd/{
+ match($0, /[0-9]+([.]?[0-9]+)+/)
+ printf("Dynamic linker (ldd)\t%s\n",
+ substr($0,RSTART,RLENGTH))
+}'
ls -l /usr/lib/libg++.so /usr/lib/libstdc++.so 2>/dev/null | awk -F. \
'{print "Linux C++ Library " $4"."$5"."$6}'