aboutsummaryrefslogtreecommitdiffstats
path: root/find-provides.in
diff options
context:
space:
mode:
Diffstat (limited to 'find-provides.in')
-rwxr-xr-xfind-provides.in110
1 files changed, 2 insertions, 108 deletions
diff --git a/find-provides.in b/find-provides.in
index 1e16d3c..1f95f86 100755
--- a/find-provides.in
+++ b/find-provides.in
@@ -5,51 +5,12 @@
filelist=`sed "s/['\"]/\\\&/g"`
-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=
rubygemlist=$(echo "$filelist"| egrep "\.gemspec$")
-mavenlist=$(echo "$filelist" |egrep '/usr/share/maven-fragments/*')
-osgilist=$(echo "$filelist" |egrep "^(.*\.jar|((/usr/lib(64)|/usr/share).*/MANIFEST.MF))")
# fix parsing output of objdump when localized (mga#7883):
export LC_ALL=C
#
-# --- Alpha does not mark 64bit dependencies
-case `uname -m` in
- alpha*) mark64="" ;;
- *) mark64="()(64bit)" ;;
-esac
-
-#
-# --- Library sonames and weak symbol versions (from glibc).
-for f in $solist; do
- soname=$(objdump -p $f 2>/dev/null | awk '/SONAME/ {print $2}')
-
- lib64=`if file -L $f 2>/dev/null | \
- grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi`
- if [ "$soname" != "" ]; then
- if [ ! -L $f ]; then
- echo $soname$lib64
- objdump -p $f 2>/dev/null | awk '
- BEGIN { START=0 ; }
- /Version definitions:/ { START=1; }
- /^[0-9]/ && (START==1) { print $4; }
- /^$/ { START=0; }
- ' | \
- grep -v $soname | \
- while read symbol ; do
- echo "$soname($symbol)`echo $lib64 | sed 's/()//'`"
- done
- fi
- else
- echo ${f##*/}$lib64
- fi
-done | sort -u
-
-#
# --- If libperl.so is found in buildroot, we provide perlapi-<version>
if [ -n "`echo $filelist | grep -e '/CORE/libperl\.so'`" ]; then
for i in $filelist; do
@@ -67,24 +28,6 @@ if [ -n "`echo $filelist | grep -e '/CORE/libperl\.so'`" ]; then
fi
#
-# --- Perl modules.
-[ -x @RPMVENDORDIR@/perl.prov ] &&
- echo "$filelist" | tr '[:blank:]' \\n | @RPMVENDORDIR@/perl.prov | grep 'perl([[:upper:]]' | sort -u \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/perl.prov failed' >&2 && exit 1
-
-#
-# --- Python modules.
-[ -x @RPMVENDORDIR@/pythoneggs.py -a -n "$filelist" ] &&
- echo "$filelist" | tr '[:blank:]' \\n | @RPMVENDORDIR@/pythoneggs.py --provides | sort -u \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/pythoneggs.py failed' >&2 && exit 1
-
-#
-# --- Tcl modules.
-[ -x @RPMVENDORDIR@/tcl.prov -a -n "$tcllist" ] &&
- echo "$tcllist" | tr '[:blank:]' \\n | @RPMVENDORDIR@/tcl.prov | sort -u \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/tcl.prov failed' >&2 && exit 1
-
-#
# --- Php modules.
[ -x @RPMVENDORDIR@/php.prov ] &&
echo "$filelist" | tr '[:blank:]' \\n | @RPMVENDORDIR@/php.prov | sort -u \
@@ -97,36 +40,13 @@ fi
&& test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/kmod.prov failed' >&2 && exit 1
#
-# --- Pkgconfig deps
-[ -x @RPMLIBDIR@/pkgconfigdeps.sh ] &&
- echo "$filelist" | tr '[:blank:]' \\n | @RPMLIBDIR@/pkgconfigdeps.sh -P | sort -u \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMLIBDIR@/pkgconfigdeps.sh failed' >&2 && exit 1
-
-#
-# --- mimehandler
-[ -x @RPMLIBDIR@/desktop-file.prov ] &&
- echo "$filelist" | tr '[:blank:]' \\n | @RPMLIBDIR@/desktop-file.prov --provides | sort -u \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMLIBDIR@/desktop-file.prov failed' >&2 && exit 1
-
-#
-# --- fonts
-[ -x @RPMLIBDIR@/fontconfig.prov ] &&
- echo "$filelist" | tr '[:blank:]' \\n | @RPMLIBDIR@/fontconfig.prov --provides | sort -u
-
-#
# --- typelib() gobject-introspection bindings
[ -x @RPMVENDORDIR@/gi-find-deps.sh ] &&
echo "$filelist" | tr '[:blank:]' \\n | @RPMVENDORDIR@/gi-find-deps.sh -P | sort -u \
&& test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/gi-find-deps.sh failed' >&2 && exit 1
-if [ -n "$LIBTOOLDEP" ]; then
-#
-# --- libtooldep deps
-[ -x @RPMLIBDIR@/libtooldeps.sh ] &&
- echo "$filelist" | tr '[:blank:]' \\n | @RPMLIBDIR@/libtooldeps.sh -P | sort -u \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/libtooldeps.sh failed' >&2 && exit 1
-
-fi
+[ -x /usr/lib/rpm/rpmdeps -a -n "$filelist" ] &&
+ echo $filelist | tr '[:blank:]' \\n | /usr/lib/rpm/rpmdeps --provides
#
# --- Ruby gems
@@ -144,14 +64,6 @@ for i in `echo $filelist | tr '[:blank:]' "\n" | egrep '(/usr(/X11R6)?)?/lib(|64
done | sort -u
#
-# --- mono provides
-if [ -x /usr/bin/mono-find-provides ]; then
-echo $filelist | tr '[:blank:]' '\n' | /usr/bin/mono-find-provides \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: /usr/bin/mono-find-provides failed' >&2 && exit 1
-fi
-
-
-#
# --- haskell provides
if [ -x /usr/bin/haskell-find-provides ]; then
echo $filelist | tr '[:blank:]' '\n' | /usr/bin/haskell-find-provides \
@@ -168,22 +80,4 @@ fi
echo "$solist" | tr '[:blank:]' \\n | @RPMVENDORDIR@/gstreamer1.0.prov | sort -u \
&& test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMVENDORDIR@/gstreamer1.0.prov failed' >&2 && exit 1
-#
-# --- osgi provides
-if [ -x @RPMLIBDIR@/osgi.prov ];then
- if [ ! -z "$osgilist" ]; then
- echo "$osgilist" | tr '[:blank:]' '\n' | @RPMLIBDIR@/osgi.prov \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMLIBDIR@/osgi.prov failed' >&2 && exit 1
- fi
-fi
-
-#
-# --- maven provides
-if [ -x @RPMLIBDIR@/maven.prov ];then
- if [ ! -z "$mavenlist" ]; then
- echo "$mavenlist" | tr '[:blank:]' '\n' | @RPMLIBDIR@/maven.prov \
- && test ${PIPESTATUS[2]} -ne 0 && echo 'error: @RPMLIBDIR@/maven.prov failed' >&2 && exit 1
- fi
-fi
-
exit 0