SVN: toys/tools/cleanbuild/multibuild
sparky
sparky at pld-linux.org
Sat May 15 15:56:57 CEST 2010
Author: sparky
Date: Sat May 15 15:56:56 2010
New Revision: 11465
Modified:
toys/tools/cleanbuild/multibuild
Log:
- option to continue automatically if last build succeeded and there
were no changes
Modified: toys/tools/cleanbuild/multibuild
==============================================================================
--- toys/tools/cleanbuild/multibuild (original)
+++ toys/tools/cleanbuild/multibuild Sat May 15 15:56:56 2010
@@ -2,9 +2,15 @@
b="$(echo -n -e '\033[1m')"
B="$(echo -n -e '\033[22m')"
+r="$(echo -n -e '\033[31m')"
+g="$(echo -n -e '\033[32m')"
c="$(echo -n -e '\033[33m')"
e="$(echo -n -e '\033[0m')"
+ignore() { }
+MULTI_CONTINUE=false
+[ -r .cleanbuildrc ] && . ./.cleanbuildrc
+
[ -d mbuild ] || mkdir mbuild
end_pkg()
@@ -14,9 +20,11 @@
mv mbuild/start.$package mbuild/$result.$package
}
-next_pkg()
+get_pkg()
{
+ list="$1"
package=""
+ [ -r $list ] || return
while read pkg info; do
if [ ! -r mbuild/ok.$pkg ] && [ ! -r mbuild/fail.$pkg ] \
&& [ ! -r mbuild/start.$pkg ]; then
@@ -24,7 +32,17 @@
touch mbuild/start.$package
break
fi
- done < blist
+ done < $list
+}
+
+
+next_pkg()
+{
+ get_pkg blist
+
+ [ -n "$package" ] && return
+
+ get_pkg blist2
if [ -z "$package" ]; then
echo "${c}Nothing to build${e}"
@@ -42,10 +60,26 @@
OLDPWD="$PWD"
cd $HOME/rpm/packages/$package
- cvs -z3 diff -u $package.spec | colordiff
+ DIFF="$(cvs -z3 diff -u $package.spec)"
+ echo "$DIFF" | colordiff
cd $OLDPWD
- echo "$package build finished with exit status $ret"
+ if [ $ret -eq 0 ]; then
+ COLOR="$g"
+ else
+ COLOR="$r"
+ fi
+ echo "$COLOR$package build finished with exit status $ret$e"
+
+ if $MULTI_CONTINUE && [ $ret -eq 0 -a -z "$DIFF" ]; then
+ echo "Nothing changed: continuing\n"
+ ./clean "$@"
+ end_pkg
+ exec $0 "$@"
+ exit
+ fi
+
+ MULTI_CONTINUE=false
while true; do
echo
More information about the pld-cvs-commit
mailing list