[glib] Add a rule to generate ChangeLog



commit 20774c566393af28e5123322abb8e35840ff0e5a
Author: Matthias Clasen <mclasen redhat com>
Date:   Thu Apr 2 23:42:29 2009 -0400

    Add a rule to generate ChangeLog
    
    We use the same rule pango uses to create a ChangeLog file with
    the help of git-log. The format is somewhat different from traditional
    ChangeLog, but it contains the relevant information.
---
 Makefile.am |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 1498acb..8973778 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -15,6 +15,9 @@ AM_CPPFLAGS = 					\
 	-DGLIB_COMPILATION
 
 EXTRA_DIST += 			\
+	ChangeLog.pre-2-20	\
+	ChangeLog.pre-2-18	\
+	ChangeLog.pre-2-16	\
 	ChangeLog.pre-2-14	\
 	ChangeLog.pre-2-12	\
 	ChangeLog.pre-2-10	\
@@ -56,13 +59,14 @@ EXTRA_DIST += 			\
 	gthread-2.0-uninstalled.pc.in	\
 	gmodule-no-export-2.0-uninstalled.pc.in \
 	gio-2.0-uninstalled.pc.in		\
-	gio-unix-2.0-uninstalled.pc.in	
+	gio-unix-2.0-uninstalled.pc.in
 
 
 # These may be in the builddir too
 BUILT_EXTRA_DIST = 		\
 	README			\
 	INSTALL			\
+	ChangeLog		\
 	glibconfig.h.win32	\
 	config.h.win32		\
 	gtk-doc.make
@@ -83,6 +87,20 @@ stamp-gc-h: config.status
 	cd $(top_builddir) && $(SHELL) ./config.status glibconfig.h
 	echo timestamp > stamp-gc-h
 
+ChangeLog:
+	@echo Creating $@
+	@if test -d "$(srcdir)/.git"; then \
+	  (GIT_DIR=$(top_srcdir)/.git ./missing --run git log GLIB_2_20_0^^.. --stat) | fmt --split-only > $  tmp \
+	  && mv -f $  tmp $@ \
+	  || ($(RM) $  tmp; \
+	      echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
+	      (test -f $@ || echo git-log is required to generate this file >> $@)); \
+	else \
+	  test -f $@ || \
+	  (echo A git checkout and git-log is required to generate ChangeLog >&2 && \
+	  echo A git checkout and git-log is required to generate this file >> $@); \
+	fi
+
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = glib-2.0.pc gobject-2.0.pc gmodule-2.0.pc gmodule-export-2.0.pc gmodule-no-export-2.0.pc gthread-2.0.pc gio-2.0.pc gio-unix-2.0.pc
 
@@ -102,7 +120,7 @@ distclean-local:
 	    rm -f $(BUILT_EXTRA_DIST); \
 	fi
 
-.PHONY: files release sanity snapshot
+.PHONY: files release sanity snapshot ChangeLog
 
 files:
 	@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]