* Some hints for debugging test failures or trying to understand the
(complex) test infrastructure.
- - You may want a simple test just to exercise the setup; t/amassign.sh
- is such a test. For a simple test that runs automake twice (sometimes
- useful in finding concurrency failures), try t/nodef.sh.
-
- The t/ax/ dir contains most of the test infrastructure files.
+ - You may want to try a simple test just to exercise the setup;
+ t/amassign.sh is such a test. For a simple test that runs automake
+ twice (sometimes useful in finding concurrency failures), try
+ t/nodef.sh.
+
- To trace the (complex) test initialization code, change the set -e
to set -ex (or whatever you wish) in t/ax/test-init.sh.
Automake itself enables -x for the *.log and test-suite.log files,
* Check NEWS; in particular, ensure that all the relevant differences
with the last release are included.
-* Create an announcement message with "make announcement". Edit the
- generated 'announcement' file appropriately, in particularly filling
- in by hand any "TODO" left in there. It's useful to do this early,
- because carefully writing the announcement can easily bring to light
- things that still need to be worked on.
-
-* Update the version number in configure.ac. Leading up to a release,
+* Update the AC_INIT version number in configure.ac. Leading up to a release,
say 1.17, pretests should be numbered from 1.16.90. Even numbers
(1.16.90, 1.16.92, ...) should be the pretest releases; odd numbers
(1.16.91, 1.16.93, ...) should be only the development versions.
Before 1.17 (July 2024), we used suffixed letters for pretests,
as is traditional, but deficient sorting algorithms did not like that.
+* If making a minor or major release (1.x), also update APIVERSION
+ in configure.ac.
+
+* Create an announcement message with "make announcement". Edit the
+ generated 'announcement' file appropriately, in particularly filling
+ in by hand any "TODO" left in there. It's useful to do this early,
+ because carefully writing the announcement can easily bring to light
+ things that still need to be worked on.
+
* Run these commands, in this order (as mentioned, adjust -j as desired):
make bootstrap
make -j12 check keep_testdirs=yes
because that command will remove *all* the files that are not tracked
by git! Run git status first to ensure all removals are ok.
-* Create the automated part of the announcement with the announce-gen
- script that is part of gnulib:
+* Create additional info for the announcement with the announce-gen
+ script that is part of gnulib (it requires the release tarball):
pkg=automake
prever=1.16.92
newver=1.16.94
# along with this program. If not, see <https://www.gnu.org/licenses/>.
AC_PREREQ([2.69])
-AC_INIT([GNU Automake], [1.16.93], [bug-automake@gnu.org])
+AC_INIT([GNU Automake], [1.17], [bug-automake@gnu.org])
AC_CONFIG_SRCDIR([bin/automake.in])
AC_CONFIG_AUX_DIR([lib])
# The API version is the base version. We must guarantee
# compatibility for all releases with the same API version.
-APIVERSION=1.16
+APIVERSION=1.17
AC_SUBST([APIVERSION])
AC_SUBST([pkgvdatadir], ["\${datadir}/$PACKAGE-$APIVERSION"])
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.16'
+[am__api_version='1.17'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.16.93], [],
+m4_if([$1], [1.17], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.93])dnl
+[AM_AUTOMAKE_VERSION([1.17])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])