Update setversion to work in partially-populated patch directories

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@7903 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep 2007-12-12 15:45:20 +00:00
parent 587ca5148f
commit 91dfcf32b1

View File

@ -4,35 +4,43 @@
VERSION=$1 VERSION=$1
for product in common lite shell perl; do
eval perl -p -i -e "'s/VERSION=.*/VERSION=$1/'" Shorewall-${product}/install.sh
done
for product in common lite; do
eval perl -p -i -e "'s/^VERSION=.*/VERSION=$1/'" Shorewall-${product}/uninstall.sh Shorewall-${product}/fallback.sh
done
case $VERSION in case $VERSION in
*.*.*.*) *.*.*.*)
RELEASE=${VERSION##*.} RELEASE=${VERSION##*.}
RPMVERSION=${VERSION%.*}-${RELEASE} RPMVERSION=${VERSION%.*}-${RELEASE}
SUFFIX="-$RELEASE"
;; ;;
*) *)
RPMVERSION=${VERSION} RPMVERSION=${VERSION}
RELEASE=1 RELEASE=1
SUFFIX=
;; ;;
esac esac
for product in common lite shell perl; do for product in common lite shell perl; do
eval perl -n -i -e "'s/^%define version .*/%define version ${RPMVERSION}/; \ file=Shorewall-${product}${SUFFIX}/install.sh
[ -f $file ] && eval perl -p -i -e "'s/VERSION=.*/VERSION=${VERSION}/'" $file
done
for product in common lite; do
dir=Shorewall-${product}${SUFFIX}
for file in $dir/uninstall.sh $dir/fallback.sh; do
[ -f $file ] && eval perl -p -i -e "'s/^VERSION=.*/VERSION=${VERSION}/'" $file
done
done
for product in common lite shell perl; do
file=Shorewall-${product}${SUFFIX}/shorewall-${product}.spec
[ -f $file ] && eval perl -n -i -e "'s/^%define version .*/%define version ${RPMVERSION}/; \
s/^%define release .*/%define release ${RELEASE}/; \ s/^%define release .*/%define release ${RELEASE}/; \
print \$_; \ print \$_; \
if ( /%changelog/ ) {\ if ( /%changelog/ ) {\
print \"\* $(date +'%a %b %d %Y') Tom Eastep tom\\@shorewall.net\\n\"; \ print \"\* $(date +'%a %b %d %Y') Tom Eastep tom\\@shorewall.net\\n\"; \
print \"- Updated to ${RPMVERSION}-${RELEASE}\\n\"; \ print \"- Updated to ${RPMVERSION}-${RELEASE}\\n\"; \
}'" Shorewall-${product}/shorewall-${product}.spec }'" $file
done done
eval perl -p -i -e "'s/^(\s+)VERSION => .*/\$1VERSION => \"$1\",/'" Shorewall-perl/Shorewall/Config.pm file=Shorewall-perl${SUFFIX}/Shorewall/Config.pm
[ -f $file ] && eval perl -p -i -e "'s/^(\s+)VERSION => .*/\$1VERSION => \"${VERSION}\",/'" $file