rpm/scripts/mono-find-provides

43 lines
1.1 KiB
Bash

#!/bin/bash
#
# mono-find-provides
#
# Authors:
# Ben Maurer (bmaurer@ximian.com)
#
# (C) 2005 Novell (http://www.novell.com)
#
# Args: builddir buildroot libdir
IFS=$'\n'
filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/'))
monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
# If monodis is in the package being installed, use that one
# This is to support building mono
build_bindir="$2/usr/bin"
build_libdir="$2$3"
if [ -x $build_bindir/monodis ]; then
monodis="$build_bindir/monodis"
export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
elif [ -x /usr/bin/monodis ]; then
monodis="/usr/bin/monodis"
else
exit 0;
fi
export MONO_SHARED_DIR=$1
for i in "${monolist[@]}"; do
($monodis --assembly $i | awk '
BEGIN { LIBNAME=""; VERSION=""; }
/^Version:/ { VERSION=$2 }
/^Name:/ { LIBNAME=$2 }
END {
if (VERSION && LIBNAME)
print "mono(" LIBNAME ") = " VERSION
}
') 2>/dev/null
done