#!/bin/sh
-J=
-# J='-l 4 -j'
-nodo=echo
+J='-l 4 -j'
+G=/pub/software/scm/git &&
cd $HOME/git &&
-make clean &&
+make clean >/dev/null 2>&1 &&
git reset --hard &&
-make clean &&
+make clean >/dev/null 2>&1 &&
git checkout master &&
git pull . origin &&
-make clean &&
+make clean >/dev/null 2>&1 &&
case "$1" in
'')
- make $J install &&
- make test &&
- make clean &&
- git checkout pu &&
- make $J clean &&
- make test clean
+ echo "* Building all"
+ branches='next master maint'
+ nstalled=install
+ for branch in $branches
+ do
+ if git-rev-parse --verify refs/heads/$branch 2>/dev/null
+ then
+ echo "** $branch **" &&
+ git checkout $branch &&
+ make $J $nstalled &&
+ make test &&
+ make clean &&
+ nstalled=all || exit $?
+ else
+ echo
+ echo "* NO $branch"
+ echo
+ fi
+ done >:all.log 2>&1
;;
-maint | master)
- G=/pub/software/scm/git &&
+maint | master)
+ case `hostname` in
+ hera.kernel.org)
+ arch=x86_64 ;;
+ old-hera.kernel.org)
+ arch=i386 ;;
+ *) echo >&2 "What are you talking about???"
+ exit 1 ;;
+ esac &&
+ : >./:all.log &&
+ mkdir -p $G/RPMS/$arch $G/RPMS/SRPMS &&
+ echo "* Building $1" &&
git checkout "$1" &&
- make rpm >./:rpm.log 2>&1 &&
- make $J git &&
- V=$(./git --version | sed -e 's/git version //') &&
- $nodo ln git-$V.tar.gz $G/. &&
- D=`pwd` &&
- M="git-man-pages-$V" &&
- H="git-html-pages-$V" &&
- rm -rf "$M" "$H" &&
- make man1="$D/$M/man1" man7="$D/$M/man7" WEBDOC_DEST="$D/$H" \
- -C Documentation install install-webdoc >./:doc.log 2>&1 &&
- $nodo tar zcf "$G/$M".tar.gz "$M" &&
- $nodo tar zcf "$G/$H".tar.gz "$H" &&
- rm -fr "$M" "$H" ./:rpm.log ./:doc.log &&
+ make rpm >>./:all.log 2>&1 &&
+ case "$arch" in
+ i386)
+ status=$?
+ echo >&2 "Done -- move RPMS to the master machine."
+ make clean
+ exit $status ;;
+ esac &&
+ make dist-doc >>./:all.log 2>&1 &&
+ make $J git >>./:all.log 2>&1 &&
+ V=`./git --version | sed -e 's/git version //'` &&
+ ln git-$V.tar.gz git-htmldocs-$V.tar.gz git-manpages-$V.tar.gz $G/. &&
+ ln $HOME/rpms/RPMS/$arch/git*-$V-* $G/RPMS/$arch/. &&
+ ln $HOME/rpms/SRPMS/git-$V-* $G/RPMS/SRPMS/. &&
+ {
+ # I do not know how it exits, and I do not care much.
+ /usr/local/bin/yummy $G/RPMS/$arch
+ /usr/local/bin/yummy $G/RPMS/SRPMS
+ :
+ } >>./:all.log 2>&1 &&
make clean &&
- $nodo ln $HOME/rpms/RPMS/i386/git*-$V-* $G/RPMS/i386/. &&
- $nodo ln $HOME/rpms/SRPMS/git-$V-* $G/RPMS/SRPMS/.
- ;;
+ : ;;
esac || exit $?
git checkout master