release (x.y.z), say 1.17.1, we would have 1.17.0.91 for the initial
post-release development version, 1.17.0.92 for the first pretest,
etc. (Just "make" will fail after this; do "make bootstrap", as below.)
-
+
Before 1.17 (July 2024), we used suffixed letters for pretests, as is
traditional, but deficient sorting algorithms did not like that. The
code in lib/Automake/Version.pm, along with the regexp in
tarballs (again, so hopefully no changes have been made in the
meantime), and invoke the 'gnupload' script sign and upload them to
the correct locations.
-
+
There can be a delay of up to several minutes before the new files
appear on the server.
if it is an alpha or beta release, announcement should be sent also
to <platform-testers@gnu.org>, to maximize the possibility of early
testing on the widest variety of systems.
-
+
Finally, copy an abridged version of the announcement into the NEWS
feed at: <https://savannah.gnu.org/projects/automake>. Be sure to
link a version to the complete announcement (as archived at any of the
instructions in
https://gnu.org/prep/maintain/maintain.html#Automated-Upload-Registration.
The FSF sysadmins may need to be reminded to install new keys.
-
+
A preliminary step is to check
https://savannah.gnu.org/project/release-gpgkeys.php?group=automake
which has a link to download automake-keyring.gpg; the new key should
- The test infrastructure sets the CONFIG_SITE environment variable to
/dev/null, to avoid the local system's Autoconf site defaults from
breaking the test environment. (bug#76622)
-
+
- AM_SILENT_RULES once again always ends with a newline. (bug#72267)
- AM_SANITY_CHECK now outputs "no" on failure, so that a complete line
sub parse_ACLOCAL_PATH ()
{
return if not $aclocal_path;
-
+
# Directories in ACLOCAL_PATH should take precedence over system
# directories, so we use unshift. However, directories that
# come first in ACLOCAL_PATH take precedence over directories
# coming later, which is why the result of split is reversed.
-
+
# OS/2 and Windows (but not Cygwin, etc.) use ; for the path separator.
# Possibly it would be cleaner to use path_sep from Config,
# but this seems simpler.
my $path_sep = $^O =~ /^(os2|mswin)/i ? ';' : ':';
-
+
foreach my $dir (reverse split $path_sep, $aclocal_path)
{
unshift (@system_includes, $dir) if $dir ne '' && -d $dir;
{
require_conf_file ($required_aux_file{$file}->get, FOREIGN, $file)
}
-
+
my $auxdir_install_dot_sh = "$config_aux_dir/install.sh";
# Maybe there is a way to report the line number of the
# AC_CONFIG_AUX_DIR call in configure.ac? Don't know.
@code{LT_INIT} won't be defined.
The best solution is to run @command{libtoolize} in the tree that is
-using the separately-installed Automake. That will copy
+using the separately-installed Automake. That will copy
@file{libtool.m4} and the other Libtool M4 files and scripts into your
package, including @file{ltmain.sh} (see previous section). If you
have subpackages that use Libtool independently, you'll need to run
# we check for $var being defined because NetworkManager and other
# packages use the strange construct $().
# https://lists.gnu.org/archive/html/automake/2024-06/msg00085.html
-
+
# The occurrence may look like $(string1[:subst1=[subst2]]) but
# we want only 'string1'.
$var =~ s/:[^:=]*=[^=]*$//;
#!/bin/sh
# py-compile - Compile a Python program
-scriptversion=2025-06-18.21; # UTC
+scriptversion=2026-04-27.20; # UTC
# Copyright (C) 2000-2026 Free Software Foundation, Inc.
exit 0
fi
fi
-
+
usage_error ()
{
echo "$me: $*" >&2
# Don't try 1 sec, because if 0.01 sec and 0.1 sec don't work,
# - 1 sec is not much of a win compared to 2 sec, and
# - it takes 2 seconds to perform the test whether 1 sec works.
-#
+#
# Instead, just use the default 2s on platforms that have 1s resolution,
# accept the extra 1s delay when using $sleep in the Automake tests, in
# exchange for not incurring the 2s delay for running the test for all
# everything else supports the subsecond mtimes, but make doesn't;
# notably on macOS, which ships make 3.81 from 2006 (the last one
# released under GPLv2). https://bugs.gnu.org/68808
- #
+ #
# We test $MAKE if it is defined in the environment, else "make".
# It might get overridden later, but our hope is that in practice
# it does not matter: it is the system "make" which is (by far)
for target in $targets; do
grep "${target}-local" Makefile.in # For debugging.
-
+
# This grep fails, thus the test is listed in XFAIL.
# We're checking that (e.g.) all-am does not depend on all-local,
# but why?
if test -n "$am_cv_filesystem_timestamp_resolution"; then
#echo "$BASH_SOURCE: amftr=$am_cv_filesystem_timestamp_resolution" >&2
MTIME_RESOLUTION=$am_cv_filesystem_timestamp_resolution
-
+
elif test -n "$MTIME_RESOLUTION"; then
#echo "$BASH_SOURCE: M_R=$MTIME_RESOLUTION" >&2
# This is normal when running tests: the cache variable is
# https://lists.gnu.org/archive/html/automake/2024-06/msg00054.html
# It seems a better fix would be to have Automake (in sanity.m4) figure
# out the need for sleep even when AC_OUTPUT is not used.
-#
+#
# In general, the problem is when the mtime resolution is 1 second (or
# more) and the configure file is created less than 1 second ago, which
# happens routinely in the tests, and for many fast-enough configure
# scripts in other packages, too.
-#
+#
# At any rate, with this set to "sleep 1", there were still random
# parallelization failures; setting am_cv_sleep_fractional_seconds=no
# as above was still needed.
. test-init.sh
# the tests are almost the same, so do a loop with a couple conditionals.
-#
+#
# test-init.sh creates configure.ac with an AM_INIT_AUTOMAKE call with
# no options. The default is [no-no-]dist-built-sources, i.e., distdir
# does depend on $(BUILT_SOURCES), so test that first. (There is no
# Automake option named dist-built-sources, only --no-no-dist-built-sources.)
-#
+#
# The second time around, add the no-dist-built-sources option,
# and the distdir target should not depend on anything.
#
# If $(libdir) or $(pyexecdir) is the empty string, then nothing should
# be installed there, and in fact libtool will refuse to link due to the
# missing argument for -rpath:
-# /bin/sh ./libtool [...] -rpath libfoo.lo
+# /bin/sh ./libtool [...] -rpath libfoo.lo
# libtool: error: only absolute run-paths are allowed
# (Hopefully the error message will be improved.)
# Thus this test is expected to fail.
-#
+#
# This test exercises some of the libtool code paths.
required='cc libtoolize'
# Check that the user can override the tar program used by "make dist"
# at runtime, by redefining the 'TAR' environment variable.
-#
+#
# Currently this works only when the tar format used is 'v7';
# as of 2025 (automake-1.18), this is no longer the default,
# so force that format in our test setup.
# Use of uninitialized value $var in string eq at
# .../lib/Automake/Variable.pm line 754, <GEN2> line 3.
# (in scan_variable_expansions)
-#
+#
# This showed up with the NetworkManager and other packages in Fedora:
# https://lists.gnu.org/archive/html/automake/2024-06/msg00085.html
# (The actual purpose of the "$()" is unclear.)