X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/a898435b25eca4869e8c49b2b0fb1f649b030ce7..a0cd287e64e2d53bc5896e0a7c5ad072cb8bf469:/README-hacking diff --git a/README-hacking b/README-hacking index bd66a9bd..97c73a80 100644 --- a/README-hacking +++ b/README-hacking @@ -15,25 +15,16 @@ First, if it is a large change, you must make sure they have signed the appropriate paperwork. Second, be sure to add their name and email address to THANKS. -** If a change fixes a test, mention the test in the ChangeLog entry. +** If a change fixes a test, mention the test in the commit message. ** Bug reports -If somebody reports a new bug, mention his name in the ChangeLog entry +If somebody reports a new bug, mention his name in the commit message and in the test case you write. Put him into THANKS. The correct response to most actual bugs is to write a new test case which demonstrates the bug. Then fix the bug, re-run the test suite, and check everything in. -** You may find it useful to install the git-merge-changelog merge driver: - - http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/git-merge-changelog.c - -When following the generic installation instructions there, keep in mind that -your clone of Bison's git repository already contains appropriate -.gitattributes files, and running Bison's bootstrap script will make the -necessary changes to .git/config. - * Hacking @@ -169,7 +160,7 @@ The autoconf files we use are currently: lib/m4sugar/m4sugar.m4 lib/m4sugar/foreach.m4 -These files don't change very often in autoconf, so it should be +These files don't change very often in Autoconf, so it should be relatively straight-forward to examine the differences in order to decide whether to update. @@ -189,6 +180,9 @@ release: - Build with -DGNULIB_POSIXCHECK. It suggests gnulib modules that can fix portability issues. +- Check with `make syntax-check' if there are issues diagnosed by + gnulib. + - run `make maintainer-check' which: - runs `valgrind -q bison' to run Bison under Valgrind. - runs the parsers under Valgrind. @@ -206,6 +200,9 @@ release: Bison's included XSLT style sheets with the output of --report=all and --graph. +- running `make maintainer-release-check' takes care of running + maintainer-check, maintainer-push-check and maintainer-xml-check. + - Change tests/atlocal/CFLAGS to add your preferred options. For instance, `-traditional' to check that the parsers are K&R. Note that it does not make sense for glr.c, which should be ANSI, @@ -216,6 +213,8 @@ release: ** Update the submodules. See above. +** Update maintainer tools, such as Autoconf. See above. + ** Try to get the *.pot files to the Translation Project at least one week before a stable release, to give them time to translate them. Before generating the *.pot files, make sure that po/POTFILES.in and @@ -248,16 +247,17 @@ occurrences of PACKAGE_COPYRIGHT_YEAR in configure.ac. The version number, *and* the date of the release (including for betas). -** Update ChangeLog -Should have an entry similar to `Version 1.49b.'. +** Mention the release name in a commit message +Should have an entry similar to `Version 2.3b.'. ** Tag the release -Before Bison will build with the right version number, you must tag the release -in git. Do this after all other changes. The command is similar to: +Before Bison will build with the right version number, you must tag +the release in git. Do this after all other changes. The command is +similar to: git tag -a v2.3b -The log message can be simply: +The commit message can be simply: Bison 2.3b @@ -308,7 +308,7 @@ Here's a brief reminder of how to roll the tarballs and upload them: *** put bison-2.3b.tar.gz # This can take a while. *** put bison-2.3b.tar.gz.sig *** put bison-2.3b.tar.gz.directive.asc -*** Repeat all these steps for bison-2.3b.tar.bz2. +*** Repeat all these steps for bison-2.3b.tar.xz. ** Update Bison manual on www.gnu.org. @@ -383,7 +383,7 @@ Push these changes. ----- -Copyright (C) 2002-2005, 2007-2011 Free Software Foundation, Inc. +Copyright (C) 2002-2005, 2007-2012 Free Software Foundation, Inc. This file is part of GNU Bison.