Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 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> | ||
| 74902aa2 | 2018-03-03 23:50:10 | automake: Don't rely on List::Util to provide 'none' This change fixes automake bug#30631. This removes the use of List::Util which is not supported by Perl 5.6, by reimplementing the 'none' subroutine. * lib/Automake/General.pm (none): New subroutine. * bin/automake.in (handle_single_transform): Use it. * t/pm/General.pl: New test. * t/list-of-tests.mk (perl_TESTS): Add it. * NEWS: Update. | ||
| 6bab5b26 | 2018-03-06 20:13:32 | maint: write-file-hooks -> before-save-hook write-file-hooks is obsolete since Emacs 22.1 (released June 2007) and it's time to use the recommended replacement. Problem reported by Glenn Morris in: https://lists.gnu.org/r/bug-gnulib/2018-03/msg00008.html * contrib/tap-driver.pl, lib/compile, lib/depcomp, lib/install-sh: * lib/mdate-sh, lib/missing, lib/mkinstalldirs, lib/py-compile: * lib/tap-driver.sh, lib/test-driver, lib/ylwrap: Update hook usage for files where Automake is the canonical source. | ||
| b09d945b | 2018-02-25 15:10:50 | 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. | ||
| 006c4dfe | 2018-02-04 00:09:31 | python: Avoid exceeding command-line length limit With Python implementations following PEP-3174, a large number of files are installed in the ‘__pycache__’ directory. As a consequence “t/instmany-python.sh” test was failing due to the ‘uninstall-pythonPYTHON’ target deleting installed files in a single ‘rm’ command. Doing that in multiple steps avoids exceeding the command-line length limit. This fixes bug#30335. * lib/am/python.am (uninstall-%DIR%PYTHON): For byte-compiled files installed in '__pycache__' directory, uninstall them by batch of 40. [?FIRST?] (am__pep3147_tweak): Adapt. | ||
| 0186f3fc | 2018-01-04 23:09:34 | missing: Update displayed URLs * lib/missing (perl_URL): Use HTTPS. (flex_URL): Use new Github homepage. Copyright-paperwork-exempt: yes | ||
| bbaa4cdc | 2018-01-04 16:19:30 | maint: Update copyright years to 2018 This update has been made with 'make update-copyright'. | ||
| 3f8a2dd5 | 2017-11-22 21:07:29 | port elisp-compilation support to emacs-23.1 and newer In May of 2017, emacs.master support for using the long-deprecated byte-compile-dest-file function was removed, and that removal broke automake's elisp-compiling rule for any .el file not in the current directory. In emacs-23.1 (July 2009) byte-compile-dest-file-function became the recommended way to adjust the byte-compiler's destination. The removed functionality has been restored for Emacs-26, albeit with dissuasive diagnostics warning about the imminent removal of this functionality. It will be removed in Emacs-27. * lib/am/lisp.am (.el.elc): Use byte-compile-dest-file-function, rather than byte-compile-dest-file. Also, use "-f batch-byte-compile '$<'" rather than open-coding it, as suggested by Glenn Morris. * t/lisp-readonly-srcdir.sh: New file, to test for the above. * t/list-of-tests.mk (handwritten_TESTS): Add it. * NEWS (Bugs fixed): Mention this problem. | ||
| ac47c22e | 2014-03-20 12:31:32 | "make dist" did not depend on $(BUILT_SOURCES) * lib/am/distdir.am (distdir-am): New intermediate target. Interpose this target between $(distdir) and its dependency on $(DISTFILES), so that we can ensure $(BUILT_SOURCES) are all created before we begin creating $(DISTFILES). * t/dist-vs-built-sources.sh: Test for this. * t/list-of-tests.mk (handwritten_TESTS): Add it. * NEWS (Bugs fixed): Mention it. Assaf Gordon reported that "make dist" (after ./configure from a pristine clone of GNU hello) would fail due to the absence of configmake.h while compiling lib/localcharset.c. https://lists.gnu.org/r/bug-hello/2014-03/msg00016.html | ||
| 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. | ||
| 48463bb2 | 2017-09-23 11:03:34 | install-sh: do not assume / = // * lib/install-sh: Do not append / to destination directory if it already ends in /. This supports a destination directory of // on hosts where / and // are distinct directories, as POSIX allows. | ||
| 6cb3b835 | 2017-09-22 23:06:15 | maint: Configure Emacs automatically with ".dir-locals.el" * .dir-locals.el: New Emacs directory configuration file. All perl files adapted. | ||
| 8191abac | 2017-09-21 20:08:48 | * lib/mdate.sh (TZ): Use portable setting. | ||
| c2757b97 | 2017-09-19 13:43:07 | maint: Reset master | ||
| 561f4736 | 2017-09-19 13:29:18 | Merge branch 'minor' | ||
| 1b3b7b7d | 2017-09-16 18:02:10 | make fetch | ||
| 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. | ||
| f4da36d7 | 2017-09-16 18:02:10 | make fetch | ||
| 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. | ||
| 7c25c996 | 2017-09-15 11:43:53 | mdate-sh: Ensure reproducible time output This change fixes automake bug#20314. 'mdate-sh' pretty-prints the modification time of a file. But it's output can vary depending on the timezone of the caller. Someone in timezone GMT-12 will get a different result (day) than someone in timezone GMT+12. As this output is also used to create/update stamp files, which influence the further build process, the build result can vary. * lib/mdate-sh: Set 'TZ' to UTC which ensures reproducible output. * NEWS: Announce bug fix. Copyright-paperwork-exempt: yes | ||
| 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. | ||
| e679a5c2 | 2017-08-31 14:22:30 | Merge branch 'micro' into minor | ||
| dd0b8142 | 2017-08-29 14:16:24 | config: Support AUTOMAKE_LIBDIR environment variable * lib/Automake/Config.in: Let AUTOMAKE_LIBDIR environment variable override the default location for '$libdir'. * doc/automake.texi (automake Invocation): Document AUTOMAKE_LIBDIR. * pre-inst-env.in (AUTOMAKE_LIBDIR): Set AUTOMAKE_LIBDIR. * bin/wrap-automake.in: Don't use "--libdir" option. | ||
| 8555e7b8 | 2017-07-16 00:11:07 | check: Make 'check-TESTS' target depend on test dependencies The 'check' and 'recheck' targets are already depending on the progams and scripts required to run the test suite. The 'check-TESTS' target while not in the public API might be used by uninformed users, so it makes sense to add the same dependency to it. This fixes bug#27186. * lib/am/check.am [!%?SERIAL_TESTS%] (check-TESTS): Add dependency to '%CHECK_DEPS%'. * THANKS: Update. | ||
| 3126fa4c | 2017-07-15 22:24:43 | dejagnu: Allow AM_RUNTESTFLAGS to override default RUNTEST arguments This fixes bug#25335. * lib/am/dejagnu.am (check-DEJAGNU): Swap $(RUNTESTDEFAULTFLAGS) and $(AM_RUNTESTFLAGS). * THANKS: Update. | ||
| cd69a1fd | 2017-06-18 03:04:25 | maint: Update files from upstream with 'make fetch' * lib/config.guess: Update. * lib/config.sub: Likewise. * lib/texinfo.tex: Likewise. | ||
| cc7231cc | 2017-06-16 23:07:00 | Merge branch 'minor' | ||
| c946ae6f | 2017-06-16 22:46:16 | Merge branch 'micro' into minor | ||
| f285f0f4 | 2017-03-05 10:57:29 | maint: Update "lib/texinfo.tex". This fixes a regression in 48107579abadbe857c8299c38d2ca0a3f8f354c8 where 'texi2dvi' was not able to produce a valid output for a Texinfo document without text. As a consequence the test "t/silent-texi.sh" was failing. * lib/texinfo.tex: Update to 2017-03-05.09. | ||
| d8add592 | 2017-03-02 18:55:53 | maint: Update copyright years to 2017. This update has been made with 'make update-copyright'. | ||
| 48107579 | 2017-03-02 18:00:46 | 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. | ||
| 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) | ||
| 5fac9a39 | 2016-05-30 17:07:52 | compile: remove .Tpo file upon failure When generating a .deps/base.Po file, our emitted rule first writes to a temporary .Tpo file, so the final creation can be atomic, via mv's rename. However, when generation of the .Tpo fails, it stop the process and does not remove that temporary file. And nothing else ever deletes it, either. Hence, in the unusual case in which one expects a compilation to fail during a successful build (gnulib's test-verify.sh does precisely this), a .deps/test-verify.Tpo file would be left behind, and that would in turn cause a "make distcheck" failure because that file would exist in one build+distclean hierarchy but not in the distribution tarball. * lib/am/depend2.am: Ensure that the temporary file is removed upon failure. * t/distcheck-Tpo.sh: New file. * t/list-of-tests.mk (handwritten_TESTS): Add it. This addresses bug#23661. | ||
| 455bad28 | 2016-03-31 16:45:26 | Merge branch 'minor' | ||
| 323dabef | 2016-03-31 16:40:20 | Merge branch 'micro' into minor | ||
| 749468ac | 2016-03-28 19:44:19 | automake: port better to future gzip * lib/am/distdir.am (dist-gzip, dist-shar, distcheck): Port better to future versions of gzip, which are planned to deprecate the GZIP environment variable (Bug#20132). | ||
| 4cf99902 | 2016-01-12 12:45:39 | Merge branch 'minor' | ||
| 0f5e166e | 2016-01-12 12:44:53 | Merge branch 'micro' into minor | ||
| 9094d07d | 2016-01-11 23:22:31 | maint: port time-stamp-time-zone to strict POSIX Set time-stamp-time-zone to "UTC0", not to "UTC", as POSIX defines TZ="UTC0" not TZ="UTC". | ||
| 0bc7d215 | 2015-11-24 12:42:15 | Merge branch 'minor' * minor: compile: add icl to compile wrapper script tests: fix a typo-induced bug | ||
| 46fd67c9 | 2015-11-24 12:39:59 | Merge branch 'micro' into minor * micro: compile: add icl to compile wrapper script Signed-off-by: Peter Rosin <peda@lysator.liu.se> | ||
| c40e27e1 | 2015-11-24 12:19:19 | compile: add icl to compile wrapper script * lib/compile: Have icl be treated similarly to cl (scriptversion): Update. * t/ax/am-test-lib.sh (require_tool): Handle icl. * t/compile7.sh: Add new test file for icl... * t/list-of-tests.mk (handwritten_TESTS): ...and use it. * NEWS: Update. * THANKS: Update. Copyright-paperwork-exempt: yes Signed-off-by: Peter Rosin <peda@lysator.liu.se> | ||
| 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> | ||
| 08849db8 | 2015-01-03 01:33:45 | deps: fix corner-case "make distclean" bug Assume we have package satisfying the following conditions: (1) automatic dependency tracking is enabled; (2) the 'subdir-objects' Automake option is enabled; (3) the package uses a recursive make setup. Also assume that: (a) a subdir Makefile declares a foo_SOURCES variable containing a source file in the parent directory; (b) that parent Makefile declare a compiled program itself. Then BSD and Solaris make used to fail when running "make distclean", because the 'distclean' target of the subdir Makefile removed the whole '.deps' directory before the parent Makefile was done with the included '.Po' makefile fragments in that directory. This issue was revealed by failures in the 'subobj-vpath-pr13928.sh' test when those make implementations were used. We fix the issue by ensuring the 'distclean' target of any Makefile only removed the '.Po' makefile fragments included by it, rather than the whole '.deps' directory where such files resides. This change should be the last step in fixing automake bug#13928 for good. * bin/automake.in (handle_languages), lib/am/depend.am: Adjust to implement the new 'distclean' logic. * t/pr224.sh: Adjust to avoid a spurious failure. * PLANS/subdir-objects.txt: Update. 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') | ||
| 5de75f07 | 2015-01-05 22:48:33 | maint: update copyright years to 2015 (branch 'micro') Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> | ||
| b01fbe9c | 2015-01-05 22:47:06 | Merge branch 'minor' * minor: sync: update third-part files from upstream maint: fix typo in error message of a maintainer-only rule maint: bump version number 1.15 -> 1.15a ('minor' Git branch) release: stable minor release 1.15 NEWS: minor improvements and fixed some typos and grammaros Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> | ||
| 15f986bd | 2015-01-05 22:30:30 | sync: update third-part files from upstream * lib/config.sub: This. * lib/INSTALL, lib/config.guess, lib/gitlog-to-changelog, lib/gnupload, lib/update-copyright: And this (but only for copyright year update, no real semantic change) Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> | ||
| c24233d4 | 2014-12-23 22:45:13 | Merge branch 'minor' * minor: dist: fix bug#18286 "distcheck fails to detect missing files" tests: expose automake bug#18286 "distcheck fails to detect missing files" include: fix bug in handling of user-defined makefile fragments generation tests: expose bug in handling of user-defined makefile fragments generation | ||
| bd838a68 | 2014-12-23 21:15:18 | Merge branch 'micro' into minor * micro: dist: fix bug#18286 "distcheck fails to detect missing files" tests: expose automake bug#18286 "distcheck fails to detect missing files" include: fix bug in handling of user-defined makefile fragments generation tests: expose bug in handling of user-defined makefile fragments generation | ||
| 6979c8e6 | 2014-12-23 20:24:46 | Merge branch 'distcheck-pr18286' into micro * distcheck-pr18286: dist: fix bug#18286 "distcheck fails to detect missing files" tests: expose automake bug#18286 "distcheck fails to detect missing files" | ||
| 01a7a4a7 | 2014-12-23 18:39:32 | dist: fix bug#18286 "distcheck fails to detect missing files" BTW, this issue had been already reported in the past: http://lists.gnu.org/archive/html/automake/2006-09/msg00008.html http://lists.gnu.org/archive/html/automake/2013-01/msg00049.html "make distcheck" could sometimes fail to detect missing files in the distribution tarball, especially in those cases where both the generated files and their dependencies are explicitly in $(srcdir). An important example of this are *generated* makefile fragments included at Automake time in Makefile.am. A basic example: # -*- Makefile.am -*- $(srcdir)/fragment.am: $(srcdir)/data.txt $(srcdir)/preproc.sh cd $(srcdir) && $(SHELL) preproc.sh <data.txt >fragment.am include $(srcdir)/fragment.am ... If the use forgot to add data.txt and/or preproc.sh in the distribution tarball, "make distcheck" would have erroneously succeeded! The reason is that, while $(srcdir)/data.txt does not exist, make also looks in $(srcdir)/$(srcdir)/data.txt, and in the distcheck-issued VPATH build where $(srcdir) is '..', that file exists, as it is part of the original development directory. * t/distdir.am (distcheck): Adjust to have the build directory be '$(distdir)/_build/sub' rather than just '$(distdir)/_build'. Thanks Nicola Fontana for the suggestion. * t/distcheck-pr18286.sh: Enhance and tighten a little. * t/list-of-tests.mk (XFAIL_TESTS): Remove 't/distcheck-pr18286.sh', as it's now passing. * t/subdir-am-cond.sh: Adjust to avoid a fully spurious failure due to the new distcheck semantics. * t/subdir-ac-subst.sh: Likewise. * t/dejagnu-relative-srcdir.sh: Likewise. * t/txinfo-builddir.sh: Likewise. * NEWS: Update. Helped-by: Nicola Fontana <ntd@entidi.it> Helped-by: Peter Johansson <trojkan@gmail.com> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> | ||
| a38fe86d | 2014-12-23 17:27:30 | Merge branch 'am-deps' into micro * am-deps: include: fix bug in handling of user-defined makefile fragments generation tests: expose bug in handling of user-defined makefile fragments generation Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> | ||
| 55270ac3 | 2014-12-23 13:10:21 | include: fix bug in handling of user-defined makefile fragments generation If a user defined one single Makefile fragment to be included (via Automake includes) in his main Makefile.am, and gave a rule to generate that file from other data, Automake used to spuriously complain about with something like "overrides Automake target '$(srcdir)/foo.am". This change remove that spurious error (via a simple hack rather than a systematic change, but oh well). * lib/am/configure.am (%MAKEFILE-IN-DEPS%) [?HAVE-MAKEFILE-IN-DEPS?]: Add a trailing "$(am__empty)" to the list of targets, which is enough to trick Automake into not complaining about "duplicated targets" in case the '%MAKEFILE-IN-DEPS%' list expands to a single target that is also declared in some user-defined rule. * t/list-of-tests.mk (XFAIL_TESTS): Remove now-passing test 't/am-include-only-one-generated-fragment.sh'. * NEWS: Update. 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. | ||
| 91238345 | 2014-12-22 13:39:30 | cleanup: refactor code to initialize DIST_COMMON There is not need to make that an Automake variable early, only to later get and munge its contents, and use the new content to redefine the variable. * bin/automake.in (@dist_common): New global variable. (push_dist_common, handle_dist): Use it. (handle_dist): Define am__DIST_COMMON instead of DIST_COMMON directly. (initialize_per_input): Reset it to empty. ($configure_dist_common): Turn this scalar variable ... (@configure_dist_common): ... into this array variable. (handle_dist): Adjust. (required_file_check_or_copy): Update and wrap some comments. * lib/am/distdir.am (DIST_COMMON): Append $(am__DIST_COMMON). * t/distcom2.sh: Tighten a little. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> |