readme: fixlets to HACKING
authorStefano Lattarini <stefano.lattarini@gmail.com>
Sun, 12 Aug 2012 19:30:56 +0000 (21:30 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Sun, 12 Aug 2012 19:30:56 +0000 (21:30 +0200)
* HACKING: Use longer "=====" lines to separate different section (this
is just eye-candy admittedly, but I prefer it).
(Release procedure): Don't tell to "update NEWS"; that should be updated
throughout the normal course of development.  Instead, tell to just check
it.  Improve description of the re-bootstrapping and rechecking procedure,
also suggesting to use "git clean" beforehand (with all due warnings!).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
HACKING

diff --git a/HACKING b/HACKING
index 6966384..e245039 100644 (file)
--- a/HACKING
+++ b/HACKING
@@ -1,10 +1,10 @@
-================================================================
+============================================================================
 = This file
 
 * This file attempts to describe the rules to use when hacking
   automake.
 
-================================================================
+============================================================================
 = Administrivia
 
 * The correct response to most actual bugs is to write a new test case
@@ -38,7 +38,7 @@
 * Changes other than bug fixes must be mentioned in NEWS.  Important
   bug fixes should be mentioned in NEWS, too.
 
-================================================================
+============================================================================
 = Naming
 
 * We've adopted the convention that internal AC_SUBSTs should be
@@ -52,7 +52,7 @@
   variable begins with the underscore character.  Yay for them.
   I changed the target naming convention just to be safe.
 
-================================================================
+============================================================================
 = Editing '.am' files
 
 * Always use $(...) and not ${...}
@@ -78,7 +78,7 @@
 * Ensure install rules do not create any installation directory where
   nothing is to be actually installed.  See automake bug#11030.
 
-================================================================
+============================================================================
 = Editing automake.in and aclocal.in
 
 * Indent using GNU style.  For historical reasons, the perl code
@@ -92,7 +92,7 @@
   &, just convert the old code as you work on it, and write new
   code without.
 
-================================================================
+============================================================================
 = Working with git
 
 * To regenerate dependent files created by aclocal and automake,
   release.  For next, and for feature branches, the announcement for the
   branch should document rewinding policy.
 
-================================================================
+============================================================================
 = Writing a good commit message
 
 * Here is the general format that Automake's commit messages are expected
       ... removed in commit 'v1.11-1674-g02e9072' of 01-01-2012,
       "dist: ditch support for lzma"...
 
-================================================================
+============================================================================
 = Test suite
 
 * Use "make check" and "make maintainer-check" liberally.
 
 * See file 't/README' for more information.
 
-================================================================
+============================================================================
 = Release procedure
 
 * The steps outlined here are meant to be followed for alpha and stable
   date.  The maintainer-only target "update-copyright" can help with
   this.
 
-* Update NEWS.
+* Check NEWS; in particular, ensure that all the relevant differences
+  with the last release are actually reported.
 
 * Update the version number in configure.ac.
   (The idea is that every other alpha number will be a net release.
   distinguish net and repo versions.)
 
 * Run this:
-  ./bootstrap.sh && ./configure && make && make check && make distcheck
+
+    make bootstrap && make check && make distcheck
+
+  It is also advised to run "git clean -fdx" before invoking the
+  bootstrap, to ensure a really clean rebuild.  However, it must
+  be done carefully, because that command will remove *all* the
+  files that are not tracked by git!
 
 * Run "make git-tag-release".
   This will run the maintainer checks, verify that the local git