summaryrefslogtreecommitdiff
path: root/defs
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2019-04-25 18:27:16 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2019-04-25 18:27:16 +0900
commit44bb429bb1bb431dc2805daf93f52509c26b9da7 (patch)
tree595164e8ebbe954da17cdc332d4bed8db18f4114 /defs
parent6de9128fe942de9a0306fe63b949b1a9c343e2c8 (diff)
Cache git config values
Diffstat (limited to 'defs')
-rw-r--r--defs/gmake.mk17
1 files changed, 11 insertions, 6 deletions
diff --git a/defs/gmake.mk b/defs/gmake.mk
index fd59b1618c..15ff0fd755 100644
--- a/defs/gmake.mk
+++ b/defs/gmake.mk
@@ -156,16 +156,20 @@ commit: $(if $(filter commit,$(MAKECMDGOALS)),$(filter-out commit,$(MAKECMDGOALS
GITHUB_RUBY_URL = https://github.com/ruby/ruby
PR =
+COMMIT_GPG_SIGN = $(shell git -C "$(srcdir)" config commit.gpgsign)
+REMOTE_GUTHUB_URL = $(shell git -C "$(srcdir)" config remote.github.url)
+
.PHONY: fetch-github
fetch-github:
- $(Q) if [ -z "$(PR)" ]; then \
+ $(if $(PR),,\
echo "usage:"; echo " make $@ PR=1234"; \
exit 1; \
- fi
- $(Q) if ! git -C "$(srcdir)" config remote.github.url > /dev/null; then \
+ )
+ $(eval REMOTE_GUTHUB_URL := $(REMOTE_GUTHUB_URL))
+ $(if $(REMOTE_GUTHUB_URL),, \
echo adding $(GITHUB_RUBY_URL) as remote github; \
git -C "$(srcdir)" remote add github $(GITHUB_RUBY_URL); \
- fi
+ )
git -C "$(srcdir)" fetch -f github "pull/$(PR)/head:gh-$(PR)"
.PHONY: checkout-github
@@ -185,9 +189,10 @@ merge-github: fetch-github
git -C "$(srcdir)" filter-branch -f \
--msg-filter 'cat && echo && echo "Closes: $(GITHUB_RUBY_URL)/pull/$(PR)"' \
-- "$(GITHUB_MERGE_BASE)..@"
- $(Q) if [ "$$(git -C "$(srcdir)" config commit.gpgsign)" = true ]; then \
+ $(eval COMMIT_GPG_SIGN := $(COMMIT_GPG_SIGN))
+ $(if $(filter true,$(COMMIT_GPG_SIGN)), \
git -C "$(srcdir)" rebase --exec "git commit --amend --no-edit -S" "$(GITHUB_MERGE_BASE)"; \
- fi
+ )
ifeq ($(words $(filter update-gems extract-gems,$(MAKECMDGOALS))),2)
extract-gems: update-gems