git/DoKernelOrg
2006-06-10 19:24:12 -07:00

76 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
J='-l 4 -j'
G=/pub/software/scm/git &&
cd $HOME/git &&
make clean >/dev/null 2>&1 &&
git reset --hard &&
make clean >/dev/null 2>&1 &&
git checkout master &&
git pull . origin &&
make clean >/dev/null 2>&1 &&
case "$1" in
'')
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)
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 >>./: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 &&
: ;;
esac || exit $?
git checkout master