New maintainer target release-stats.
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sun, 2 Nov 2008 21:59:38 +0000 (22:59 +0100)
committerRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sun, 2 Nov 2008 21:59:38 +0000 (22:59 +0100)
* Makefile.am (release-stats): New target, to help computing the
entries in the statistics table in automake.texi.
* doc/automake.texi (Releases): Reformat a bit.  Add number of
generated files.  Add entry for 1.10.1.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
ChangeLog
HACKING
Makefile.am
Makefile.in
doc/automake.texi

index 00cfc0b..f252756 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2008-11-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
+       New maintainer target release-stats.
+       * Makefile.am (release-stats): New target, to help computing the
+       entries in the statistics table in automake.texi.
+       * doc/automake.texi (Releases): Reformat a bit.  Add number of
+       generated files.  Add entry for 1.10.1.
+
        Choose default source extension: AM_DEFAULT_SOURCE_EXT.
        * automake.in (handle_source_transform): Accept unconditional
        literal extension in AM_DEFAULT_SOURCE_EXT as override for the
diff --git a/HACKING b/HACKING
index 5e7191f..5df650e 100644 (file)
--- a/HACKING
+++ b/HACKING
 
 * Run ./bootstrap, ./configure, make.
 
+* Run `make release-stats' if release statistics in doc/automake.texi
+  have not been updated yet.
+
 * NOTE: the next step has not been tested yet with git, so be careful.
 
 * Run `make git-release'.
index 8b83cad..55e1a66 100644 (file)
@@ -435,3 +435,32 @@ fetch:
        test $$stat = 0 || \
          echo "See Fetchdir/update.patch for a log of the changes."; \
        exit $$stat
+
+## Generate release statistics, for the table in automake.texi.
+## This has to be run in an up to date build tree, but there must
+## be no temp files nor unused other files lying around!
+release-stats: ps
+       @am=`wc -l < automake` && \
+       acl=`wc -l < aclocal` && \
+       pmfiles="lib/Automake/*.pm" && \
+       if test . != '$(srcdir)'; then pmfiles="$$pmfiles $(srcdir)/lib/Automake/*.pm"; \
+       else :; fi && \
+       pm=`cat $$pmfiles | wc -l` && \
+       dot_am_files=`ls -1 $(srcdir)/lib/am/*.am | grep -v Makefile.am` && \
+       amf=`echo "$$dot_am_files" | wc -l` && \
+       aml=`cat $$dot_am_files | wc -l` && \
+       m4f=`ls -1 $(srcdir)/m4/*.m4 | wc -l` && \
+       m4l=`cat $(srcdir)/m4/*.m4 | wc -l` && \
+       doc_text=`cd doc && LC_ALL=C pstops 0 automake.ps unused.ps 2>&1` && \
+       rm -f doc/unused.ps && \
+       doc=`echo "$$doc_text" | sed -n 's/.*Wrote \([1-9][0-9]*\) pages.*/\1/p'` && \
+       tests="tests/*.test"; \
+       if test . != '$(srcdir)'; then tests="$$tests $(srcdir)/tests/*.test"; \
+       else :; fi && \
+       t=`ls -1 $$tests | wc -l` && \
+       tgen=`ls -1 $$tests | grep '.-p\.test' | wc -l` && \
+       today=`date +%Y-%m-%d` && \
+       echo "add this to the table in doc/automake.texi after verification:" && \
+       printf '@item %s @tab %-6s @tab %4d @tab %4d @tab %4d @tab %4d %-4s @tab %4d %-4s @tab %3d @tab %d %-4s\n' \
+                     $$today $(VERSION) $$am    $$acl    $$pm   $$aml "($$amf)" $$m4l "($$m4f)" $$doc $$t "($$tgen)"
+.PHONY: release-stats
index eb2a9a1..d5ae72e 100644 (file)
@@ -1025,6 +1025,32 @@ fetch:
          echo "See Fetchdir/update.patch for a log of the changes."; \
        exit $$stat
 
+release-stats: ps
+       @am=`wc -l < automake` && \
+       acl=`wc -l < aclocal` && \
+       pmfiles="lib/Automake/*.pm" && \
+       if test . != '$(srcdir)'; then pmfiles="$$pmfiles $(srcdir)/lib/Automake/*.pm"; \
+       else :; fi && \
+       pm=`cat $$pmfiles | wc -l` && \
+       dot_am_files=`ls -1 $(srcdir)/lib/am/*.am | grep -v Makefile.am` && \
+       amf=`echo "$$dot_am_files" | wc -l` && \
+       aml=`cat $$dot_am_files | wc -l` && \
+       m4f=`ls -1 $(srcdir)/m4/*.m4 | wc -l` && \
+       m4l=`cat $(srcdir)/m4/*.m4 | wc -l` && \
+       doc_text=`cd doc && LC_ALL=C pstops 0 automake.ps unused.ps 2>&1` && \
+       rm -f doc/unused.ps && \
+       doc=`echo "$$doc_text" | sed -n 's/.*Wrote \([1-9][0-9]*\) pages.*/\1/p'` && \
+       tests="tests/*.test"; \
+       if test . != '$(srcdir)'; then tests="$$tests $(srcdir)/tests/*.test"; \
+       else :; fi && \
+       t=`ls -1 $$tests | wc -l` && \
+       tgen=`ls -1 $$tests | grep '.-p\.test' | wc -l` && \
+       today=`date +%Y-%m-%d` && \
+       echo "add this to the table in doc/automake.texi after verification:" && \
+       printf '@item %s @tab %-6s @tab %4d @tab %4d @tab %4d @tab %4d %-4s @tab %4d %-4s @tab %3d @tab %d %-4s\n' \
+                     $$today $(VERSION) $$am    $$acl    $$pm   $$aml "($$amf)" $$m4l "($$m4f)" $$doc $$t "($$tgen)"
+.PHONY: release-stats
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
index 86f1312..acb97cd 100644 (file)
@@ -12104,18 +12104,19 @@ The number of lines of the @command{aclocal} script.
 @item pm
 The number of lines of the @command{Perl} supporting modules.
 @item @file{*.am}
-The number of lines of the @file{Makefile} fragments.  The number in parenthesis
-is the number of files.
+The number of lines of the @file{Makefile} fragments.  The number in
+parentheses is the number of files.
 @item m4
 The number of lines (and files) of Autoconf macros.
 @item doc
 The number of pages of the documentation (the Postscript version).
 @item t
-The number of test cases in the test suite.
+The number of test cases in the test suite.  Of those, the number in
+parentheses is the number of generated test cases.
 @end table
 
-@multitable {8888-88-88} {8.8-p8} {8888} {8888} {8888} {8888 (88)} {8888 (88)} {888} {888}
-@headitem Date   @tab Rel @tab am @tab acl @tab pm @tab @file{*.am} @tab m4 @tab doc @tab t
+@multitable {8888-88-88} {8.8-p8} {8888} {8888} {8888} {8888 (88)} {8888 (88)} {888} {888 (88)}
+@headitem Date   @tab Rel    @tab   am @tab acl @tab   pm @tab @file{*.am} @tab m4 @tab doc @tab t
 @item 1994-09-19 @tab CVS    @tab  141 @tab     @tab      @tab  299 (24) @tab           @tab     @tab
 @item 1994-11-05 @tab CVS    @tab  208 @tab     @tab      @tab  332 (28) @tab           @tab     @tab
 @item 1995-11-23 @tab 0.20   @tab  533 @tab     @tab      @tab  458 (35) @tab           @tab   9 @tab
@@ -12171,6 +12172,7 @@ The number of test cases in the test suite.
 @item 2005-02-13 @tab 1.9.5  @tab 7523 @tab 719 @tab 7859 @tab 3373 (40) @tab 1453 (32) @tab 142 @tab 562
 @item 2005-07-10 @tab 1.9.6  @tab 7539 @tab 699 @tab 7867 @tab 3400 (40) @tab 1453 (32) @tab 144 @tab 570
 @item 2006-10-15 @tab 1.10   @tab 7859 @tab 1072 @tab 8024 @tab 3512 (40) @tab 1496 (34) @tab 172 @tab 604
+@item 2008-01-19 @tab 1.10.1 @tab 7870 @tab 1089 @tab 8025 @tab 3520 (40) @tab 1499 (34) @tab 173 @tab 617
 @end multitable