diff options
Diffstat (limited to 'HACKING')
-rw-r--r-- | HACKING | 29 |
1 files changed, 18 insertions, 11 deletions
@@ -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 * Internal make variables and functions should be named following patterns @@ -53,7 +53,7 @@ except in those situation where that would cause spurious conflicts with mainline Automake. -================================================================ +============================================================================ = Editing '.am' files * Always use $(...) and not ${...} @@ -73,7 +73,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 @@ -87,7 +87,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, @@ -131,7 +131,7 @@ 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 @@ -192,7 +192,7 @@ ... 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. @@ -207,7 +207,7 @@ * See file 't/README' for more information. -================================================================ +============================================================================ = Release procedure * The steps outlined here are meant to be followed for alpha and stable @@ -222,7 +222,8 @@ 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. @@ -230,7 +231,13 @@ 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 |