Update library symbol searching.
[pkgusr] / usr / bin / library-symbol-search
index b2f7ced..012074d 100755 (executable)
@@ -1,11 +1,11 @@
 #!/bin/bash
 
-# Copyright (C) 2008 - 2014 Steve Youngs
+# Copyright (C) 2008 - 2021 Steve Youngs
 
 # Author:     Steve Youngs <steve@sxemacs.org>
 # Maintainer: Steve Youngs <steve@sxemacs.org>
 # Created:    <2008-03-10>
-# Time-stamp: <Monday Mar  3, 2014 17:26:05 steve>
+# Time-stamp: <Wednesday Jan 20, 2021 14:07:28 steve>
 # Homepage:   N/A
 # Keywords:   utils package-management
 
@@ -73,12 +73,12 @@ fi
 lib_dirs=(/usr/lib /usr/X11R6/lib /lib)
 
 # bastard library directories...
-#lib_dirs=(\
-#      /usr/lib \
-#      /usr/X11R6/lib \
-#      /lib \
-#      /opt/qt/lib \
-#      /opt/kde/lib)
+# lib_dirs=(\
+#      /usr/lib \
+#      /usr/X11R6/lib \
+#      /lib \
+#      /opt/qt/lib \
+#      /opt/kde/lib)
 
 if [ "$1" = "-a" ]; then
     obj_opts="--demangle=gnu-v3 --reloc --syms --debugging"
@@ -93,16 +93,16 @@ fi
 # $1 should now be the symbol (or symbol regexp) to search for
 sym=${1}
 
-all_libs=$(find ${lib_dirs[*]} -name lost+found -prune -o \( -name lib\*.so\* -o -name lib\*.a \) -print)
+all_libs=$(find ${lib_dirs[*]} \( -name deprecated -o -name lost+found \) -prune -o \( -name lib\*.so\* -o -name lib\*.a \) -print)
 
 for lib in ${all_libs} ; do
     unset good_file
     good_file="$(file ${lib}|grep '\(shared object\|ar archive\)' 2>/dev/null)"
     if [ -n "${good_file}" ]; then
        if [ $want_all -eq 1 ]; then
-            objdump ${obj_opts} ${lib}|grep -q -E ${sym} && echo ${lib}
+            objdump ${obj_opts} ${lib} 2>/dev/null|grep -q -E ${sym} && echo ${lib}
        else
-           objdump ${obj_opts} ${lib}|grep -v UND|grep -q -E ${sym} && echo ${lib}
+           objdump ${obj_opts} ${lib} 2>/dev/null|grep -v UND|grep -q -E ${sym} && echo ${lib}
        fi
     fi
 done