+++ /dev/null
-#!/bin/sh
-
-: ${J=-j4}
-force=
-while case "$1" in
- -pedantic) M=$1 ;;
- -force) force=$1 ;;
- -dash) with_dash=y ;;
- -noinstall) install=noinstall ;;
- *) break ;;
- esac
-do
- shift
-done
-
-test -z "$(git diff --cached --name-status)" || {
- echo >&2 "Repository unclean."
- exit 1
-}
-Meta/Make clean >/dev/null 2>&1
-
-test -f /bin/dash || with_dash=
-
-: ${branches='next master maint pu jch'}
-
-for branch in $branches
-do
- echo >&3 "** $branch **"
-
- revision=$(git show-ref -s --verify "refs/heads/$branch") || {
- echo "** No $branch"
- continue
- }
-
- private=$(git rev-parse -q --verify private-$branch 2>/dev/null)
- case $? in 0|1) ;; *) exit $? ;; esac
-
- if installed=$($HOME/git-$branch/bin/git version) &&
- if version=$(expr "$installed" : '.*\.g\([0-9a-f]*\)$')
- then
- :
- elif version=v$(expr "$installed" : \
- 'git version \(.*\)\.rc[0-9]*$')
- then
- version="$version"-$(expr "$installed" : \
- 'git version .*\.\(rc[0-9]*\)$')
- else
- version=v$(expr "$installed" : 'git version \(.*\)')
- fi &&
- version=$(git rev-parse --verify "$version^0" 2>/dev/null) &&
- test "z$version" = "z$revision"
- then
- echo "* up-to-date version \"$installed\" is already installed from $branch"
- test -n "$force" || continue
- fi
-
- echo "** $branch" &&
- git checkout $branch &&
-
- case "$private" in
- '')
- ;;
- ?*)
- git merge --squash --no-commit "$private" || {
- echo >&2 "Cannot apply private edition changes"
- git reset --hard
- }
- ;;
- esac &&
-
- Meta/Make $M -- $J clean &&
- case "$with_dash" in
- y)
- case "$branch" in
- master | maint | next | jch)
- Meta/Make $M -- $J SHELL_PATH=/bin/dash test &&
- Meta/Make $M -- $J clean
- ;;
- esac
- ;;
- esac &&
-
- Meta/Make $M -- $J all &&
- Meta/Make $M -- $J test &&
- case "$branch" in
- master | maint | next )
- Meta/Make $M -- doc
- ;;
- jch )
- Meta/Make $M -- doc install-doc
- ;;
- *)
- : ;;
- esac &&
- {
- test z$install = znoinstall ||
- Meta/Make $M -- install
- } &&
- Meta/Make clean || exit $?
-
- git reset --hard
-
-done >./:all.log 3>&2 2>&1
-
-git checkout master