summaryrefslogtreecommitdiff
path: root/Makefile.am
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2008-11-17 12:05:27 +0100
committerJim Meyering <meyering@redhat.com>2011-01-01 10:56:49 +0100
commit9a008a9e24166375cf512457155d38c760c89258 (patch)
tree5ca152b2e230f1829ebaa569ad694d580d78f7b8 /Makefile.am
parent6b3f52e94f88267abd918afe2204ac19f78a7093 (diff)
downloadcoreutils-9a008a9e24166375cf512457155d38c760c89258.tar.gz
maint: generate much of the THANKS file
Before this change, we had a tendency to manually list each contributor's name in THANKS. Now, each commit "Author" is included in the generated THANKS file automatically, and most of the old THANKS file is now a template, THANKS.in. We'll still have to manually list the names of people who report problems without a usable patch. * THANKS.in: New file, derived from THANKS, but removing names of those who are listed as git log 'Author:'s. * THANKS: Remove file. * thanks-gen: New file. * Makefile.am (THANKS): New rule. (EXTRA_DIST): Add .mailmap, THANKS.in and thanks-gen. * .gitignore: Add THANKS and THANKS-to-translators. * .mailmap: Unify on single address and name-spelling per contributor.
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am27
1 files changed, 26 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index b61229d24..4fc6e8e21 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -68,9 +68,11 @@ syntax_check_exceptions = \
EXTRA_DIST = \
$(changelog_etc) \
$(syntax_check_exceptions) \
+ .mailmap \
.prev-version \
.version \
.vg-suppressions \
+ THANKS.in \
THANKS-to-translators \
THANKStt.in \
bootstrap \
@@ -79,7 +81,8 @@ EXTRA_DIST = \
cfg.mk \
dist-check.mk \
gl/modules/getloadavg.diff \
- maint.mk
+ maint.mk \
+ thanks-gen
ALL_RECURSIVE_TARGETS += install-root
install-root:
@@ -152,3 +155,25 @@ check-ls-dircolors:
|sed -n '/^ *"/p'|tr , '\n'|sed 's/^ *//' \
|sed -n 's/^"\(..\)"/\1/p'|sort -u); \
test "$$dc" = "$$ls"
+
+# Sort in traditional ASCII order, regardless of the current locale;
+# otherwise we may get into trouble with distinct strings that the
+# current locale considers to be equal.
+ASSORT = LC_ALL=C sort
+
+# Extract all lines up to the first one starting with "##".
+prologue = perl -ne '/^\#\#/ and exit; print' $(srcdir)/THANKS.in
+
+THANKS: THANKS.in Makefile.am .mailmap thanks-gen .version
+ $(AM_V_GEN) \
+ { \
+ $(prologue); echo; \
+ { perl -ne '/^$$/.../^$$/ and print' $(srcdir)/THANKS.in \
+ | grep -v '^$$' | perl -pe 's/ +/\0/'; \
+ git log --pretty=format:'%aN%x00%aE' \
+ | $(ASSORT) -u; \
+ } | $(srcdir)/thanks-gen \
+ | LC_ALL=en_US.UTF-8 sort -f; \
+ echo; \
+ printf ';; %s\n' 'Local Variables:' 'coding: utf-8' End:; \
+ } > $@-t && mv $@-t $@