automake-patches
[Top][All Lists]
Advanced

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

New maintainer target release-stats.


From: Ralf Wildenhues
Subject: New maintainer target release-stats.
Date: Sun, 2 Nov 2008 23:07:55 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

This patch is purely an aid for keeping the manual up to date.
It is a bit system-dependent: you need pstops for it.  And the
output should be inspected for sanity, as some of the commands
are pretty heuristic.

Applied master and branch-1-10.

Cheers,
Ralf

    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.

diff --git a/HACKING b/HACKING
index 5e7191f..5df650e 100644
--- a/HACKING
+++ b/HACKING
@@ -143,6 +143,9 @@
 
 * 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'.
diff --git a/Makefile.am b/Makefile.am
index 8b83cad..55e1a66 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -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
diff --git a/doc/automake.texi b/doc/automake.texi
index 86f1312..acb97cd 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -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
 
address@hidden {8888-88-88} {8.8-p8} {8888} {8888} {8888} {8888 (88)} {8888 
(88)} {888} {888}
address@hidden Date   @tab Rel @tab am @tab acl @tab pm @tab @file{*.am} @tab 
m4 @tab doc @tab t
address@hidden {8888-88-88} {8.8-p8} {8888} {8888} {8888} {8888 (88)} {8888 
(88)} {888} {888 (88)}
address@hidden 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
address@hidden 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
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]