Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 94f4bad7 | 2023-11-24 09:31:18 | compile: support libtool .lo, needed for Xapian on Windows. * lib/compile (func_cl_wrapper):handle *.lo like *.o. | ||
| fba903e6 | 2023-11-23 09:35:09 | missing et al.: mention automake home page and gnu.org/gethelp. * lib/compile: in --help message, include automake home page and gnu.org/gethelp, following automake --help. * lib/depcomp: likewise. * lib/install-sh: likewise. * lib/mdate-sh: likewise. * lib/missing: likewise. * lib/mkinstalldirs: likewise. * lib/py-compile: likewise. * lib/ylwrap: likewise. | ||
| 68db06db | 2023-11-23 09:13:38 | missing: add autoreconf, autogen and perl as supported programs. From: https://lists.gnu.org/archive/html/automake-patches/2015-08/msg00000.html * lib/missing: add autoreconf, autogen and perl as supported programs, potentially especially useful from bootstrap scripts. Alphabetize. * NEWS: mention. * THANKS: new contributor. | ||
| 4adfd131 | 2023-11-19 06:55:04 | doc: typos in tap-driver.sh. * lib/tap-driver.sh: fix typos. | ||
| 1c618bce | 2023-10-06 08:18:33 | automake: new option posix to emit .POSIX target first. This patch is from https://bugs.gnu.org/55025. * lib/Automake/Options.pm (_is_valid_easy_option): declare new option "posix". * bin/automake.in (generate_makefile): if the "posix" option is present, add a .POSIX special target as the first non-comment line in the Makefile.in files. * NEWS: mention this. * doc/automake.texi: likewise. | ||
| 56766ede | 2023-08-09 18:07:00 | automake: portability warning for dollar-escaped dollar signs. This bug and fix was posted at https://lists.gnu.org/archive/html/automake/2023-08/msg00003.html. * lib/Automake/Variable.pm (scan_variable_expansions): rewrite scan_variable_expansions regex to handle dollar-escaped dollar signs. * t/dollarvar2.sh: test it. | ||
| dbdfa65c | 2023-07-20 18:03:27 | automake: disable GNU make's internal pattern rules, for speed. From https://bugs.gnu.org/64743. * lib/am/footer.am: Disable GNU make's internal pattern rules. * lib/Automake/Rule.pm (_conditionals_for_rule): Add special handling for these pattern rules from footer.am. (define): Likewise. * t/nodep.sh: Update test to avoid matching the new %:: rules. * t/fnoc.sh: Update test to avoid matching the new %:: SCCS rule. * NEWS: Mention this. * doc/automake.texi (Suffixes): Likewise. (Doc changes written by Karl.) | ||
| ab347652 | 2023-07-05 08:59:29 | python: support noinst_PYTHON preceding foo_PYTHON. This change fixes https://bugs.gnu.org/24507. * lib/am/python.am (am__pep3147_tweak): remove conditional on %?INSTALL%. * t/python-pr10995.sh: test with make uninstall. | ||
| 4bd4640e | 2023-07-01 08:34:55 | automake: do not warn that POSIX variables are non-POSIX. This change fixes https://bugs.gnu.org/9587. * lib/Automake/Variable.pm (_VARIABLE_PATTERN_EXTRA_POSIX): new variable for $(*D) and the like. (_VARIABLE_PATTERN): use it. * t/vars3.sh: update test. * NEWS: mention this. POSIX spec (currently): https://pubs.opengroup.org/onlinepubs/9699919799/utilities/make.html | ||
| 4e86c7ed | 2023-06-28 10:00:56 | maint: Update files from upstream with 'make fetch'. * lib/INSTALL: update with make fetch. * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. | ||
| 226b6131 | 2023-06-08 14:33:14 | depcomp spelling fix * lib/depcomp: Fix spelling in comment. Originally reported by Josh Soref <jsoref@gmail.com> in: https://lists.gnu.org/r/bug-gnulib/2023-06/msg00057.html | ||
| ae8d12e3 | 2023-05-27 17:55:15 | maint: Update files from upstream with 'make fetch' + help2man. * lib/INSTALL: update with make fetch. * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gendocs.sh: Likewise. * lib/gnupload: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. * doc/help2man: now 1.49.1. | ||
| c04c4e88 | 2023-03-29 18:07:10 | Port py-compile to Python 2.6- * lib/py-compile: Port to Python 2.6 and earlier, which lack importlib. | ||
| efce8539 | 2023-02-07 22:42:59 | Gracefully degrade if Time::HiRes is not available Copyright-paperwork-exempt: yes | ||
| 0e127700 | 2023-02-07 22:39:29 | Revert "maint: require perl 5.010 or later" This reverts commit 4e3744a15c4d8bdb46c11ead2fb56c5f591b714b. Copyright-paperwork-exempt: yes | ||
| 01bf65da | 2023-02-02 14:17:52 | Use higher-resolution file timestamps * lib/Automake/FileUtils.pm (mtime): Return higher-resolution file timestamps. This isn’t perfect, but it’s better than what we had. Code change taken from Autoconf to partially fix a race <https://bugs.gentoo.org/show_bug.cgi?id=782985>. | ||
| 4e3744a1 | 2023-02-02 14:13:24 | maint: require perl 5.010 or later This is needed for better treatment of high-res timestamps. | ||
| 7fd1d064 | 2023-01-13 04:02:57 | distdir/emacs: avoid `test -d` with MKDIR_P We don't need to do the `test -d ... || mkdir ...` dance when we have the MKDIR_P helper, so simplify this code a bit. * lib/am/distdir.am: Use $(MKDIR_P). * lib/am/lisp.am: Drop redundant `test -d`. | ||
| f15852df | 2023-01-03 21:46:38 | rm: convert more cases to am__rm_f Fixes automake bug https://bugs.gnu.org/10828. Clean up a few more cases where we were doing `test ... || rm ...` to avoid calling `rm -f` without arguments by leveraging am__rm_f. These were harder to find in the source due to their constructed nature. The clean programs rules in particular were much more complicated than they needed to be. This logic boiled down to two things: delete the list of programs, and then delete the list without the exeext suffix, but only if the list of programs is non-empty. The check-TESTS rule was converted to am__rm_f, but a simplification was missed where the $list variable is inlined. * bin/automake.in: Delete test -z logic and always call am__rm_f. * contrib/check-html.am: Use $(am__rm_f) helper. * doc/automake.texi: Update examples to match current behavior. * lib/am/check.am: Inline $list variable. * lib/am/progs.am: Rewrite rule to use $(am__rm_f). | ||
| efc7dc40 | 2023-01-03 23:30:29 | check: drop unused trs_list variable When the code that used this variable was removed, the variable itself was left behind. Clean that up now too. * lib/am/check.am: Delete trs_list. | ||
| 2cb09ea9 | 2023-01-03 21:07:45 | depend: trim spurious leading tab These vars are replaced with a list of remove commands that are joined with a \n and each line always has a leading \t inserted. That means the literal tab here before the var leads to 2 tabs included in the output. While not functionally a problem, it can be a bit confusing when reading the output as it implies something is amiss. Trimming the tab also aligns with the other .am files which don't include it. * lib/am/depend.am: Delete tab before %DISTRMS%. | ||
| 34bdde96 | 2023-01-04 02:00:14 | maint: make update-copyright | ||
| 2418a6c2 | 2023-01-04 01:57:06 | maint: Update files from upstream with 'make fetch' Pulls some 2023 copyright updates. * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gendocs.sh: Likewise. * lib/gendocs_template: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/gnupload: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. | ||
| 2a1e6f74 | 2022-10-01 15:03:16 | maint: Update files from upstream with 'make fetch' + help2man. * lib/INSTALL: update with make fetch. * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gendocs.sh: Likewise. * lib/texinfo.tex: Likewise. * doc/help2man: now 1.49.1. | ||
| 13fb472c | 2022-09-28 10:12:24 | python: better Python compilation portability. This change is per automake thread: https://lists.gnu.org/archive/html/automake/2022-09/msg00002.html * lib/py-compile: Test directly for availability of importlib.util.cache_from_source. Untangle logic for when to generate -O and -OO bytecode. Reformat embedded Python fragments. | ||
| 5615016c | 2022-09-28 09:06:40 | dist: ignore "silly rename" files from nfs/afs/smb. This change is per automake thread: https://lists.gnu.org/archive/html/automake/2022-09/msg00002.html * lib/am/distdir.am (distcleancheck_listfiles): filter "silly rename" files (.nfs* .smb* .__afs*), unavoidably created by deleting files that are still open in some process on network file systems. | ||
| d4801dff | 2022-09-26 09:04:59 | automake: load -l bytecomp for Emacs. * lib/am/lisp.am (.el.elc): Require the bytecomp library so byte-compile-dest-file-function can be used when available. | ||
| bee2ab12 | 2022-09-26 08:57:43 | automake: silent make output for Emacs byte compilation. * lib/am/lisp.am: Use $(AM_V_GEN) in .el.elc rule. * NEWS: mention this. * THANKS: add new contributor. | ||
| 023189d4 | 2022-09-18 14:11:15 | doc: typo in depcomp. * lib/depcomp: obsosete -> obsolete. Report from anonymous. | ||
| 5f3e37da | 2022-07-25 17:49:53 | compile: look for clang-cl. * lib/compile: check for clang-cl, calling func_cl_wrapper. * THANKS: add new contributor. | ||
| f9fdcdfd | 2022-05-23 13:47:02 | deps: create empty file instead of dummy file. This change is per an automake thread, see both before and after: https://lists.gnu.org/archive/html/automake/2022-05/msg00006.html * lib/am/depend.am ($(am__depfiles_remade)): create empty files for dependencies instead of files with a line '# dummy'. Turns out this is noticeably faster. * THANKS: update Jan's email address. * NEWS: mention this. | ||
| bde43d04 | 2022-02-06 01:25:59 | py-compile: fix optimized compiling for Python 3.5+ Fixes automake bug https://bugs.gnu.org/38043. Split the optimized compilation logic into a new section. This avoids trying to support multiple versions of major versions in a single script as it gets harder to verify new changes don't break old versions as time goes on. Now for Python 3.5+, compile with -O0 (which is "higher" than -O). * NEWS: Mention fix. * THANKS: Add Michal Górny. * lib/py-compile: Add new section for compiling Python 3.5+. | ||
| 8abf0894 | 2022-02-20 13:28:48 | automake: support embedded \# in variable appends Fixes automake bug https://bugs.gnu.org/7610. Use of \# is not portable. POSIX does not provide any way of retaining the # marker in variables. There is wide spread support for \# though in GNU & BSD Make implementations. Today, with plain variable assignments, Automake leaves the line alone: foo = blah\#blah This will leave it to the implementation to decide what to do. But if you try to append to it, Automake follows POSIX and strips it: foo = blah\#blah foo += what -> foo = blah\ what Instead, let's issue a portability warning whenever \# is used, even if it isn't being appended, and do not strip the \# when appending. Now: foo = blah\#blah foo += what -> warning: escaping \# comment markers is not portable -> foo = blah\#blah what * NEWS: Mention change in \# handling. * lib/Automake/VarDef.pm: Do not strip # if escaped. * lib/Automake/Variable.pm: Warn if \# is used. * t/comment12.sh: New test. * t/comments-escaped-in-var.sh: New test. * t/list-of-tests.mk: Add comment12.sh & comments-escaped-in-var.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. | ||
| 6097de0a | 2022-02-15 22:25:35 | python: fix exit status handling with uninstall The st variable is set at the top of this shell script, and then here is a pipeline where it tries to update it in the subshell. But since setting variables in a subshell doesn't propagate back up, it doesn't actually work. Have the final subshell in the pipeline manage its own exit status and exit with that so that the final status of the pipeline is the right value. * lib/am/python.am: Fix final subshell exit status passing. | ||
| 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. | ||
| 24a28a24 | 2022-02-07 23:29:13 | ar-lib: ignore -nologo option We already invoke $AR with -NOLOGO all the time, so we can ignore the option entirely if the user specifies it. * lib/ar-lib: Ignore -NOLOGO. | ||
| 5b99315c | 2022-02-06 01:24:52 | py-compile: fix display when compiling multiple files The compilation steps print the filename as it runs, but forgets to add a space after it, so they all get squashed together: $ ./py-compile 1.py 2.py 3.py Byte-compiling python modules... 1.py2.py.3.py * lib/py-compile: Add missing write. | ||
| 8b2d281d | 2022-02-06 00:22:50 | py-compile: drop support for Python 0.x & 1.x Python 2.0 was released in 2000. There's really no way for us to check those old versions, so let's just drop them. No one will miss them. * NEWS: Note Python version support removal. * lib/py-compile: Abort if major version 0 or 1 is found. * t/py-compile-env.sh: Rework slightly to handle new version probing. | ||
| 8a913c26 | 2022-02-05 23:43:38 | py-compile: handle filenames with whitespace The list of files is put into a string and then split on whitespace. Fix the way the list of files are passed to the compile script. * lib/py-compile: Pass files as arguments, not as a string. * t/py-compile-files.sh: New test. | ||
| faa1d2c5 | 2022-02-05 23:01:31 | py-compile: clean up usage info Include the full summary of options in the output. * lib/py-compile: Update usage output. * t/py-compile-usage.sh: Update test to match new output. | ||
| 8d9daa99 | 2022-01-30 05:59:19 | maint: Update files from upstream with 'make fetch' * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gendocs.sh: Likewise. * lib/gendocs_template: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/gnupload: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. | ||
| 9daa34db | 2022-01-24 03:08:13 | texi: define new AM_TEXI2FLAGS variable To provide a bit more flexibility when invoking TEXI2DVI & TEXI2PDF, and provide a bit of symmetry with .info & .html generation, provide a AM_TEXI2FLAGS setting that is passed to all TEXI2xxx invocations. * doc/automake.texi: Mention new AM_TEXI2FLAGS setting. * lib/am/texibuild.am: Pass $(AM_TEXI2FLAGS) to TEXI2DVI & TEXI2PDF. * NEWS: Mention AM_TEXI2FLAGS. * t/txinfo-many-output-formats.sh: Check for AM_TEXI2FLAGS. | ||
| c1b799a0 | 2022-01-24 02:53:13 | texi: pass automatic -I to dvi & pdf generation Fixes automake bug https://bugs.gnu.org/23599. When generating info/html pages, automake adds -I flags to source dirs that contain the texi files, but it doesn't do this for dvi or pdf formats. Instead, automake has been relying on texi2dvi to use makeinfo for expanding macros, and it hasn't done that by default in a long time. Since adding --expand to the texi2dvi call is undesirable (due to bad and unpredictable BEHAVIOR), pass those automatic -I flags directly to TEXI2DVI & TEXI2PDF so they work regardless of --expand behavior. We have to keep the MAKEINFO= setting around as texi2dvi might itself fall back to it if the version of tex is old or broken. * bin/automake.in: Add comment about $makeinfoflags usage. * doc/automake.texi: Mention automatic -I subdir flags. * lib/am/texibuild.am: Pass %MAKEINFOFLAGS% to TEXI2DVI & TEXI2PDF. * t/txinfo-subdir-pr343.sh: Check for -I subdir usage. | ||
| 975ea4d9 | 2022-01-19 05:14:47 | progs, libs: support _RANLIB overrides Much like we have per-target support for _AR and _LINK, add an _RANLIB override too. This allows selection of specific ranlib tools in case a non-standard archiver tool was forced. * bin/automake.in: Check for _RANLIB per-target settings. * doc/automake.texi: Document _RANLIB override. * lib/am/library.am: Change $(RANLIB) to $(%XLIBRARY%_RANLIB). * t/list-of-tests.mk: Add ranlib_override.sh. * t/ranlib_override.sh: New test. * NEWS: Mention new feature. | ||
| 5fefc4a6 | 2018-07-30 15:02:35 | lib: drop unused shell variables Detected by ShellCheck. * lib/depcomp: Drop never used $digits. * lib/ylwrap: Drop --basedir and $basedir, seems like that was old C&P error from 210797967a. | ||
| 6c8ff6a8 | 2022-01-12 14:15:12 | maint: make update-copyright | ||
| a320a092 | 2021-11-27 17:43:00 | dejagnu: add support for silent builds with site.exp. * lib/am/dejagnu.am (site.exp): Use $(AM_V_GEN) and merge all independent shell calls into one. | ||
| b7868119 | 2021-10-31 12:52:43 | config headers: add support for silent builds * lib/am/remake-hdr.am (%STAMP%): Use $(AM_V_at) and $(AM_V_GEN). (%CONFIG_HIN%): Likewise. | ||
| 4e53bb67 | 2021-09-26 18:19:43 | maint: Update files from upstream with 'make fetch'. * lib/config.sub: Update. | ||
| 522e0d40 | 2021-08-07 17:54:17 | doc: typos from codespell. * HACKING: typo from codespell. * doc/local.mk: likewise. * lib/am/header-vars.am: likewise. * lib/am/lisp.am: likewise. * t/cond24.sh: likewise. * t/cond36.sh: likewise. * t/dist-auxdir-many-subdirs.sh: likewise. * t/link_override.sh: likewise. * t/parallel-tests-console-output.sh: likewise. * t/subobj11a.sh: likewise. * t/subobj11b.sh: likewise. | ||
| badd7d25 | 2021-07-26 18:03:53 | cosmetics: py-compile consistently use test, not [ ... ]; indentation. * lib/py-compile: consistently use test rather than [ ... ]; use consistent sh indentation; check exit status consistently. | ||
| 0b087f56 | 2021-07-22 13:44:12 | maint: Update files from upstream with 'make fetch'. * lib/gendocs.sh: Update. | ||
| a470a47f | 2021-07-11 19:19:42 | maint: make update-copyright | ||
| 314c55f0 | 2021-07-11 18:34:22 | no-dist-built-sources: fix-up * bin/automake.in (preprocess_file): Process new option here, (handle_dist): ... not here. * lib/Automake/Options.pm (_is_valid_easy_option): Remove pure-dist. * lib/am/distdir.am: Don't factor out the duplicate-looking $(MAKE)... command. Otherwise, many dist-using tests would fail for me, e.g., t/aclocal-amflags.sh. | ||
| 13659a73 | 2021-07-09 09:03:30 | dist: add new "dist-no-built-sources" automake option. Fixes automake bug https://debbugs.gnu.org/49317. * bin/automake.in: implement new option "no-dist-built-sources" to omit the dependency of distdir on $(BUILT_SOURCES). (Allison's original patch used the option name dist-pure; trivially renamed.) * lib/am/distdir.am (distdir) [DIST_BUILT_SOURCES]: conditionalize the dependency. * lib/Automake/Options.pm (_is_valid_easy_option): list it. * doc/automake.texi (List of Automake options): document it. * NEWS: mention it. * t/dist-no-built-sources.sh: test it. * t/list-of-tests.mk (handwritten_TESTS): add it. | ||
| 35c47fb6 | 2021-07-05 18:59:51 | maint: Update files from upstream with 'make fetch' * lib/INSTALL: Update. * lib/config.guess: Likewise. * lib/config.sub: Likewise. * lib/gendocs.sh: Likewise. * lib/gendocs_template: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/gnupload: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. | ||
| 6a753ef5 | 2020-12-13 18:34:35 | python: don't assume $(...) in py-compile. This change (very) partially fixes https://bugs.gnu.org/45205. * lib/py-compile: use `...` instead of $(...). Solaris 10 /bin/sh is still in use. | ||
| 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. | ||
| a5af212c | 2020-11-23 18:04:56 | tests: create log file before running the test script. This change partially fixes https://bugs.gnu.org/35762. * lib/test-driver: create $log_file before running the test script. Also quote $log_file. Combined suggestions from howaboutsynergy and Eric Blake. | ||
| 3b2633fb | 2020-11-15 21:42:14 | maint: Update files from upstream with 'make fetch' * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/texinfo.tex: Likewise. | ||
| 3313d9ca | 2020-11-13 17:51:46 | install-sh: trailing whitespace. * lib/install-sh: remove trailing whitespace. Sigh. (scriptversion): 2020-11-14.01 | ||
| 37b70ac4 | 2020-11-13 17:50:09 | dejagnu: quote `pwd` when writing "set objdir" line to site.exp. This change fixes https://bugs.gnu.org/44600. * lib/am/dejagnu.am (site.exp): quote set objdir line. * NEWS: mention this. | ||
| db65189f | 2020-11-12 17:49:31 | install-sh: new option -S SUFFIX for simple file backups. * lib/install-sh: implement and document -S. Patch sent by Julien Elie: https://lists.gnu.org/archive/html/automake-patches/2018-03/msg00004.html (scriptversion): 2020-11-13.01 * t/install-sh-option-S.sh: new test. * t/list-of-tests.mk (handwritten_tests): add it. * NEWS: mention it. | ||
| 8aa4d93f | 2020-11-10 18:18:35 | install-sh: --help tweaks. * lib/install-sh (usage): avoid too-long line, mention bug reporting address (bug-automake) and automake home page. | ||
| a296ffe1 | 2020-11-10 18:03:47 | install-sh: new option -p to preserve mtime. * lib/install-sh: new option -p to call cp -p. Idea from patch sent by Julien Elie: https://lists.gnu.org/archive/html/automake-patches/2018-03/msg00002.html (scriptversion): 2020-11-11.02 * NEWS: mention this. 2020-11-10 Karl Berry <karl@freefriends.org> | ||
| 6b182dc5 | 2020-11-10 17:54:06 | install-sh: do not chown existing directories. * lib/install-sh: do not chown existing directories. Original patch sent by Julien Elie: https://lists.gnu.org/archive/html/automake-patches/2018-03/msg00003.html (scriptversion): 2020-11-11.01 * NEWS: mention this. | ||
| 5c8d6e25 | 2020-11-10 17:48:35 | install-sh: do not redundantly specify -f to rm. * lib/install-sh: do not redundantly specify -f to rm. Mention implication for RMPROG in the --help message. Original patch sent by Julien Elie: https://lists.gnu.org/archive/html/automake-patches/2018-03/msg00005.html * NEWS: mention this. | ||
| dbc1c9e7 | 2020-10-06 18:16:14 | automake: install-exec did not depend on $(BUILT_SOURCES). This change fixes https://bugs.gnu.org/43683. * lib/am/install.am (install-exec): %maybe_BUILT_SOURCES% dependency, twice. Basic patch from madmurphy (tiny change), message#8. (.MAKE) [maybe_BUILT_SOURCES]: depend on install-exec. * NEWS: mention it. * doc/automake.texi (Sources): mention this (also that make dist depends on $(BUILT_SOURCES)). * t/built-sources-install-exec.sh: new test. * t/list-of-tests.mk (handwritten_TESTS): add it. * t/built-sources-install.sh: typo. * t/built-sources-check.sh: typo. | ||
| 22089fa6 | 2020-09-13 11:33:05 | New utility function Automake::ChannelDefs::merge_WARNINGS. This function merges a list of warnings categories into the environment variable WARNINGS, returning a new value to set it to. The intended use is in code of the form { local $ENV{WARNINGS} = merge_WARNINGS ("this", "that"); # run a command here with WARNINGS=this,that,etc } This is not actually used in automake, but will be in autoconf. * lib/Automake/ChannelDefs.pm (merge_WARNINGS): New function. | ||
| 74673d1c | 2020-09-11 18:03:19 | Consistently use ‘our’ instead of ‘use vars’. At file scope of a file containing at most one ‘package’ declaration, ‘use vars’ is exactly equivalent to ‘our’, and the latter is preferred starting with Perl 5.6.0, which happens to be the oldest version we support. (This change has nothing to do with the previous two, but I want to make the same change in Autoconf and that means doing it here for all the files synced from Automake.) (I don’t know why, but this change exposed a latent bug in FileUtils.pm where the last pod block in the file didn’t have a ‘=cut’ delimiter, so the code after it was considered documentation, causing ‘require FileUtils’ to fail.) * lib/Automake/ChannelDefs.pm * lib/Automake/Channels.pm * lib/Automake/Condition.pm * lib/Automake/Configure_ac.pm * lib/Automake/DisjConditions.pm * lib/Automake/FileUtils.pm * lib/Automake/General.pm * lib/Automake/Getopt.pm * lib/Automake/Options.pm * lib/Automake/Rule.pm * lib/Automake/RuleDef.pm * lib/Automake/VarDef.pm * lib/Automake/Variable.pm * lib/Automake/Wrap.pm * lib/Automake/XFile.pm: Replace all uses of ‘use vars’ with ‘our’. * lib/Automake/FileUtils.pm: Add missing ‘=cut’ to a pod block near the end of the file. | ||
| 9ae8a896 | 2020-09-11 16:17:41 | Consistently process -W(no-)error after all other warning options. automake and aclocal were processing ‘-W(no-)error’ whenever it appeared on the command line, which means that ‘-Werror,something-strange’ would issue a hard error, but ‘-Wsomething-strange,error’ would only issue a warning. It is not desirable for warnings about unknown warning categories ever to be treated as a hard error; that leads to problems for driver scripts like autoreconf, which would like to pass whatever -W options it got on its own command line down to all the tools and not worry about which tools understand which warning categories. Also, this sort of order dependence is confusing for humans. Change parse_warnings to take just one option, the _complete_ list of warning categories seen on the command line, and to process -Werror / -Wno-error after processing all other warnings options. Thus, unknown warnings categories will always just be a plain warning. This does mean aclocal has to stop using parse_warnings as a Getopt::Long callback, but that’s not a big deal. Similarly, change parse_WARNINGS to record whether ‘error’ appeared in the environment variable, but not activate warnings-are-errors mode itself. parse_warnings picks up the record and honors it, unless it’s overridden by the command line. * lib/Automake/ChannelDefs.pm ($werror): New package global (not exported). (parse_WARNINGS): Do not call switch_warning for ‘error’ / ‘no-error’; just toggle the value of $werror. (parse_warnings): Do not call switch_warning immediately for ‘error’ / ‘no-error’; toggle $werror instead. Call switch_warning ‘error’ at the very end if $werror is true. Remove unused $OPTION argument. * bin/automake.in: parse_warnings now takes only one argument. * bin/aclocal.in: Call parse_warnings after parse_options instead of using it as a parse_options callback. | ||
| ab9ef6cf | 2020-09-11 14:23:10 | Sync ChannelDefs.pm from autoconf. ChannelDefs.pm *ought* to be kept in sync between automake and autoconf, because it defines the set of valid -W options, and autoreconf assumes that it can pass arbitrary -W options to all of the tools it invokes. However, it isn’t covered by either project’s ‘make fetch’ and it hasn’t actually *been* in sync for more than 17 years. This patch manually brings over all of the changes made on the autoconf side. Most importantly, there is a new warnings channel ‘cross’, for warnings related to cross-compilation. Also, the ‘usage’ function now *returns* the text to be put into a usage message, instead of printing it itself. (This is necessary on autoconf’s side.) * lib/Automake/ChannelDefs.pm: Sync from autoconf. (cross): New warnings channel. (portability-recursive): Document. (usage): Now returns the text to be printed, instead of printing it. (parse_warnings): Second argument may now be a list. | ||
| f50685a5 | 2020-09-02 20:53:21 | maint: Update files from upstream with 'make fetch' * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gendocs_template: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. Signed-off-by: Issam E. Maghni <issam.e.maghni@mailbox.org> | ||
| 5cafaafd | 2020-08-31 18:31:04 | perl: use warnings instead of -w; consistent ordering of use, etc. Per thread at: https://lists.gnu.org/archive/html/automake-patches/2020-08/msg00009.html * bin/aclocal.in: use warnings instead of #!...-w; consistent ordering of basic "use" directives, then BEGIN block, then standard modules in ASCII order, then Automake:: modules (not sort), finally use vars. Also sort @ISA lists and use qw(...) in ASCII order. * bin/automake.in: likewise. * lib/Automake/ChannelDefs.pm: likewise. * lib/Automake/Channels.pm: likewise. * lib/Automake/Condition.pm: likewise. * lib/Automake/Config.in: likewise. * lib/Automake/Configure_ac.pm: likewise. * lib/Automake/DisjConditions.pm: likewise. * lib/Automake/FileUtils.pm: likewise. * lib/Automake/General.pm: likewise. * lib/Automake/Getopt.pm: likewise. * lib/Automake/Item.pm: likewise. * lib/Automake/ItemDef.pm: likewise. * lib/Automake/Language.pm: likewise. * lib/Automake/Location.pm: likewise. * lib/Automake/Options.pm: likewise. * lib/Automake/Rule.pm: likewise. * lib/Automake/RuleDef.pm: likewise. * lib/Automake/VarDef.pm: likewise. * lib/Automake/Variable.pm: likewise. * lib/Automake/Version.pm: likewise. * lib/Automake/Wrap.pm: likewise. * lib/Automake/XFile.pm: remove unnecessary imports of Carp, DynaLoader, and File::Basename. | ||
| c8f8c3d5 | 2020-08-13 18:10:17 | docs: typo in tap-driver.sh. Per thread at: https://lists.gnu.org/archive/html/automake-patches/2020-08/msg00000.html * lib/tap-driver.sh (setup_result_obj): "assing" typo, etc. | ||
| 217d6d92 | 2020-08-01 16:12:34 | port XFile locking to OpenIndiana I observed this problem on an NFS filesystem on an OpenIndiana host (5.11 illumos-dde7ba523f i386). fcntl (fd, F_SETLK, ...) failed with errno == EINVAL, which POSIX allows for files that do not support locking. * lib/Automake/XFile.pm (lock): Treat EINVAL like ENOLCK. | ||
| 17614727 | 2020-07-26 15:12:08 | * Update scriptversions for install-sh, mkinstalldirs. | ||
| cd8ef343 | 2020-07-26 15:01:34 | Install directories mode 755 instead of using umask Problem reported by Antoine Amarilli in: https://lists.gnu.org/archive/html/automake/2019-01/msg00000.html and followed up by Akim Demaille in: https://lists.gnu.org/archive/html/bug-bison/2020-07/msg00040.html * bin/automake.in: Add a comment about this. * lib/install-sh: Ignore umask; just create directories mode 755 unless overridden via -m (for non-intermediate directories only). Also, fix 'umask=$mkdir_umask' typo. * lib/mkinstalldirs: Likewise. | ||
| 19fe70ea | 2020-06-29 15:18:20 | automake: remove stray up_to_date_p * lib/Automake/FileUtils.pm (up_to_date_p): Don’t export up_to_date_p, which was removed in 2020-05-11T00:40:14Z!karl@freefriends.org. | ||
| 216d1834 | 2020-06-06 15:42:54 | automake: support AM_TESTSUITE_SUMMARY_HEADER override. This change handles https://bugs.gnu.org/11745. * lib/am/check.am (AM_TESTSUITE_SUMMARY_HEADER): new variable. Default value is " for $(PACKAGE_STRING)", including quotes, to keep the default output the same. ($(TEST_SUITE_LOG)): use it, unquoted. * doc/automake.texi (Scripts-based Testsuites): document it. * NEWS: mention it. * t/testsuite-summary-header.sh: new test. * t/list-of-tests.mk (handwritten_tests): add it. * t/ax/testsuite-summary-checks.sh: fix typo. | ||
| 04567be6 | 2020-05-17 09:36:15 | automake: new variable AM_DISTCHECK_DVI_TARGET to override "dvi". This change fixes https://bugs.gnu.org/8289. * lib/am/distdir.am (AM_DISTCHECK_DVI_TARGET): define as dvi. (distcheck): use it, isntead of hardcoding dvi. * lib/Automake/Variable.pm (%_silent_variable_override): add AM_DISTCHECK_DVI_TARGET. * t/distcheck-override-dvi.sh: new test. * t/list-of-tests.mk (handwritten_TESTS): add it. * doc/automake.texi (Checking the Distribution): document this. (Third-Party Makefiles): explicitly mention that EMPTY_AUTOMAKE_TARGETS is not a built-in or special name. Various other index entries and wording tweaks. * NEWS (Distribution): mention this. | ||
| afba8295 | 2020-05-10 17:40:14 | automake: remove unused Automake::FileUtils::up_to_date_p function. Per thread at: https://lists.gnu.org/archive/html/automake-patches/2020-04/msg00000.html> especially: https://lists.gnu.org/archive/html/automake-patches/2020-05/msg00003.html * lib/Automake/FileUtils.pm (up_to_date_p): remove. Nothing in Automake itself uses this. It is used in Autoconf's autom4te utility, but Autoconf has its own copy, and the duplication was impeding auto4mte development, as discussed in the thread above. (While here, insert missing =over/=back to placate pod2text.) * NEWS (Miscellanous changes): note this. | ||
| 6cfd9401 | 2020-04-08 18:07:10 | docs: test-driver options do not accept =, update --help. This change fixes https://bugs.gnu.org/22445. * lib/test-driver (print_usage): space after --test-name, --log-file, --trs-file, not =. Also mention Automake as source. | ||
| 92f4a08b | 2020-02-29 08:14:04 | maint: run "make fetch" to update files from elsewhere * lib/config.guess: Auto-update. * lib/config.sub: Auto-update. * lib/gendocs.sh: Auto-update. * lib/gendocs_template: Auto-update. * lib/gitlog-to-changelog: Auto-update. * lib/gnupload: Auto-update. * lib/texinfo.tex: Auto-update. * lib/update-copyright: Auto-update. | ||
| 9ba2f0dd | 2020-02-25 18:07:15 | python: support both Python 2 and 3 in py-compile * lib/py-compile: check python major version and use imp or importlib accordingly, plus related changes. Original patch for Python 3 only from Gabriel Ganne at: https://lists.gnu.org/archive/html/automake-patches/2019-07/msg00002.html | ||
| 71dff5b2 | 2020-02-13 18:26:40 | maint: update lib/COPYING from canonical source. * lib/COPYING: update from https://www.gnu.org/licenses/gpl-3.0.txt (only change is to use https urls). | ||
| 6207236f | 2020-01-29 18:12:29 | python: properly uninstall __pycache__ in subdirectories This change finishes fixing automake bug#32088: https://debbugs.gnu.org/32088 * lib/am/python.am (uninstall-%DIR%PYTHON): Uninstall byte-compiled files in a '__pycache__' subdirectory from sub/__pycache__/, not __pycache__/sub/. (am__pep3147_tweak): prefix __pycache__ here, for both .pyc and .pyo. https://lists.gnu.org/archive/html/automake-patches/2018-05/msg00000.html * t/instmany-python.sh (limit): increase to 4500, following Andreas Huettel, https://debbugs.gnu.org/32088#11. | ||
| b87f2974 | 2020-01-04 17:06:40 | automake: Support byte compilation in older Emacsen * lib/am/lisp.am (am__emacs_byte_compile_setup) [FIRST]: define new make variable, to use byte-compile-dest-file-function if available, else byte-compile-dest-file. (.el.elc): use it. * t/lisp-loadpath.sh: skip test if emacs version is <= 23, since their -L ordering is backwards. * NEWS: update. | ||
| cf27a3df | 2020-01-01 11:44:41 | maint: make update-copyright | ||
| 5c466eaf | 2019-10-04 16:39:24 | dist: add dist-zstd option Add support for using the zstd compression algorithm. Use a default compression setting of -19, and ".zst" as the suffix. * bin/automake.in (handle_dist): Add zstd to the list of known dist- suffixes. (preprocess_file): Map ZSTD to dist-zstd. * doc/automake.texi: Document the new option. * lib/Automake/Options.pm (_is_valid_easy_option): Add dist-zstd. * lib/am/distdir.am (dist-zstd): New rule. (?ZSTD?DIST_TARGETS): Add definition. (distcheck): Add a case for *.tar.zst*. * t/dist-formats.tap: Add tests. * NEWS: Mention the change. | ||
| d010f76f | 2019-11-11 12:07:08 | config: add msys support Requested by Arnold Robbins in: https://lists.gnu.org/r/bug-gnulib/2019-11/msg00008.html * lib/ar-lib, lib/compile (func_file_conv): Treat msys like cygwin. | ||
| 5ae02cc8 | 2019-10-14 13:46:55 | maint: make update-copyright | ||
| 06971c3d | 2019-10-14 13:44:48 | maint: make fetch | ||
| d89a1aad | 2019-08-25 18:51:26 | install-sh: support -s with read-only source Problem reported by Karl Berry in: https://lists.gnu.org/r/bug-gnulib/2019-08/msg00067.html * lib/install-sh: If -s is given, create the temporary file with $cp_umask so that ‘strip’ can write to it. | ||
| 20f739e6 | 2019-07-04 03:43:54 | ar-lib: Fix for MSVC 14. * lib/ar-lib (extract): Convert CRLFs in 'lib -NOLOGO -LIST' output to LFs. | ||
| a348d830 | 2018-07-08 23:41:42 | python: Don't use '\n' in sed substitution This change fixes automake bug#31222. On macOS, 'sed' interprets '\n' in the substitution text as the letter 'n' instead of as a newline. * lib/am/python.am [?FIRST?] (am__pep3147_tweak): Use a space instead of '\n'. * NEWS: Update. | ||
| d96d1f3e | 2018-03-11 22:13:16 | maint: Update files from upstream with 'make fetch' * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/gendocs.sh: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/gnupload: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. | ||
| 968bf9f6 | 2018-03-11 21:47:54 | install-sh: avoid (low risk) race in "/tmp" Ensure that nobody can cross privilege boundaries by pre-creating symlink on '$tmpdir' destination directory. Just testing 'mkdir -p' by creating "/tmp/ins$RANDOM-$$/d" is not safe because "/tmp" directory is usually world-writeable and "/tmp/ins$RANDOM-$$" content could be pretty easily guessed by attacker (at least for shells where $RANDOM is not supported). So, as the first step, create the "/tmp/ins$RANDOM-$$" without -p. This step would fail early if somebody wanted catch us. Systems that implement (and have enabled) fs.protected_symlinks kernel feature are not affected even without this commit. References: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760455 https://bugzilla.redhat.com/show_bug.cgi?id=1140725 * lib/install-sh: Implement safer 'mkdir -p' test by running '$mkdirprog $mkdir_mode "$tmpdir"' first. * NEWS: Update. Signed-off-by: Mathieu Lirzin <mthl@gnu.org> |