SVN: toys/tools/cleanbuild/multibuild

sparky sparky at pld-linux.org
Tue Feb 23 14:50:20 CET 2010


Author: sparky
Date: Tue Feb 23 14:50:20 2010
New Revision: 11162

Modified:
   toys/tools/cleanbuild/multibuild
Log:
- much more advanced multibuild


Modified: toys/tools/cleanbuild/multibuild
==============================================================================
--- toys/tools/cleanbuild/multibuild	(original)
+++ toys/tools/cleanbuild/multibuild	Tue Feb 23 14:50:20 2010
@@ -1,5 +1,10 @@
 #!/bin/sh
 
+b="$(echo -n -e '\033[1m')"
+B="$(echo -n -e '\033[22m')"
+c="$(echo -n -e '\033[33m')"
+e="$(echo -n -e '\033[0m')"
+
 [ -d mbuild ] || mkdir mbuild
 
 end_pkg()
@@ -12,7 +17,7 @@
 next_pkg()
 {
 	package=""
-	while read pkg; do
+	while read pkg info; do
 		if [ ! -r mbuild/ok.$pkg ] && [ ! -r mbuild/fail.$pkg ] \
 				&& [ ! -r mbuild/start.$pkg ]; then
 			package="$pkg"
@@ -22,7 +27,7 @@
 	done < blist
 
 	if [ -z "$package" ]; then
-		echo "Nothing to build"
+		echo "${c}Nothing to build${e}"
 		exit
 	fi
 }
@@ -31,64 +36,82 @@
 package=
 next_pkg
 build="cleanbuild"
-
-b="$(echo -n -e '\033[1m')"
-B="$(echo -n -e '\033[22m')"
-c="$(echo -n -e '\033[33m')"
-e="$(echo -n -e '\033[0m')"
 while true; do
-	./$build "$@" $package
+	time ./$build "$@" $package
 	ret=$?
 
+	OLDPWD="$PWD"
+	cd $HOME/rpm/packages/$package
+	cvs -z3 diff -u $package.spec | colordiff
+	cd $OLDPWD
+
 	echo "$package build finished with exit status $ret"
-	echo
 
 	while true; do
-		if [ $ret -eq 0 ]; then
-			echo -n "${b}c${B}lean rebuild," \
-		   		"re${b}b${B}uild, $c${b}n${B}ext$e ? "
-		else
-			echo -n "${b}c${B}lean rebuild," \
-		   		"${c}re${b}b${B}uild$e, ${b}n${B}ext ? "
-		fi
+		echo
+		echo -n "${c}clean ${b}r${B}ebuild," "re${b}b${B}uild," \
+			"${b}i${B}nstall," "${b}a${B}ddbr," \
+			"${b}v${B}im," "${b}c${B}i," \
+			"${b}l${B}og," "${b}N${B}ext ?${e} "
 
 		read ans
 		case "x$ans" in
-			x[rRcC])
+			x[rR])
 				build="cleanbuild"
 				;;
 			x[bB])
 				build="build"
 				;;
-			x[nN])
-				end_pkg
-				build="cleanbuild"
+			x[iI])
+				echo -n "${c}install>${e} "
+				read pkg
+				./install "$@" $pkg
+				echo "pkg installed with exit status $?"
+				continue
+				;;
+			x[aA])
+				echo -n "${c}br>${e} "
+				read pkg
+				./install "$@" $pkg
+				echo "pkg installed with exit status $?"
+				[ $? == 0 ] && ./addbr $package $pkg "requested"
+				continue
+				;;
+			x[vV])
+				vim $HOME/rpm/packages/$package/$package.spec
+				continue
+				;;
+			x[cC])
+				cd $HOME/rpm/packages/
+				./ci $package
+				cd -
+				continue
+				;;
+			x[lL])
+				vim buildlogs/$package
+				continue
+				;;
+			xN)
 				./clean "$@"
-				next_pkg
+				end_pkg
+				exec $0 "$@"
+				exit
+				;;
+			xn)
+				echo "upper case N required"
+				continue
 				;;
 			x[qQ])
+				./clean "$@"
 				end_pkg
 				exit
 				;;
-			x)
-				if [ $ret -eq 0 ]; then
-					end_pkg
-					build="cleanbuild"
-					./clean "$@"
-					next_pkg
-				else
-					build="build"
-				fi
-				;;
 			*)
 				continue
 				;;
 		esac
-
 		break
 	done
-				
-
 done
 
 # vim: ts=4:sw=4


More information about the pld-cvs-commit mailing list