Generate ChangeLog from git log.
authorJim Meyering <meyering@redhat.com>
Sun, 10 Feb 2008 09:27:42 +0000 (10:27 +0100)
committerJim Meyering <meyering@redhat.com>
Sun, 10 Feb 2008 09:53:16 +0000 (10:53 +0100)
* bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
Ensure that ChangeLog exists, for automake.
* Makefile.am (gen-ChangeLog): New rule.
(dist-hook): Depend on it.
(EXTRA_DIST): Add ChangeLog-2006, ChangeLog-2007, ChangeLog-2008.

Signed-off-by: Jim Meyering <meyering@redhat.com>
Makefile.am
bootstrap.conf

index 8205875..a7083be 100644 (file)
@@ -31,6 +31,9 @@ EXTRA_DIST = Makefile.cfg Makefile.maint GNUmakefile \
   .x-sc_unmarked_diagnostics \
   .x-sc_useless_cpp_parens \
   ChangeLog-2005 \
+  ChangeLog-2006 \
+  ChangeLog-2007 \
+  ChangeLog-2008 \
   bootstrap \
   bootstrap.conf \
   build-aux/cvsu \
@@ -74,10 +77,20 @@ BUILT_SOURCES = .version
 # tarball, and never in a checked-out repository.
 # The perl substitution is to change some key uses of "rm" to "/bin/rm".
 # See the rm_subst comment for details.
-dist-hook:
+dist-hook: gen-ChangeLog
        echo $(VERSION) > $(distdir)/.tarball-version
        perl -pi -e '$(rm_subst)' $(distdir)/src/Makefile.in
 
+gen_start_date = 2008-02-08
+.PHONY: gen-ChangeLog
+gen-ChangeLog:
+       if test -d .git; then                                           \
+         $(top_srcdir)/build-aux/gitlog-to-changelog                   \
+           --since=$(gen_start_date) > $(distdir)/cl-t;                \
+         rm -f $(distdir)/ChangeLog;                                   \
+         mv $(distdir)/cl-t $(distdir)/ChangeLog;                      \
+       fi
+
 distcheck-hook:
        $(MAKE) my-distcheck
 
index 92bee98..bd76ba7 100644 (file)
@@ -55,6 +55,7 @@ gnulib_modules="
        getline getloadavg getndelim2 getopt getpagesize getpass-gnu
        gettext gettime gettimeofday getugroups getusershell
        git-version-gen
+       gitlog-to-changelog
        gnu-make gnupload
        group-member hard-locale hash hash-pjw host-os human idcache
        inttostr inttypes isapipe
@@ -140,3 +141,6 @@ if test $gettext_external = 1; then
 fi
 
 gnulib_tool_option_extras="--tests-base=$bt/gnulib-tests --with-tests"
+
+# Automake requires that ChangeLog exist.
+touch ChangeLog