diff options
Diffstat (limited to 'find-provides.in')
-rwxr-xr-x | find-provides.in | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/find-provides.in b/find-provides.in index 13eed22..23c9296 100755 --- a/find-provides.in +++ b/find-provides.in @@ -5,7 +5,7 @@ filelist=`sed "s/['\"]/\\\&/g"` -solist=$(echo "$filelist" | egrep -v "^/lib/ld\.so|/usr/lib(32|64)?/gcj/" | egrep '(/usr(/X11R6)?)?/lib(32|64)?/.*\.so' | \ +solist=$(echo "$filelist" | egrep -v "^/lib/ld\.so|/usr/lib(64)?/gcj/" | egrep '(/usr(/X11R6)?)?/lib(64)?/.*\.so' | \ xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1) pythonlist= tcllist= @@ -16,7 +16,6 @@ case `uname -m` in alpha*) mark64="" ;; *) mark64="()(64bit)" ;; esac -mark32="()(n32)" # # --- Library sonames and weak symbol versions (from glibc). @@ -25,10 +24,6 @@ for f in $solist; do lib64=`if file -L $f 2>/dev/null | \ grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi` - if [ "$lib64" != "$mark64" ]; then - lib64=`if file -L $f 2>/dev/null | \ - grep "MIPS, N32" >/dev/null; then echo "$mark32"; fi` - fi if [ "$soname" != "" ]; then if [ ! -L $f ]; then echo $soname$lib64 @@ -88,13 +83,10 @@ fi # # --- .so files. -for i in `echo $filelist | tr '[:blank:]' "\n" | egrep '(/usr(/X11R6)?)?/lib(|32|64)(/gcc(-lib)?/.+)?/[^/]+\.so$'`; do +for i in `echo $filelist | tr '[:blank:]' "\n" | egrep '(/usr(/X11R6)?)?/lib(|64)(/gcc(-lib)?/.+)?/[^/]+\.so$'`; do objd=`objdump -p ${i} | grep SONAME` [ -h ${i} -a -n "${objd}" ] && \ lib64=`if file -L $i 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "(64bit)"; fi` && \ - if [ "$lib64" != "(64bit)" ]; then - lib64=`if file -L $i 2>/dev/null | grep "MIPS, N32" >/dev/null; then echo "(n32)"; fi` - fi && \ echo ${objd} | perl -p -e "s/.*SONAME\s+(\S+)\.so.*/devel(\1$lib64)/g" done | sort -u |