kc3-lang/automake/m4

Branch :


Log

Author Commit Date CI Message
bc1042e7 2024-06-19 10:02:39 automake: insane typo * instead of 2. * m4/sanity.m4 (AM_SANITY_CHECK): managed to replace 2 with * in ls -t test. Clearly I have gone insane.
cde0e3bb 2024-06-19 09:41:22 doc: rewrite subsecond NEWS entry, sanity.m4 "make" testing wrong, etc. * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): mention that testing of "make" is wrong here; but $(MAKE) is not available? Do some special pleading that it won't matter in practice; we'll see. https://lists.gnu.org/archive/html/automake/2024-06/msg00051.html (AM_SANITY_CHECK): use $[]* instead of $[*]2 to avoid the confusing apparent (but not) use of shell arrays; the square brackets are parsed off by m4. * lib/am/check.am (output_system_information): en passant, mention that $(AWK) should always be defined since AC_PROG_AWK is part of AM_INIT_AUTOMAKE nowadays. * NEWS: rewrite subsecond NEWS entry:workaround, more references.
fad36f78 2024-06-17 15:38:11 automake: omit 1s test in _AM_FILESYSTEM_TIMESTAMP_RESOLUTION, for speed. From https://lists.gnu.org/archive/html/automake/2024-06/msg00055.html plus https://lists.gnu.org/archive/html/automake/2024-06/msg00054.html. * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): Don't test whether 1 sec works; instead just accept the 2 sec delay in the Automake test $sleep in exchange for not incurring the 2s delay of running the test for all packages on 1s-resolution platforms. Platforms that support subsecond mtimes will still use them.
df2ff7cb 2024-06-12 18:24:14 automake: omit make subsecond tests if at one-second resolution. Partially ameliorates report from Bruno Haible, thread at https://lists.gnu.org/archive/html/automake/2024-06/msg00015.html * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): if resolution is only one second, assume make works, to avoid several sleeps.
1d35638b 2024-06-07 08:41:45 maint: spelling and whitespace fixes Most of these spelling fixes are just to comments and documentation. However, some affect tests as follows: * t/cond36.sh (tparse.h): Fix misspelling of dependency. * t/disthook.sh: Fix misspelling of file. * t/help3.sh: Fix misspelling of long option. * t/instdir-ltlib.sh: Fix misspellings of macro names. This causes the test to fail, so someone with libtool expertise needs to look into this. * t/tap-no-spurious-numbers.sh (highno): Fix misspelling of shell var.
85efe505 2024-06-07 07:56:25 maint: fix version mismatch * m4/amversion.m4 (AM_AUTOMAKE_VERSION) (AM_SET_CURRENT_AUTOMAKE_VERSION): Bump to 1.16.91 (auto-updated).
23e69f6e 2024-05-27 12:34:35 test: check that subsecond mtime works with make. Trying to fix https://bugs.gnu.org/68808. * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): check that make works with subsecond mtimes, as well as sleep and ls. (Known to fail with the make 3.81 that ships with macOS.) * configure.ac (MTIME_RESOLUTION): notice if it erroneously expands to the empty string, i.e., fall back to 1 if $am_cv_filesystem_timestamp_resolution ended up being unset. * t/ax/test-defs.in (MTIME_RESOLUTION): also fall back to 1 if the variable to not set, with a message. Fix other typos en passant. * HACKING: tweak.
2838316b 2024-01-21 08:57:50 maint: use 1.xx.90-style pretest versions. In response to https://bugs.gnu.org/54412. * configure.ac (AC_INIT): 1.16.90. * m4/amversion.m4: Likewise (auto-updated).
70128b8b 2024-01-20 14:33:14 python: use deb_system instead of posix_local if prefix = /usr. Continuing with https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54412. * m4/python.m4 (AM_PATH_PYTHON) <am_python_setup_scheme>: factor out common scheme-related code to this new variable. If the scheme is posix_local and the prefix is /usr, use deb_system (for Debian package builds). * NEWS: more explanations (and unrelated references, en passant).
ac64ce26 2024-01-17 14:48:13 python: use posix_prefix instead of posix_local on Debian. From https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54412#17. (Patch slightly adapted by Bogdan from original by Gianfranco, as posted by Stefano Rivera in message#14.) * m4/python.m4 (AM_PATH_PYTHON): replace Debian's posix_local scheme with posix_prefix. * doc/automake.texi (Python) <pythondir>: say a bit more. * NEWS: mention this.
22ecc131 2024-01-17 09:51:40 automake: a millisecond is too fast for subsecond-mtime. This patch is from https://bugs.gnu.org/68325. * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): don't try for a millisecond; make a hundredth of a second the fastest we'll go. Apparently there are plenty of systems which supposedly support subsecond-mtimes down to the millisecond and yet randomly fail parallelized tests. For example: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=68119#18 Maybe the tests themselves need fixing. (The ones that run autotools multiple times in succession.) A work in progress.
3cd8f545 2024-01-13 18:09:02 python: add 3.20 - 3.16 to the version search list. * m4/python.m4: Add python3.20 - python3.16. * NEWS: Mention these versions too.
b80b5c47 2024-01-01 11:29:06 maint: make update-copyright
0249be1e 2023-12-25 15:38:15 test: force long sleep with explicit cache variable setting. From https://bugs.gnu.org/67670. * t/ax/test-defs.in: when MTIME_RESOLUTION is set to 1 because automake/autom4te do not support subsecond-mtime, also set am_cv_sleep_fractional_seconds=false. Otherwise the random parallel test failures from given bug and others return. * m4/sanity.m4 (_AM_SLEEP_FRACTIONAL_SECONDS): reformat. (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): elide "the" in AC_CACHE_CHECK. * t/amassign.sh: end with :. * HACKING: more on debugging tests. * NEWS: update.
5883fcb1 2023-12-20 08:20:26 maint: post-release administrivia. * configure.ac (AC_INIT): now 1.16j, since 1.16i pretest was released (on 2023-12-18). * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
cfdb83d4 2023-12-10 09:50:51 automake: again revise file mtime resolution support. This patch is from https://bugs.gnu.org/67670. In order for the Automake testsuite to be able to use sub-second delays to control whether certain files are considered newer than others, five(!) separate pieces of software all need to cooperate: automake itself, autoconf's internal `autom4te' utility, the Perl interpreter and its libraries, the sleep(1) shell utility, and finally the filesystem hosting the build directory. The existing tests for this are a combination of inadequate and incorrect. This patch, in conjunction with a patch just committed to Autoconf trunk, https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=39d96e6fff7ceae63b823872602caf4d255a38c8 should make everything much more robust, as follows: - _AM_FILESYSTEM_TIMESTAMP_RESOLUTION is completely rewritten. It no longer looks for autom4te at all, because this macro is invoked unconditionally from AM_INIT, so *every* project that uses Automake would get this test that's only relevant to Automake's own testsuite. Also, it tries sleeping for as little as one millisecond (smaller delays consistently get rounded up to 1ms on my computer and I expect that's universal), it should accurately detect FAT's two-second resolution now, and it should not be tripped up anymore by running at precisely the moment that will make a 0.1s sleep cross a 1s boundary (this may sound unlikely but it used to cause a couple of test failures *every time* I ran the automake testsuite on a network filesystem that only supported 1s resolution). - In support of the above, the test for working ls -t moved from AM_SANITY_CHECK to _AM_FILESYSTEM_TIMESTAMP_RESOLUTION. This allowed me to simplify the test for $srcdir/configure being older than a freshly created file. - If automake is capable of reading high-resolution file modification timestamps from the operating system, it prints `Features: subsecond-mtime' as the second line of --version output. (We can't just assume this works for sufficiently new automake, because it depends on whether the Perl interpreter provides this capability, and that's not a simple question of which version of Perl you have, either.) - The Autoconf patch mentioned above adds the same annotation to the output of autom4te --version. - Finally, t/ax/test-defs.in looks for the `Features: subsecond-mtime' string from both automake and autom4te and resets the sleep time to one second if it's not there. There might be a better place to put this, somewhere it'll execute every time the *overall testsuite* is invoked rather than once for each test, but I couldn't find one. Tested on x86-64-linux with development automake and development autoconf. Previous discussion: - https://lists.gnu.org/archive/html/automake/2023-03/msg00000.html - https://lists.gnu.org/archive/html/automake/2023-04/msg00002.html - https://lists.gnu.org/archive/html/automake/2023-12/msg00005.html - https://debbugs.gnu.org/cgi/bugreport.cgi?bug=64756 * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): Rewrite for greater reliability. Don't probe autom4te at all here. Check for working ls -t here. (AM_SANITY_CHECK): Do not cache the result. Do not check for working `ls -t' here. Disentangle control flow in the loop probing the relative ages of build and source directory. * lib/Automake/FileUtils.pm: Sync from autoconf. * bin/automake.in (version): Include `Features: subsecond-mtime' in the output if $Automake::FileUtils::subsecond_mtime is true. * configure.ac: Rename the substitution variable MODIFICATION_DELAY to MTIME_RESOLUTION. * t/ax/test-defs.in: Require both $AUTOMAKE and $AUTOM4TE to report support for high-resolution timestamps before setting $sleep to delay for less than one second. * NEWS: Update info.
6b4304c1 2022-01-26 06:36:32 python: prioritize python 3.x over 2.x Since Python 2.x went EOL years ago, stop searching for it before any of the Python 3 versions. * m4/python.m4: Move python2 after all python3 versions. * NEWS: Mention update in version search.
8cdbdda5 2023-11-21 08:30:00 automake: make the ARFLAGS default 'cr' instead of 'cru'. In some GNU/Linux distributions people started to compile 'ar' binary with --enable-deterministic-archives (binutils project). That, however, in combination with our previous long time working default AR_FLAGS=cru causes warnings on such installations: ar: `u' modifier ignored since `D' is the default (see `U') The 'u' option (at least with GNU binutils) did small optimization during repeated builds because it instructed 'ar' to not open/close unchanged *.o files and to rather read their contents from old archive file. However, its removal should not cause a big performance hit for usual workflows. Distributions started using --enable-deterministic-archives knowing that it would disable the 'u', just to rather have a bit more deterministic builds. Also, to justify this change a bit more, keeping 'u' in ARFLAGS could only result in many per-project changes to override Automake's ARFLAGS default, just to silence such warnings. Fixes bug#20082. Reported by Eric Blake. * bin/automake.in (handle_libraries): Use 'ARFLAGS=cr' by default. * doc/automake.texi (Building a library): Mention the changed ARFLAGS default. (@c LocalWords): Replace 'cru' with 'cr'. * m4/ar-lib.m4 (AM_PROG_AR): Cut out 'cru' string into separate ARFLAGS variable with new default 'cr'. * NEWS: Document.
d5d5707d 2023-11-15 10:35:40 m4: use AS_IF instead of ! builtin. * m4/sanity.m4: Switch `if !` to AS_IF.
5c85c782 2023-11-01 22:20:05 fix: syntax error in sanity.m4 * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): Fix syntax error from preceding change: add a missing double quote.
581e0ae4 2023-11-01 18:03:36 doc: references for non-fractional timestamps. The non-fractional fix from Bogdan fixes https://bugs.gnu.org/64756, discussed earlier in a long thread on automake in 2023-03 and 2023-04; references in the bug. Jacob Bachmeyer contributed to the analysis and fixes. * m4/sanity.m4:
b6fa7311 2023-11-01 17:40:47 m4: fall back to non-fractional timestamps with older autom4te. * m4/sanity.m4 (_AM_FILESYSTEM_TIMESTAMP_RESOLUTION): if HiRes is not present in Autom4te/FileUtils.pm, do not consider fractional sleeps.
7d727188 2023-11-01 17:36:01 m4: syntax fix for lex change. * m4/lex.m4: dnl caused "fiif" in output.
edd08396 2023-11-01 09:18:57 m4: update invocation of AC_PROG_LEX. * m4/lex.m4: Pass on any arguments given to AC_PROG_LEX. * doc/automake.texi: Describe this. * NEWS: Mention this. * THANKS: New contributor.
34bdde96 2023-01-04 02:00:14 maint: make update-copyright
cea8158f 2022-09-27 18:04:20 automake: do not use -Q with emacs invocations. 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.
208f103f 2022-05-23 23:20:37 fix: autoreconf fails due to .m4 files added but not installed * 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
ce3bbbb4 2022-02-24 22:20:53 m4: handle id failures when checking ustar support 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.
d747a66a 2022-02-20 19:06:55 m4: rework silent-rules macros to avoid double expansion 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.
38da1d90 2022-02-17 04:35:03 python: use xargs -n when uninstalling files 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`.
3099097d 2022-02-17 03:50:55 rm: handle -f w/no arguments gracefully 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.
720a1153 2022-02-12 03:41:06 m4: speed up filesystem modification checks 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.
be55eaaa 2022-02-12 02:12:42 m4: cache build env sanity checks 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.
5c9e117c 2022-02-08 00:39:40 elisp: run emacs with --no-site-file 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.
d096d4e6 2022-01-31 02:40:14 AM_PROG_AR: require before AC_PROG_AR 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.
930a9a73 2022-01-26 06:33:19 python: add 3.10 - 3.15 to the version search list 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.
6c8ff6a8 2022-01-12 14:15:12 maint: make update-copyright
6156cd86 2021-12-12 01:07:39 m4: replace AC_DIAGNOSE with m4_warn AC_DIAGNOSE was marked obsolete with autoconf-2.62 in 2008. * m4/obsolete.m4: Change AC_DIAGNOSE to m4_warn.
abe72f96 2021-10-03 20:25:27 maint: Post-release administrivia * configure.ac (AC_INIT): Bump version number to 1.16i. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
18416d64 2021-10-03 19:47:14 version 1.16.5 * configure.ac (AC_INIT): Bump version number to 1.16.5. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). * NEWS: Record release version.
524d9961 2021-10-03 19:48:31 maint: remove trailing white space from a few files * 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.
90bf665a 2021-09-19 19:40:32 maint: Post-release administrivia * configure.ac (AC_INIT): Bump version number to 1.16h. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
49d55448 2021-09-19 18:38:59 maint: adjust version for snapshot * configure.ac (AC_INIT): Bump version number to 1.16g for snapshot. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
56387843 2021-09-19 15:12:27 python: only use Python's sys.* values if the new option --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.
f4a3a70f 2021-08-17 18:26:42 automake: fatal error on second AM_INIT_AUTOMAKE. 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.
770b012b 2021-07-26 12:37:23 maint: Post-release administrivia * configure.ac (AC_INIT): Bump version number to 1.16f. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
39c0005a 2021-07-25 21:59:59 version 1.16.4 * configure.ac (AC_INIT): Bump version number to 1.16.4. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). * NEWS: Record release version.
cdc5372b 2021-07-18 19:34:37 maint: adjust version, post-snapshot * configure.ac (AC_INIT): Bump version number to 1.16e for snapshot. * m4/amversion.m4: Regenerate.
51c8ca10 2021-07-18 18:16:23 maint: adjust version for snapshot * configure.ac (AC_INIT): Bump version number to 1.16d for snapshot. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
a470a47f 2021-07-11 19:19:42 maint: make update-copyright
ed8daa06 2021-05-18 15:11:59 python: use Python's sys.prefix and sys.exec_prefix 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.
ccb57553 2020-12-14 14:50:47 Fix some build and test failures with Autoconf 2.70. 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.
d2ccbd7e 2020-12-05 18:11:55 tags: support setting CTAGS, ETAGS, CSCOPE vars via ./configure. 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.
5ce670d9 2020-11-18 20:19:12 maint: Post-release administrivia * configure.ac (AC_INIT): Bump version number to 1.16b. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
0188451e 2020-11-18 18:08:41 version 1.16.3 * configure.ac (AC_INIT): Bump version number to 1.16.3. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). * NEWS: Record release version.
e21d46fd 2020-10-27 14:33:46 python: determine Python (3.10) version number correctly. 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.)
f832992d 2020-10-21 23:31:46 Improve Vala compiler detection: use API version, not compiler version * m4/vala.m4: check `valac --api-version', not `valac --version'. * doc/automake.texi: update documentation.
74a413ff 2020-09-05 18:12:48 automake: be robust against directories containing (). 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.
104d3a10 2020-03-23 18:43:29 maint: Post-release administrivia * 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").
6774c9b2 2020-03-14 20:21:43 version 1.16.2 * configure.ac (AC_INIT): Bump version number to 1.16.2. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). * NEWS: Record release version.
c3ad6b0b 2020-02-14 18:36:49 cosmetics: improve error message when dependency tracking fails 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
cf27a3df 2020-01-01 11:44:41 maint: make update-copyright
5ae02cc8 2019-10-14 13:46:55 maint: make update-copyright
48c75cb8 2018-03-11 23:24:55 maint: Post-release administrivia * 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").
02c7c2d5 2018-03-11 22:24:54 version 1.16.1 * configure.ac (AC_INIT): Bump version number to 1.16.1. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). * NEWS: Record release version.
9385c161 2018-03-03 12:01:13 python: Support future python version up to 3.9 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.
4ef6c2d1 2018-03-03 12:00:31 Revert "python: Generate python interpreter list" This reverts commit 1d60fb72168e62d33fe433380af621de64e22f23.
b2a9eb09 2018-02-25 22:28:21 maint: Post-release administrivia * 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").
4f73bb80 2018-02-25 20:47:15 version 1.16 * configure.ac (AC_INIT, APIVERSION): Bump version number to 1.16. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). * NEWS: Record release version.
1d60fb72 2018-02-01 13:51:03 python: Generate python interpreter list _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.
bbaa4cdc 2018-01-04 16:19:30 maint: Update copyright years to 2018 This update has been made with 'make update-copyright'.
5e202df2 2017-09-23 12:19:43 maint: Make Emacs use 'makefile-automake-mode' * 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.
a2de0200 2017-09-23 09:36:21 maint: fix two more http: URLs * m4/init.m4: Change http: to https: in comments.
c2757b97 2017-09-19 13:43:07 maint: Reset master
3562e384 2017-09-16 13:03:36 Prefer https: URLs 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.
199e7a44 2017-09-16 13:03:36 Prefer https: URLs 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.
f389ecb8 2017-08-31 19:23:42 Merge branch 'minor'
e94c0186 2017-08-31 14:42:13 build: Rename "Makefile.inc" Makefile fragments to "local.mk" This is done to follow a convention used by a lot of GNU packages. * bin/Makefile.inc: Rename to ... * bin/local.mk: ... this. * doc/Makefile.inc: Rename to ... * doc/local.mk: ... this. * lib/Automake/Makefile.inc: Rename to ... * lib/Automake/local.mk: ... this. * lib/am/Makefile.inc: Rename to ... * lib/am/local.mk: ... this. * lib/Makefile.inc: Rename to ... * lib/local.mk: ... this. * m4/Makefile.inc: Rename to ... * m4/local.mk: ... this. * contrib/t/Makefile.inc: Rename to ... * contrib/t/local.mk: ... this. * t/Makefile.inc: Rename to ... * t/local.mk: ... this. Adapt. * Makefile.am: Adapt.
87becfb2 2017-07-15 15:46:52 python: Add python3.6 This fixes bug#27458. * m4/python.m4 (AM_PATH_PYTHON): Add python3.6.
9ec19184 2017-06-18 19:11:08 maint: Post-release administrivia * NEWS: Add header line for next release. * configure.ac (AC_INIT): Bump version number to 1.15.1a. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
552a2732 2017-06-18 18:28:32 version 1.15.1 * configure.ac (AC_INIT): Bump version number to 1.15.1. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
cc7231cc 2017-06-16 23:07:00 Merge branch 'minor'
c946ae6f 2017-06-16 22:46:16 Merge branch 'micro' into minor
d8add592 2017-03-02 18:55:53 maint: Update copyright years to 2017. This update has been made with 'make update-copyright'.
1370ce5f 2017-01-01 08:34:49 maint: update copyright dates for 2017 * all files: Run this command, using update-copyright from gnulib: UPDATE_COPYRIGHT_FORCE=1 \ UPDATE_COPYRIGHT_USE_INTERVALS=2 \ UPDATE_COPYRIGHT_MAX_LINE_LENGTH=79 \ update-copyright $(git ls-files)
e363f9a4 2016-04-20 15:29:48 python: add python3.5, python3.4 * m4/python.m4 (AM_PATH_PYTHON): Add python3.5, python3.4.
6357a630 2015-01-06 13:17:23 Merge branch 'minor' * minor: deps: fix corner-case "make distclean" bug compile: don't place built object files in $(srcdir), ever ... tests: fix some bugs in an XFAILing test deps: 'subdir-object' option now works when foo_SOURCES contains $(var) NEWS: fix a typo Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
6a675ef1 2014-12-24 10:57:17 deps: 'subdir-object' option now works when foo_SOURCES contains $(var) Following a suggestions of Johan Kristensen, we have config.status use 'make' invocations rather than Makefile-parsing 'sed' hacks to bootstrap the dependency-tracking '.Po' and '.Plo' makefile fragments. To handle the inclusion of such files that are still missing when make is first we basically generate a temporary Makefile without these includes, and call 'make' on that Makefile. This fixes the serious bug bug#13928, which was an hard blocker to make the behavior mandated by the 'subdir-object' active by default (which we want to do in Automake 2.0). The issue has also been reported in bug#15919. * NEWS, THANKS: Update. * bin/automake.in (handle_languages): Add a trailing "marking" comment ("# am--include-marker") to the generated Makefile lines issuing 'include' directives for the dependency-tracking '.Po' and '.Plo' makefile fragments. Also rename the generated Makefile variable 'am__depfiles_maybe' to the clearer 'am__maybe_remake_depfiles'. Minor unrelated refactoring. * lib/am/configure.am: Adjust to account for the 'am__depfiles_maybe' -> 'am__maybe_remake_depfiles' renaming. * lib/am/depend.am: Add rules to generate a dummy version of all the dependency-tracking '.Po' and '.Plo' makefile fragments. * m4/depout.m4: Use make invocations rather than Makefile-parsing sed hacks to bootstrap the dependency-tracking '.Po' and '.Plo' makefile fragments. We still use some sed trickery in order to remove the inclusion of the still non existing .Po and .Plo files from the Makefile we invoke make upon; this is done stripping lines that contain the magic string "# am--include-marker". * m4/make.m4 (AM_MAKE_INCLUDE): Given that now automake generates Makefiles containing include statements with trailing comment, adjust the checks done here to make sure $MAKE support that; e.g., "include foo.mk # comment" rather than just "include foo.mk". Also refactor and adjust to leave better debugging info in config.log. * t/postproc.sh: Rename ... * t/depend-postproc.sh: ... to this, and adjust and enhance. * t/list-of-tests.mk (handwritten_TESTS): Adjust. (XFAIL_TESTS): Remove 't/subobj-indir-pr13928.sh', which is now succeeding. * t/subobj-indir-pr13928.sh: Simplify slightly, now that we expect it to pass. * t/depcomp8a.sh: Adjust grepping check to account for the changes in the generated Makefile, and tp be somewhat more robust in light of possible future modifications. * t/depcomp8b.sh: Likewise. * t/subobj11b.sh: Likewise. * t/subobj11c.sh: Likewise. * t/extra-sources.sh: Likewise. * t/lex-depend-grep.sh: Likewise. * t/lex-depend-cxx.sh: Add a command to help debugging in case of test failure. Helped-by: Johan Kristensen <johankristensen@gmail.com> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2f0293e1 2015-01-05 22:55:51 Merge branch 'minor' * minor: maint: update copyright years to 2015 (branch 'micro')
e12608fa 2015-01-05 22:52:39 Merge branch 'micro' into minor * micro: maint: update copyright years to 2015 (branch 'micro')
5de75f07 2015-01-05 22:48:33 maint: update copyright years to 2015 (branch 'micro') Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
7b598ba4 2015-01-05 22:05:49 maint: bump version number 1.15 -> 1.15a ('minor' Git branch) * configure.ac (AC_INIT): Bump version number to 1.15a. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0504f991 2015-01-05 21:54:00 Merge branch 'minor' into micro after 1.15 release And bump version number: 1.15 -> 1.15.0a * minor: release: stable minor release 1.15 NEWS: minor improvements and fixed some typos and grammaros docs: "make distcheck" implementation details are not to be abused NEWS: improve and adjust in light of the oncoming 1.15 release Fix dumb logic error preventing $install_sh from being be overridden Expose automake bug#19311 build: fix race in parallel builds init: ensure $ac_aux_dir is defined before being used plans: enabling subdir-object by default is blocked on bug#13928 maint: update copyright years maint: sync files from upstream ("make fetch") Typofixes in warning messages and manual NEWS: a typofix, and better word wrapping parallel-tests: avoid possible implicit "make all" in test-suite.log rule Allow user to extend .PRECIOUS target cosmetics: remove a couple of extra trailing white spaces tests: fix a spurious failure on Mac OS X docs: make clear the JAVA primary is frozen install-sh: a slightly better diagnostic, and tests enhancements install-sh: be stricter in catching invalid usages tests: more significant names for some tests tests: some cosmetic fixes tests: more significant names for a test docs: drop a few obsolescent FIXME/TODO comments, and associated text testsuite harness: report test exit status in log file TAP driver: no need to invoke AC_PROG_AWK directly TAP driver: remove perl implementation (move it into contrib/) NEWS: stop reporting "new" Automake versioning scheme cosmetics: untabify the install-sh script install-sh: assume that "set -f" and "set +f" work... install-sh: assume ${var:-value} works as expected install-sh: assume 'dirname' is available and working correctly post-release: micro version bump (1.14a) Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
db43dd47 2014-12-31 00:05:23 release: stable minor release 1.15 * configure.ac (AC_INIT): Bump version number to 1.15. * m4/amversion.m4: Likewise (auto-updated by "make bootstrap"). Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
033293c2 2014-12-22 19:10:55 Merge branch 'minor' * minor: cleanup: refactor code to initialize DIST_COMMON dist: ordering of files in DIST_COMMON is deterministic now tests: refactor some tests on DIST_COMMON maint: make output of 'gen-testsuite-part' deterministic When computing lispdir, don't load emacs site wide init file. PATH: quote $(PATH_SEPARATOR) as well Improve detection of GNU make, avoiding "Arg list too long" errors.
88ac92b2 2014-12-22 17:56:22 Merge branch 'micro' into minor * micro: cleanup: refactor code to initialize DIST_COMMON dist: ordering of files in DIST_COMMON is deterministic now tests: refactor some tests on DIST_COMMON maint: make output of 'gen-testsuite-part' deterministic When computing lispdir, don't load emacs site wide init file. PATH: quote $(PATH_SEPARATOR) as well Improve detection of GNU make, avoiding "Arg list too long" errors.
3c72ada8 2014-07-30 17:41:15 When computing lispdir, don't load emacs site wide init file. When computing the lispdir emacs was previously invoked with the '-q' option to avoid loading the users initialisation files, however, the site wide initialisation file was still loaded, in some cases this can cause emacs to hang, with the result that a configure can also hang. The lisp code that aclocal causes to be executed reduces the load-path list (in emacs) to empty. The load-path is used by emacs to find packages which it wants to load. Currently, if emacs tries to auto load a package during shut down, and the package is not found, then emacs will hang. This does seem like an emacs bug, but protecting against this in aclocal is simply a case of not loading the site wide initialisation file. In this patch then the '-q' option to emacs is replaced with '-Q', this has the same, the '-Q' option is similar to '-q --no-site-file --no-splash'. * doc/automake.texi (Hard-Coded Install Paths): Update explanation of emacs code used to get lispdir. * m4/lispdir.m4 (AM_PATH_LISPDIR): Update emacs flags. Copyright-paperwork-exempt: yes Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
682c4456 2014-12-19 13:31:46 Merge branch 'minor' * minor: Fix stupid typo in test, causing spurious failure sync: update third-part files from upstream Make sure AM_INIT_AUTOMAKE has a trailing newline dist: adjust warning messages about shar and tarZ deprecation docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables
78964087 2014-12-19 13:09:39 Merge branch 'micro' into minor * micro: sync: update third-part files from upstream Make sure AM_INIT_AUTOMAKE has a trailing newline dist: adjust warning messages about shar and tarZ deprecation docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0015156b 2014-12-19 11:44:12 Make sure AM_INIT_AUTOMAKE has a trailing newline This used to be the case until Automke 1.13, but we broke it in Automake 1.14 (see commit v1.13.1-71-gf78b0f0). This caused issues like http://debbugs.gnu.org/16841 * m4/init.m4 (AM_INIT_AUTOMAKE): Adjust. * t/aminit-trailing-dnl-comment-pr16841.sh: New test. * t/list-of-tests.mk: Add it. * NEWS, THANKS: Update. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>