|
d4801dff
|
2022-09-26T09: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-26T08: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-18T14:11:15
|
|
doc: typo in depcomp.
* lib/depcomp: obsosete -> obsolete. Report from anonymous.
|
|
5f3e37da
|
2022-07-25T17:49:53
|
|
compile: look for clang-cl.
* lib/compile: check for clang-cl, calling func_cl_wrapper.
* THANKS: add new contributor.
|
|
f9fdcdfd
|
2022-05-23T13: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-06T01: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-20T13: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-17T04: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-17T03: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-15T22: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-08T00: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-07T23: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-06T01: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-06T00: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-05T23: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-05T23: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-30T05: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-24T03: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-24T02: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-19T05: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-30T15: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-12T14:15:12
|
|
maint: make update-copyright
|
|
a320a092
|
2021-11-27T17: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-31T12: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-26T18:19:43
|
|
maint: Update files from upstream with 'make fetch'.
* lib/config.sub: Update.
|
|
522e0d40
|
2021-08-07T17: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-26T18: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-22T13:44:12
|
|
maint: Update files from upstream with 'make fetch'.
* lib/gendocs.sh: Update.
|
|
a470a47f
|
2021-07-11T19:19:42
|
|
maint: make update-copyright
|
|
314c55f0
|
2021-07-11T18: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-09T09: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-05T18: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-13T18: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-05T18: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-23T18: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-15T21: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-13T17:51:46
|
|
install-sh: trailing whitespace.
* lib/install-sh: remove trailing whitespace. Sigh.
(scriptversion): 2020-11-14.01
|
|
37b70ac4
|
2020-11-13T17: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-12T17: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-10T18: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-10T18: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-10T17: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-10T17: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-06T18: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-13T11: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-11T18: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-11T16: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-11T14: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-02T20: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-31T18: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-13T18: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-01T16: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-26T15:12:08
|
|
* Update scriptversions for install-sh, mkinstalldirs.
|
|
cd8ef343
|
2020-07-26T15: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-29T15: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-06T15: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-17T09: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-10T17: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-08T18: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-29T08: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-25T18: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-13T18: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-29T18: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-04T17: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-01T11:44:41
|
|
maint: make update-copyright
|
|
5c466eaf
|
2019-10-04T16: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-11T12: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-14T13:46:55
|
|
maint: make update-copyright
|
|
06971c3d
|
2019-10-14T13:44:48
|
|
maint: make fetch
|
|
d89a1aad
|
2019-08-25T18: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-04T03:43:54
|
|
ar-lib: Fix for MSVC 14.
* lib/ar-lib (extract): Convert CRLFs in 'lib -NOLOGO -LIST' output to LFs.
|
|
a348d830
|
2018-07-08T23: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-11T22: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-11T21: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-03T23: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-06T20: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-25T15: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-04T00: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-04T23: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-04T16:19:30
|
|
maint: Update copyright years to 2018
This update has been made with 'make update-copyright'.
|
|
3f8a2dd5
|
2017-11-22T21: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-20T12: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-23T12: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-23T11: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-22T23: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-21T20:08:48
|
|
* lib/mdate.sh (TZ): Use portable setting.
|
|
c2757b97
|
2017-09-19T13:43:07
|
|
maint: Reset master
|
|
561f4736
|
2017-09-19T13:29:18
|
|
Merge branch 'minor'
|
|
1b3b7b7d
|
2017-09-16T18:02:10
|
|
make fetch
|
|
3562e384
|
2017-09-16T13: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-16T18:02:10
|
|
make fetch
|
|
199e7a44
|
2017-09-16T13: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-15T11: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-31T19:23:42
|
|
Merge branch 'minor'
|
|
e94c0186
|
2017-08-31T14: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-31T14:22:30
|
|
Merge branch 'micro' into minor
|
|
dd0b8142
|
2017-08-29T14: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-16T00: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-15T22: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-18T03:04:25
|
|
maint: Update files from upstream with 'make fetch'
* lib/config.guess: Update.
* lib/config.sub: Likewise.
* lib/texinfo.tex: Likewise.
|