Browse Source

Benjamin Schieder:


			
			
				rocklinux
			
			
		
Benjamin Schieder 20 years ago
parent
commit
bfdfb280f1
2 changed files with 28 additions and 13 deletions
  1. +20
    -12
      scripts/Create-UpdList
  2. +8
    -1
      scripts/functions

+ 20
- 12
scripts/Create-UpdList

@ -50,38 +50,46 @@ while [ "$1" ] ; do
done
. scripts/parse-config
. scripts/functions
grep '^X' config/$config/packages | cut -f5 -d' ' | \
egrep -vx 'rock-debug|rock-src' | \
while read package ; do
confdir=""
pkg=${package%%=*}
xpkg=${package##*=}
for x in package/* ; do
if [ -d "$x/$package" ] ; then
if [ -d "$x/$pkg" ] ; then
if [ "$confdir" ] ; then confdir=X
else confdir="$x/$package" ; fi
else confdir="$x/$pkg" ; fi
fi
done
if [ -z "$confdir" ] ; then
echo "$package: No such package."
echo "$pkg: No such package."
elif [ "$confdir" = X ] ; then
echo "$package: Package in multiple trees."
elif [ ! -f $root/var/adm/packages/$package ] ; then
echo "$package: Not installed."
echo "$pkg: Package in multiple trees."
elif [ ! -f $root/var/adm/packages/$xpkg ] ; then
echo "$xpkg: Not installed."
else
unset ${!desc_*}
parse_desc $confdir/$pkg.desc
o_ver=$(grep '^Package Name and Version' \
$root/var/adm/packages/$package | cut -f6 -d' ')
n_ver=$(grep '^\[V\] ' $confdir/$package.desc | cut -f2 -d' ')
$root/var/adm/packages/$xpkg | cut -f6 -d' ')
n_ver=${desc_V##*
}
# this is not a typo! desc_V contains all [V] tags newline separated
n_ver="${n_ver% }"
if [ "$o_ver" != "$n_ver" -a "$n_ver" != "0000" ] ; then
echo "$package: New version ($o_ver -> $n_ver)."
echo "$pkg=$xpkg: New version ($o_ver -> $n_ver)."
else
if [ $ignore_chksum = 0 ] ; then
o_ck=$(grep '^ROCK Linux Package Source Checksum' \
$root/var/adm/packages/$package | cut -f6 -d' ')
n_ck=$(md5sum package/*/$package/* 2> /dev/null | \
$root/var/adm/packages/$xpkg | cut -f6 -d' ')
n_ck=$(md5sum package/*/$pkg/* 2> /dev/null | \
grep -v '\.cache$' | md5sum | cut -f1 -d' ')
if [ "$o_ck" != "$n_ck" ] ; then
echo "$package: New source checksum ($n_ck)."
echo "$pkg=$xpkg: New source checksum ($n_ck)."
fi
fi
fi

+ 8
- 1
scripts/functions

@ -350,9 +350,16 @@ postflist_libs() {
# save the tag data in $desc_*.
#
parse_desc() {
parser="$( which descparser )"
[ -z "${parser}" ] && parser="$base/src/descparser"
if [ ! -x "${parser}" ] ; then
mkdir -p $base/src
cc -o $base/src/descparser $base/misc/tools-source/descparser.c
fi
[ ! -x "${parser}" ] && abort "Couldn't find \`descparser'! Please run ./scripts/Build-Tools!"
tag="`grep '^\[' $base/Documentation/Developers/PKG-DESC-FORMAT | \
sed 's, (\*),,; s,\] \[,|,g; s,\[,,; s,\],,;'`"
descfile="$( pkg="$pkg" xpkg="$xpkg" descparser < $1 )"
descfile="$( pkg="$pkg" xpkg="$xpkg" $parser < $1 )"
for tag in $tag ; do
tagdata="`echo "$descfile" | egrep "^\[($tag)\]" | \
cut -f2- -d']' | sed 's,^ ,,'`"

Loading…
Cancel
Save