4ec165
#!/bin/sh
4ec165
#
4ec165
# Script to install in:
4ec165
# /usr/lib/rpm/redhat/find-provides.d
4ec165
#
4ec165
# Transform GStreamer auto install info into RPM provides
4ec165
#
4ec165
# Author: Bastien Nocera <hadess@hadess.net>
4ec165
# Based on other provides scripts from RPM
4ec165
#
4ec165
4ec165
filelist=`grep -e '.so$' | sed "s/['\"]/\\\&/g"`
4ec165
4ec165
# --- Alpha does not mark 64bit dependencies•
4ec165
case `uname -m` in
4ec165
  alpha*)	mark64="" ;;
4ec165
  *)		mark64="()(64bit)" ;;
4ec165
esac
4ec165
4ec165
solist=$(echo $filelist | grep "libgst" | \
4ec165
	xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1 )
4ec165
4ec165
function getmark()
4ec165
{
4ec165
	lib64=`if file -L $1 2>/dev/null | \
4ec165
		grep "ELF 64-bit" >/dev/null; then echo -n "$mark64"; fi`
4ec165
}
4ec165
4ec165
function libdir()
4ec165
{
4ec165
	buildlibdir=`dirname $1`
4ec165
	buildlibdir=`dirname $buildlibdir`
4ec165
}
4ec165
4ec165
for so in $solist ; do
4ec165
	getmark $so
4ec165
	libdir $so
4ec165
	LD_LIBRARY_PATH=$buildlibdir gst-inspect-1.0 --print-plugin-auto-install-info --rpm $so 2> /dev/null | while read line ; do
4ec165
		echo -n "$line";
4ec165
		echo -n "$lib64"
4ec165
		echo
4ec165
	done
4ec165
done
4ec165