diff options
author | Glenn Morris <rgm@gnu.org> | 2014-11-15 18:16:28 -0500 |
---|---|---|
committer | Glenn Morris <rgm@gnu.org> | 2014-11-15 18:16:28 -0500 |
commit | 899a5a9882ddb6106dbabf2012c957ea1340ac2a (patch) | |
tree | 5a0ca3459dadf087c305505f580b7e2460020a12 /admin/update_autogen | |
parent | 92f58578cc939e0d955437fcbc87cda80c2ba05c (diff) | |
download | emacs-899a5a9882ddb6106dbabf2012c957ea1340ac2a.tar.gz |
Backport 2014-06-30 admin/update_autogen change
* admin/update_autogen: Auto-detect VCS in use.
(vcs): New variable.
(status, commit, main): Handle git.
Diffstat (limited to 'admin/update_autogen')
-rwxr-xr-x | admin/update_autogen | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/admin/update_autogen b/admin/update_autogen index b9511969a15..d9d34fa3d6e 100755 --- a/admin/update_autogen +++ b/admin/update_autogen @@ -47,6 +47,14 @@ cd $PD cd ../ [ -d admin ] || die "Could not locate admin directory" +if [ -d .bzr ]; then + vcs=bzr +elif [ -d .git ]; then + vcs=git +else + die "Cannot determine vcs" +fi + usage () { @@ -143,7 +151,10 @@ OPTIND=1 ## Run status on inputs, list modified files on stdout. status () { - bzr status -S "$@" >| $tempfile || die "bzr status error for $@" + local statflag="-S" + [ "$vcs" = "git" ] && statflag="-s" + + $vcs status $statflag "$@" >| $tempfile || die "$vcs status error for $@" local stat file modified @@ -217,8 +228,11 @@ commit () echo "Committing..." - ## bzr status output is always relative to top-level, not PWD. - bzr commit -m "Auto-commit of $type files." "$@" || return $? + $vcs commit -m "Auto-commit of $type files." "$@" || return $? + + [ "$vcs" = "git" ] && { + $vcs push || return $? + } echo "Committed files: $@" } # function commit @@ -257,7 +271,7 @@ EOF *-xtra.texi|*efaq-w32.texi) continue ;; esac - dircat=`sed -n -e 's/@value{emacsname}/Emacs/' -e 's/^@dircategory //p' $file` + dircat=$(sed -n -e 's/@value{emacsname}/Emacs/' -e 's/^@dircategory //p' $file) ## TODO warn about unknown topics (check-info in top-level ## Makefile does this). @@ -291,7 +305,8 @@ EOF modified=$(status $basegen) || die - cd $oldpwd + ## bzr status output is always relative to top-level, not PWD. + [ "$vcs" = "bzr" ] && cd $oldpwd commit "generated" $modified || die "commit error" @@ -364,7 +379,8 @@ echo "Checking status of loaddef files..." modified=$(status $genfiles ${ldefs_out#lisp/}) || die -cd ../ +## bzr status output is always relative to top-level, not PWD. +[ "$vcs" = "bzr" ] && cd ../ commit "loaddefs" $modified || die "commit error" |