SPECS: relup.sh - improved error detection to catch spec parse errors

glen glen at pld-linux.org
Sun Dec 25 12:03:07 CET 2005


Author: glen                         Date: Sun Dec 25 11:03:07 2005 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- improved error detection to catch spec parse errors

---- Files affected:
SPECS:
   relup.sh (1.3 -> 1.4) 

---- Diffs:

================================================================
Index: SPECS/relup.sh
diff -u SPECS/relup.sh:1.3 SPECS/relup.sh:1.4
--- SPECS/relup.sh:1.3	Fri Dec  2 17:08:31 2005
+++ SPECS/relup.sh	Sun Dec 25 12:03:01 2005
@@ -1,22 +1,30 @@
 #!/bin/sh
 # script to run after "rel up" style change.
 # takes Release from spec and creates commit with message
-# groups similiar commits to gether.
+# groups similiar commits together.
 # "- rel $rel"
+# - fails when specfile defines Icon: but the icon is not present in SOURCES
+# TODO
+# - optional message after rel: "- rel 9 (rebuild with foolib)"
 
 set -e
 specfile="$1"
 
 get_dump() {
 	local specfile="$1"
-	rpm --specfile "$specfile" --define 'prep %dump' -q 2>&1
+	if ! out=$(rpm --specfile "$specfile" --define 'prep %dump' -q 2>&1); then
+		echo >&2 "$out"
+		echo >&2 "You need icon files being present in SOURCES."
+		exit 1
+	fi
 }
 
 get_release() {
 	local specfile="$1"
 	rel=$(awk '/^%define.*_rel/{print $NF}' $specfile)
 	if [ -z "$rel" ]; then
-		rel=$(get_dump "$specfile" | awk '/PACKAGE_RELEASE/{print $NF; exit}')
+		dump=$(get_dump "$specfile")
+		rel=$(echo "$dump" | awk '/PACKAGE_RELEASE/{print $NF; exit}')
 	fi
 	echo $rel
 }
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/relup.sh?r1=1.3&r2=1.4&f=u



More information about the pld-cvs-commit mailing list