| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is for https://bugs.gnu.org/58102.
(By the way, the previous two commits were for bugs
58026 (silent .elc compilation) and
58025 (load bytecomp), respectively, but I forgot to mention them.)
* m4/lispdir.m4 (AM_PATH_LISPDIR): omit -Q option.
Also (from karl), use -no-site-file (one hyphen) for consistency
with the other options.
* NEWS: mention this.
* doc/automake.texi (Hard-Coded Install Paths): likewise.
|
|
|
|
|
|
|
|
|
|
|
| |
* m4/local.mk (dist_automake_ac_DATA): Add both rmf.m4 and xargsn.m4.
Building grep from "make maintainer-clean" state, failed like this:
configure.ac:41: warning: _AM_PROG_RM_F is m4_require'd but not\
m4_defun'd
configure.ac:41: warning: _AM_PROG_XARGS_N is m4_require'd but not\
m4_defun'd
configure:5058: error: possibly undefined macro: _AM_PROG_RM_F
configure:5059: error: possibly undefined macro: _AM_PROG_XARGS_N
|
|
|
|
|
|
|
|
| |
Fixes automake bug https://bugs.gnu.org/20713.
If `id` fails, display a specific warning message to the user.
* m4/tar.m4: Check $am_uid & $am_gid if they're unknown.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes automake bug https://bugs.gnu.org/32868.
The AM_SILENT_RULES macro defines all the silent-rules related setup.
It's also called by users to change the default verbosity level. This
leads to a quirk where automake calls it, expands the full context,
and then users call it, and it's fully expanded again.
Instead, let's rename AM_SILENT_RULES to _AM_SILENT_RULES and move the
initialization logic to late in the configure stage. This allows the
user-centric AM_SILENT_RULES call to expand into a single line to set
the default verbosity.
* m4/init.m4: Switch to _AM_SILENT_RULES.
* m4/silent.m4: Rename AM_SILENT_RULES to _AM_SILENT_RULES. Delay
evaluation of AM_SILENT_RULES to the end. Define new AM_SILENT_RULES to
set default rules verbosity.
* t/silent-defaults.sh: New tests.
* t/list-of-tests.mk: Add t/silent-defaults.sh.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes automake bug https://bugs.gnu.org/53340.
If the system has xargs, then utilize it to uninstall files to stay
within long command line limits. If the system doesn't have xargs,
fall back to running the remove command one at a time. Since every
reasonable system should have `xargs -n`, and POSIX requires it, the
fallback probably rarely gets used, so don't bother optimizing.
* lib/am/inst-vars.am: Use am__xargs_n to call rm -f on the files.
* lib/am/python.am: Drop am__base_list and for loop and let the
am__uninstall_files_from_dir break up the long command lines.
* m4/init.m4: Call _AM_PROG_XARGS_N.
* m4/xargsn.m4: New test for `xargs -n`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes automake bug https://bugs.gnu.org/10828.
Delete the configure check that would abort if `rm -f` does not work,
and delete the plans to make this a hard requirement in the future.
Instead, test to see if `rm -f` fails w/out arguments. If it does,
define am__rm_f such that it always passes at least the "" argument
when deleting files. If it doesn't fail, then we can omit the "".
Then go through lib/am/ and update places where we use the pattern
`test -z ... || rm -f ...` and replace with $(am__rm_f).
* NEWS: Mention support for `rm -f` w/out arguments.
* PLANS/rm-f-without-args.txt: Remove.
* lib/am/check.am: Use new $(am__rm_f) helper.
* lib/am/clean.am: Likewise.
* lib/am/header-vars.am: Likewise.
* lib/am/inst-vars.am: Likewise.
* lib/am/libs.am: Likewise.
* lib/am/ltlib.am: Likewise.
* lib/am/progs.am: Likewise.
* lib/am/texinfos.am: Likewise.
* m4/init.m4: Delete `rm -f` checks and call _AM_PROG_RM_F.
* m4/rmf.m4: Define new _AM_PROG_RM_F macro.
* t/rm-f-probe.sh: Update test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current code sleeps at least 1 second to make sure the generated
files are strictly newer than the source files. It does this for a
few reasons: POSIX only guarantees that `sleep` accept integers, and
filesystems have a history (c.f. Windows) of bad timestamp resolution.
For the first part, we can easily probe sleep to see if it accepts a
decimal number with a fractional part -- just run `sleep 0.001`.
For the second part, we can create two files and then run sleep in a
loop to see when one is considered newer than the other.
For many projects, this 1 second delay is largely amortized by the
rest of the configure script. Autoconf lends itself to being both
large & slow. But in projects with many smallish configure scripts
with many cached vars, the time to rerun is dominated by this single
sleep call. For example, building libgloss against a compiler with
many (60+) multilib configurations, we see:
[Using sleep 1]
$ time ./config.status
real 2m28.164s
user 0m33.651s
sys 0m9.083s
[Using sleep 0.1]
$ time ./config.status
real 0m39.569s
user 0m33.517s
sys 0m8.969s
And in case anyone wonders, going below 0.1s doesn't seem to make a
statistically significant difference, at least in this configuration.
It appears to be within "noise" limits.
[Using sleep 0.001]
$ time ./config.status
real 0m39.760s
user 0m33.342s
sys 0m9.080s
* NEWS: Mention updated timestamp checking.
* m4/sanity.m4: Determine whether `sleep` accepts fractional seconds.
Determine (roughly) the filesystem timestamp resolution. Use this to
sleep less when waiting for generated file timestamps to update.
|
|
|
|
|
|
|
|
| |
When rerunning configure in an existing build dir, cache the previous
results about environment settings. There should be no need to retest
these in a dir that has already been configured.
* m4/sanity.m4: Cache sanity results.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes automake bug https://bugs.gnu.org/21547.
If users have interactive site file logic, the lispdir probing can
hang, as can the compilation of elisp files. Use --no-site-file to
disable loading any of that possible user logic.
* NEWS: Note emacs --no-site-file change.
* doc/automake.texi: Run emacs with --no-site-file.
* lib/am/lisp.am: Likewise.
* m4/lispdir.m4: Likewise.
|
|
|
|
|
|
|
|
| |
The new autoconf AC_PROG_AR macro has similar logic to what we have in
AM_PROG_AR, but less than what we need (since autoconf doesn't support
the MS archiver), so make sure we are run before AC_PROG_AR.
* m4/ar-lib.m4: Call AC_BEFORE for AC_PROG_AR.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes automake bug https://bugs.gnu.org/53530.
Based on the cadence of Automake releases, add the current Python
release (3.10), the current Python development (3.11), and then 4
more versions on top of that. It doesn't hurt to check for a few
extra versions here since this is the fallback logic when the main
`python` and `python3` programs aren't found.
* m4/python.m4: Add python3.10 - python3.15.
* NEWS: Mention new Python versions.
|
| |
|
|
|
|
|
|
| |
AC_DIAGNOSE was marked obsolete with autoconf-2.62 in 2008.
* m4/obsolete.m4: Change AC_DIAGNOSE to m4_warn.
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16i.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16.5.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
* NEWS: Record release version.
|
|
|
|
|
|
|
|
|
| |
* NEWS: Remove trailing white space.
* NEWS-2.0: Likewise.
* contrib/checklinkx: Likewise.
* doc/local.mk (chlx_args): Likewise.
* m4/python.m4: Likewise.
* t/test-extensions-empty.sh: Likewise.
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16h.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16g for snapshot.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
|
|
|
|
|
|
| |
--with-python-sys-prefix is specified; otherwise, return to
previous behavior of using the GNU ${prefix} and ${exec_prefix}.
* doc/automake.texi (Python): document the new behavior.
* m4/python.m4 (AM_PATH_PYTHON): conditionalize use of Python's
sys.* values on the new option --with-python-sys-prefix.
* t/python-prefix.sh: doc update.
* t/python-vars.sh: test both GNU and Python prefix values.
* NEWS: mention this.
|
|
|
|
|
|
|
|
|
| |
This change addresses https://bugs.gnu.org/50046.
Patch posted:
https://lists.gnu.org/archive/html/automake-patches/2021-08/msg00000.html
* m4/init.m4: Make attempts to expand AM_INIT_AUTOMAKE more than
once a fatal error at m4 time.
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16f.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16.4.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
* NEWS: Record release version.
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16e for snapshot.
* m4/amversion.m4: Regenerate.
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16d for snapshot.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for PYTHON_PREFIX and PYTHON_EXEC_PREFIX; new configure options
--with-python_prefix and --with-python_exec_prefix to set explicitly.
This change fixes https://bugs.gnu.org/35322.
* m4/python.m4 (AM_PATH_PYTHON): use Python's sys.prefix and
sys.exec_prefix for PYTHON_PREFIX and PYTHON_EXEC_PREFIX,
instead of $prefix and $exec_prefix. But use a variable
reference to ${prefix} if it is contained within sys.prefix;
similarly for exec_prefix. Also support new configure options
to set explicitly.
(PYTHON_PREFIX, PYTHON_EXEC_PREFIX): AC_SUBST these.
(am_cv_python_pythondir): use our new $am_cv_python_prefix,
substituting ${PYTHON_PREFIX}.
(am_cv_python_pyexecdir): likewise.
* doc/automake.texi (Python): PYTHON_PREFIX, PYTHON_EXEC_PREFIX,
document new approach.
* t/instmany-python.sh: set PYTHON_PREFIX as needed.
* t/python-vars.sh (PYTHON_EXEC_PREFIX, PYTHON_PREFIX): also set from
Python's sys.{exec_,}prefix; use ${PYTHON_{EXEC,}PREFIX} instead
of ${exec_,}prefix.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Autoconf 2.70 (released last week) makes a few changes that broke Automake’s
expectations, mostly in the test suite. This patch addresses two of the
problems:
- autoconf now issues a warning if fed a configure script that doesn’t invoke
both AC_INIT and AC_OUTPUT; this, plus a problem with system-provided
tools (still under investigation) broke the *build* on macOS; it also
causes a couple of spurious testsuite failures.
- AC_PACKAGE_NAME and AC_PACKAGE_VERSION are now defined unconditionally.
AM_INIT_AUTOMAKE needs to use m4_ifset instead of m4_ifdef to diagnose
the obsolete use of AC_INIT with fewer than two arguments. (This change
is compatible with autoconf 2.69; m4_ifset is much older, and it means
‘defined with a non-empty value’.)
* configure.ac: Use both AC_INIT and AC_OUTPUT in test configure scripts.
* t/deprecated-acinit.sh, t/init.sh: Likewise.
* m4/init.m4 (AM_INIT_AUTOMAKE): Use m4_ifset, not m4_ifdef, to detect
AC_PACKAGE_NAME and/or AC_PACKAGE_VERSION not having a value.
|
|
|
|
|
|
|
|
|
|
| |
This change fixes https://bugs.gnu.org/45013.
* m4/init.m4: add default settings and AC_SUBST calls for the variables
`CTAGS', `ETAGS' and `CSCOPE'.
* lib/am/tags.am: remove default settings of the above variables.
* doc/automake.texi (Tags): mention and index.
* NEWS: mention.
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16b.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16.3.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
* NEWS: Record release version.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes https://bugs.gnu.org/44239
(and https://bugzilla.redhat.com/show_bug.cgi?id=1889732).
* m4/python.m4: use print('%u.%u' % sys.version_info[:2]) for
the version number instead of merely sys.version[:3], so the
numbers are treated as numbers.
* t/python-vars.sh (PYTHON_VERSION): Likewise.
* doc/automake.texi: Document it.
* NEWS: mention it. (Minor tweaks from Karl Berry.)
|
|
|
|
|
| |
* m4/vala.m4: check `valac --api-version', not `valac --version'.
* doc/automake.texi: update documentation.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes https://bugs.gnu.org/14196.
* m4/missing.m4 (AM_MISSING_HAS_RUN): always quote the
invocation (not just if $am_aux_dir contains space or tab), in
case $am_aux_dir contains () or other metachars not rejected by
AM_SANITY_CHECK; quoting with '...' suggested by Jim Meyering.
* t/man6.sh (HELP2MAN): adjust grep since missing value
is quoted now.
* t/am-missing-prog.sh: likewise.
|
|
|
|
|
|
| |
* NEWS: Add header line for next release.
* configure.ac (AC_INIT): Bump version number to 1.16b.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16.2.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
* NEWS: Record release version.
|
|
|
|
|
|
|
|
| |
This change fixes https://bugs.gnu.org/35848.
* m4/depout.m4: Add suggestion to try GNU make to the error message.
Original patch at
https://lists.gnu.org/archive/html/automake-patches/2019-05/msg00000.html
|
| |
|
| |
|
|
|
|
|
|
| |
* NEWS: Add header line for next release.
* configure.ac (AC_INIT): Bump version number to 1.16a.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
| |
* configure.ac (AC_INIT): Bump version number to 1.16.1.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
* NEWS: Record release version.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes automake bug#28160.
Since AM_PYTHON_PATH macro takes no maximum version argument, there is
no need to generate _AM_PYTHON_INTERPRETER_LIST dynamically, like what
was previously done by the reverted commit
1d60fb72168e62d33fe433380af621de64e22f23. We could rely on M4 to
generate this list statically however this is likely to be a complex
solution that would not improve maintainability.
* m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Add 'python3.7',
'python3.8', and 'python3.9'.
* NEWS: Update.
|
|
|
|
| |
This reverts commit 1d60fb72168e62d33fe433380af621de64e22f23.
|
|
|
|
|
|
| |
* NEWS: Add header line for next release.
* configure.ac (AC_INIT): Bump version number to 1.16a.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
|
|
|
|
|
|
| |
* configure.ac (AC_INIT, APIVERSION): Bump version number to 1.16.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
* NEWS: Record release version.
|
|
|
|
|
|
|
|
|
|
|
|
| |
_AM_PYTHON_INTERPRETER_LIST is used by AM_PYTHON_PATH to autodetect
Python programs whose names correspond to a specific Python
version (e.g. python3.6). Previously this list was updated manually.
The automatic support of newer versions (up to 4.0 excluded) fixes
bug#28160.
* m4/python.m4 (am_py_min_ver, am_py_max_ver): New macros.
(_AM_PYTHON_INTERPRETER_LIST): Generate this list instead of hard-coding
it. Implementation is taken from GNU Pyconfigure.
|
|
|
|
| |
This update has been made with 'make update-copyright'.
|
|
|
|
|
|
|
|
|
|
|
| |
* bin/local.mk: Specify mode name in the first line.
* contrib/t/local.mk: Likewise.
* doc/local.mk: Likewise.
* lib/Automake/local.mk: Likewise.
* lib/am/local.mk: Likewise.
* lib/local.mk: Likewise.
* m4/local.mk: Likewise.
* t/local.mk: Likewise.
|
|
|
|
| |
* m4/init.m4: Change http: to https: in comments.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In Gnulib, Emacs, etc. we are changing ftp: and http: URLs to use
https:, to discourage man-in-the-middle attacks when downloading
software. The attached patch propagates these changes upstream to
Automake. This patch does not affect files that Automake is
downstream of, which I'll patch separately.
Althouth the resources are not secret, plain HTTP is vulnerable to
malicious routers that tamper with responses from GNU servers,
and this sort of thing is all too common when people in some other
countries browse US-based websites. See, for example:
Aceto G, Botta A, Pescapé A, Awan MF, Ahmad T, Qaisar
S. Analyzing internet censorship in Pakistan. RTSI
2016. https://dx.doi.org/10.1109/RTSI.2016.7740626
HTTPS is not a complete solution here, but it can be a significant
help. The GNU project regularly serves up code to users, so we should
take some care here.
|