that 1. Bison compiles cleanly, 2. the parsers it produces compile
cleanly too.
+- Build with -DGNULIB_POSIXCHECK. It suggests gnulib modules that can
+ fix portability issues.
+
- run `make maintainer-check' which:
- runs `valgrind -q bison' to run Bison under Valgrind.
- runs the parsers under Valgrind.
* Release Procedure
-** 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.
+** 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
+runtime-po/POTFILES.in list all files with translatable strings.
+This helps: grep -l '\<_(' *
** Tests
See above.
these to the Translation Project.
** Update README
-Make sure the information in this file is current. Most notably, make sure it
-recommends a version of GNU M4 that is compatible with the latest Bison
-sources.
+Make sure the information in README is current. Most notably, make sure
+it recommends a version of GNU M4 that is compatible with the latest
+Bison sources.
+
+** Check copyright years.
+We update years in copyright statements throughout Bison once at the
+start of every year by running `make update-copyright'. However, before
+a release, it's good to verify that it's actually been run. Besides the
+copyright statement for each Bison file, check the copyright statements
+that the skeletons insert into generated parsers, and check all
+occurrences of PACKAGE_COPYRIGHT_YEAR in configure.ac.
** Update NEWS
The version number, *and* the date of the release (including for
** Update ChangeLog
Should have an entry similar to `Version 1.49b.'.
-** Update configure.ac
-Be sure PACKAGE_COPYRIGHT_YEAR is up-to-date.
-
** 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:
make RELEASE_TYPE=alpha gpg_key_ID=F125BDF3 announcement
-where alpha can be replaced by beta or major and F125BDF3 should be replaced
-with your key ID. For an example of how to fill out the template, search the
-mailing list archives for the most recent release announcement.
+where alpha can be replaced by beta or stable and F125BDF3 should be
+replaced with your key ID.
-Complete/fix the announcement file, and send it at least to
-info-gnu@gnu.org (if a real release, or a ``serious beta''),
-bug-bison@gnu.org, help-bison@gnu.org, bison-patches@gnu.org,
-and coordinator@translationproject.org.
+Complete/fix the announcement file. The generated list of recipients
+(info-gnu@gnu.org, bug-bison@gnu.org, help-bison@gnu.org,
+bison-patches@gnu.org, and coordinator@translationproject.org) is
+appropriate for a stable release or a ``serious beta''. For any other
+release, drop at least info-gnu@gnu.org. For an example of how to fill
+out the rest of the template, search the mailing list archives for the
+most recent release announcement.
-Send the same announcement on the comp.compilers newsgroup by sending
-email to compilers@iecc.com. Do not make any Cc as the moderator will
-throw away anything cross-posted or Cc'ed. It really needs to be a
-separate message.
+For a stable release, send the same announcement on the comp.compilers
+newsgroup by sending email to compilers@iecc.com. Do not make any Cc as
+the moderator will throw away anything cross-posted or Cc'ed. It really
+needs to be a separate message.
** Bump the version number
In configure.ac. Run `make'. So that developers don't accidentally add new
-----
-Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009
-Free Software Foundation, Inc.
+Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010 Free
+Software Foundation, Inc.
This file is part of GNU Bison.