X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=scripts%2Fmono-find-provides.in;h=5e440ab046bf8a6058aed1214e51a7ecc400234e;hb=22448831bbcc3d170f80ae5e3cc02fccd39ff970;hp=7f677202006328bbaf90c3e5f58c551225fd48a2;hpb=4a2ab0336e97f3591eebbb881a1471d3051946c9;p=mono.git diff --git a/scripts/mono-find-provides.in b/scripts/mono-find-provides.in index 7f677202006..5e440ab046b 100644 --- a/scripts/mono-find-provides.in +++ b/scripts/mono-find-provides.in @@ -12,22 +12,28 @@ IFS=$'\n' filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/')) monolist=($(printf "%s\n" "${filelist[@]}" | egrep "\\.(exe|dll)\$")) -a=`which "$0"` -d=`dirname "$a"` +# Only include files with /gac/ in path +# (Allows packages to contain private assemblies that don't conflict with other packages) +monolist=($(printf "%s\n" "${monolist[@]}" | egrep "/gac/")) +# Disabled... see ChangeLog # Set the prefix, unless it is overriden (used when building mono rpms) -: ${prefix=$d/..} +: ${prefix=@prefix@} -exec_prefix=$d/.. libdir=$prefix/@reloc_libdir@ -bindir=$d +bindir=$prefix/bin -[ -x $bindir/monodis ] || exit 0; -[ -f $libdir/libmono.so ] || exit 0; +# Bail out if monodis or libmono is missing +if [ ! -x $bindir/monodis ] || [ ! -f $libdir/libmono-2.0.so.1 ] ; then + echo "monodis missing or unusable, exiting..." 1>&2 + exit 1 +fi -# set LD_LIBRARY_PATH to ensure that libmono.so is found +# set LD_LIBRARY_PATH to ensure that libmono is found export LD_LIBRARY_PATH=$libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} +# and set MONO_PATH to ensure that mscorlib.dll can be found +export MONO_PATH=$prefix/lib/mono/4.5 for i in "${monolist[@]}"; do ($bindir/monodis --assembly $i | awk ' @@ -35,6 +41,14 @@ for i in "${monolist[@]}"; do /^Version:/ { VERSION=$2 } /^Name:/ { LIBNAME=$2 } END { + if (LIBNAME ~ /^policy/) { + cnt = split(LIBNAME, toks, ".") + VERSION=toks[2] "." toks[3] ".0.0" + LIBNAME="" + for (i=4; i<= cnt; i++) + LIBNAME = (LIBNAME toks[i] ".") + LIBNAME=substr(LIBNAME, 1, length(LIBNAME)-1) + } if (VERSION && LIBNAME) print "mono(" LIBNAME ") = " VERSION }