]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ver_linux: ldd, look for numerical input, not field number
authorAlexander Kapshuk <alexander.kapshuk@gmail.com>
Mon, 12 Oct 2015 18:39:54 +0000 (21:39 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 18 Oct 2015 04:55:26 +0000 (21:55 -0700)
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>
scripts/ver_linux

index 909d039284f82f883180db2b0681a0ceffa8d371..a7d0ecad5ad4d1d604e41ad89ac65b548fee5682 100755 (executable)
@@ -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}'