$(MAKE) all
# The newest revision that should not appear in the generated ChangeLog.
-gen_origin = 2cdbb8983dd49ce5c31c74b26f740bcb3e5a4c5d
+gen_origin = 3311ace9c54a50b83a838e2eb7fa9565176e0c4f
# Convert git commit log to ChangeLog file. make-dist uses this.
.PHONY: ChangeLog change-history unchanged-history-files
ChangeLog:
CHANGELOG_HISTORY_INDEX_MAX = 1
CHANGELOG_N = ChangeLog.$(CHANGELOG_HISTORY_INDEX_MAX)
-# Check that history-relevant files match what's in the repository.
-# Otherwise, 'make change-history' might mess up the ChangeLog history files.
+# Check that we are in a good state for changing history.
+no-ChangeLog:
+ test ! -f ChangeLog
+master-branch-is-current:
+ git branch | grep -q '^\* master$$'
unchanged-history-files:
x=$$(git diff-files --name-only $(CHANGELOG_N) Makefile.in) && \
test -z "$$x"
# Copy newer commit messages to the start of the ChangeLog history file,
# and consider them to be older.
-change-history: ChangeLog unchanged-history-files
- (sed '/^;; Local Variables:/,$$d' <ChangeLog && cat $(CHANGELOG_N)) \
+change-history: no-ChangeLog master-branch-is-current unchanged-history-files \
+ ChangeLog
+ (sed '/^;; [L]ocal Variables:/,$$d' <ChangeLog && cat $(CHANGELOG_N)) \
>$(CHANGELOG_N).tmp
new_origin=$$(git log --pretty=format:%H HEAD^!) && \
sed 's/^\(gen_origin *= *\).*/\1'"$$new_origin/" \