Marc Jones has uploaded this change for review. ( https://review.coreboot.org/22857
Change subject: util/gitconfig: Make gitconfig a bash script ......................................................................
util/gitconfig: Make gitconfig a bash script
The gitconfig target has a few bashisms and would fail silently on systems that use a POSIX standard sh (like Ubuntu dash).
Remove the code from the makefile and put it in a bash script that is called by the gitconfig target.
Change-Id: I3bc8cf688a3ad211b57c8ca0e6b1e86c82dc6a37 Signed-off-by: Marc Jones marcj303@gmail.com --- M Makefile.inc A util/gitconfig/gitconfig.sh 2 files changed, 30 insertions(+), 28 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/57/22857/1
diff --git a/Makefile.inc b/Makefile.inc index f93b4bd..413f7ad 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -570,34 +570,7 @@ dongle.py -c /dev/term/1 $(obj)/coreboot.rom EOF
gitconfig: - [ -d .git ] - mkdir -p .git/hooks - for hook in commit-msg pre-commit ; do \ - if [ util/gitconfig/$$hook -nt .git/hooks/$$hook -o \ - ! -x .git/hooks/$$hook ]; then \ - sed -e "s,%MAKE%,$(MAKE),g" util/gitconfig/$$hook > .git/hooks/$$hook; \ - chmod +x .git/hooks/$$hook; \ - fi; \ - done - # Now set up thehooks for 3rdparty/ - for hooks in .git/modules/{3rdparty/blobs,libhwbase,libgfxinit}/hooks; do \ - if [ -d $$hooks -a \ - ( util/gitconfig/commit-msg -nt $$hooks/commit-msg -o \ - ! -x $$hooks/commit-msg ) ]; then \ - sed -e "s,%MAKE%,$(MAKE),g" util/gitconfig/commit-msg > $$hooks/commit-msg; \ - chmod +x $$hooks/commit-msg; \ - fi \ - done - for d in 3rdparty/{blobs,libhwbase,libgfxinit}; do \ - if [ -d $$d ]; then \ - (cd $$d; \ - git config remote.origin.push HEAD:refs/for/master); \ - fi; \ - done - git config remote.origin.push HEAD:refs/for/master - git config alias.sup '!git submodule update --remote --rebase && git submodule update --init --checkout' - git config alias.sup-destroy '!git submodule deinit --force "$$(git rev-parse --show-toplevel)"; git submodule init && git submodule update --checkout' - (git config --includes user.name >/dev/null && git config --includes user.email >/dev/null) || (printf 'Please configure your name and email in git:\n\n git config --global user.name "Your Name Comes Here"\n git config --global user.email your.email@example.com\n'; exit 1) + util/gitconfig/gitconfig.sh
include util/crossgcc/Makefile.inc
diff --git a/util/gitconfig/gitconfig.sh b/util/gitconfig/gitconfig.sh new file mode 100755 index 0000000..84587f1 --- /dev/null +++ b/util/gitconfig/gitconfig.sh @@ -0,0 +1,29 @@ +#!/bin/bash +[ -d .git ] +mkdir -p .git/hooks +for hook in commit-msg pre-commit ; do \ + if [ util/gitconfig/$hook -nt .git/hooks/$hook -o \ + ! -x .git/hooks/$hook ]; then \ + sed -e "s,%MAKE%,remake,g" util/gitconfig/$hook > .git/hooks/$hook; \ + chmod +x .git/hooks/$hook; \ + fi; \ +done +# Now set up the hooks for 3rdparty/ +for hooks in .git/modules/{3rdparty/blobs,libhwbase,libgfxinit}/hooks; do \ + if [ -d $hooks -a \ + ( util/gitconfig/commit-msg -nt $hooks/commit-msg -o \ + ! -x $hooks/commit-msg ) ]; then \ + sed -e "s,%MAKE%,remake,g" util/gitconfig/commit-msg > $hooks/commit-msg; \ + chmod +x $hooks/commit-msg; \ + fi \ +done +for d in 3rdparty/{blobs,libhwbase,libgfxinit}; do \ + if [ -d $d ]; then \ + (cd $d; \ + git config remote.origin.push HEAD:refs/for/master); \ + fi; \ +done +git config remote.origin.push HEAD:refs/for/master +git config alias.sup '!git submodule update --remote --rebase && git submodule update --init --checkout' +git config alias.sup-destroy '!git submodule deinit --force "$(git rev-parse --show-toplevel)"; git submodule init && git submodule update --checkout' +(git config --includes user.name >/dev/null && git config --includes user.email >/dev/null) || (printf 'Please configure your name and email in git:\n\n git config --global user.name "Your Name Comes Here"\n git config --global user.email your.email@example.com\n'; exit 1)