34 lines
935 B
Bash
Executable File
34 lines
935 B
Bash
Executable File
#!/bin/bash
|
|
|
|
if [ "$#" != 2 ]; then
|
|
cat<<EOM
|
|
Usage: $(basename $0) OLD_RELEASE NEW_RELEASE
|
|
|
|
Compares corresponding RPM packages produced in OLD_RELASE and NEW_RELEASE.
|
|
The same version strings are assumed.
|
|
EOM
|
|
exit 1;
|
|
fi
|
|
|
|
OLD_RELEASE="$1"
|
|
NEW_RELEASE="$2"
|
|
|
|
function process_dir() {
|
|
for F in $(ls $1/* | sed -r 's/-[0-9].*//' | sort | uniq ); do
|
|
OLD_RPM=$(echo ${F}-[0-9]*-${OLD_RELEASE}.*)
|
|
NEW_RPM=$(echo ${F}-[0-9]*-${NEW_RELEASE}.*)
|
|
|
|
test \( ! -e "$OLD_RPM" \) -a \( ! -e "$NEW_RPM" \) && continue
|
|
if [ ! -e "$OLD_RPM" ]; then echo "+ Package ${F}"; continue; fi
|
|
if [ ! -e "$NEW_RPM" ]; then echo "- Package ${F}"; continue; fi
|
|
|
|
DIFF=$(rpmdiff "$OLD_RPM" "$NEW_RPM" -i S 5 T | \
|
|
grep -vE 'REQUIRES perl = | REQUIRES rpmlib\(|build-id' )
|
|
|
|
test -n "$DIFF" && printf '* %s:\n%s\n' "$F" "$DIFF"
|
|
done
|
|
}
|
|
|
|
process_dir 'x86_64'
|
|
process_dir 'noarch'
|