Add missing files
This commit is contained in:
parent
08def5a3cb
commit
e394c793b2
42
mono-find-provides
Normal file
42
mono-find-provides
Normal file
@ -0,0 +1,42 @@
|
||||
#!/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[@]}" | egrep "\\.(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
|
86
mono-find-requires
Normal file
86
mono-find-requires
Normal file
@ -0,0 +1,86 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# mono-find-requires
|
||||
#
|
||||
# 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[@]}" | egrep "\\.(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
|
||||
|
||||
REQUIRES=$(
|
||||
for i in "${monolist[@]}"; do
|
||||
($monodis --assemblyref $i | awk '
|
||||
BEGIN { START=0; LIBNAME=""; VERSION=""; }
|
||||
(START==0) && /^[0-9]+: Version=/ {
|
||||
START=1;
|
||||
sub(/Version=/, "", $2);
|
||||
VERSION=$2
|
||||
}
|
||||
|
||||
(START==1) && /^\tName=/ {
|
||||
sub(/Name=/, "", $1);
|
||||
LIBNAME=$1
|
||||
|
||||
print "mono(" LIBNAME ") = " VERSION
|
||||
START=0
|
||||
}
|
||||
') 2> /dev/null
|
||||
done
|
||||
)
|
||||
|
||||
PROVIDES=$(
|
||||
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
|
||||
)
|
||||
#
|
||||
# This is a little magic trick to get all REQUIRES that are not
|
||||
# in PROVIDES. While RPM functions correctly when such deps exist,
|
||||
# they make the metadata a bit bloated.
|
||||
#
|
||||
|
||||
# Filter out dups from both lists
|
||||
REQUIRES=$(echo "$REQUIRES" | sort | uniq)
|
||||
PROVIDES=$(echo "$PROVIDES" | sort | uniq)
|
||||
|
||||
#
|
||||
# Get a list of elements that exist in exactly one of PROVIDES or REQUIRES
|
||||
#
|
||||
UNIQ=$(echo "$PROVIDES
|
||||
$REQUIRES" | sort | uniq -u)
|
||||
|
||||
#
|
||||
# Of those, only chose the ones that are in REQUIRES
|
||||
#
|
||||
echo "$UNIQ
|
||||
$REQUIRES" | sort | uniq -d
|
Loading…
Reference in New Issue
Block a user