doc/automake.texi


Log

Author Commit Date CI Message
Mike Frysinger eb20585d 2024-06-18T10:32:09 aclocal: add --aclocal-path option to override ACLOCAL_PATH envvar. From https://lists.gnu.org/archive/html/automake-patches/2022-01/msg00029.html (plus wording tweaks from Karl; and thanks to Bogdan for research). * bin/aclocal.in (usage): relabel output of m4 search path components to be somewhat more correct (Karl), although it's still a mess. (parse_arguments): add new option --aclocal-path=s. (parse_ACLOCAL_PATH): use $aclocal_path instead of hardwiring envvar. * doc/automake.texi (aclocal Options): document it. (dirlist): new anchor so we can reference it. (Modifying the Macro Search Path: @file{ACLOCAL_PATH}): mention the option. (Possible future incompatibility): tone down; it might never happen. * t/aclocal-path-precedence.sh: test the option. * NEWS: mention the new option.
Karl Berry fbf571f3 2024-06-18T08:54:27 doc: preserve old node name. Following 4981e5997 (doc: modernize version control doc). * doc/automake.texi (CVS): insert @anchor{CVS} so this (prior) node name will still work, e.g., in HTML. Reflow surrounding source.
Bruno Haible a2d56238 2024-06-17T10:06:25 automake: allow omitting logs of skipped tests from test-suite.log. * doc/automake.texi (Parallel Test Harness): Describe the contents of test-suite.log. Mention IGNORE_SKIPPED_LOGS. (Command-line arguments for test drivers): Document the --collect-skipped-logs option. * lib/test-driver (print_usage): Document --collect-skipped-logs. (collect_skipped_logs): New variable. (gcopy): Use collect_skipped_logs. * lib/am/check.am (am__common_driver_flags): Add the contents of am__collect_skipped_logs. (am__check_pre): Set am__collect_skipped_logs. * t/parallel-tests-without-skipped-logs.sh: New file, based on t/parallel-tests-no-color-in-log.sh. * t/list-of-tests.mk (handwritten_TESTS): Add it. * NEWS: Mention the change.
Paul Eggert 4981e599 2024-06-07T10:23:59 doc: modernize version control doc Be more generic about version control instead of saying “CVS”. In the specific examples, use Git instead of CVS.
Paul Eggert 1d35638b 2024-06-07T08:41:45 maint: spelling and whitespace fixes Most of these spelling fixes are just to comments and documentation. However, some affect tests as follows: * t/cond36.sh (tparse.h): Fix misspelling of dependency. * t/disthook.sh: Fix misspelling of file. * t/help3.sh: Fix misspelling of long option. * t/instdir-ltlib.sh: Fix misspellings of macro names. This causes the test to fail, so someone with libtool expertise needs to look into this. * t/tap-no-spurious-numbers.sh (highno): Fix misspelling of shell var.
Mark Wooding 0d49ecb2 2024-05-21T09:54:35 doc: test-driver option args are separate words. For https://bugs.gnu.org/70638. As now mentioned in the manual, the description of the test-driver command-line interface has been wrong since 2011 when it was first added. The manual, and the driver usage messages themselves, have consistently shown option arguments joined to the option name with `=' characters, while the implementation of Automake has always provided option arguments in the following argument word, and the provided test drivers only accepted option arguments in the following argument word. Because Automake has never used the `=' syntax, there can't possibly be a working driver which actually follows the specification as written, so, despite the fierce language of the manual, we agreed that changing the specification was the right approach. The `test-driver' program's usage message has already been fixed (#22445), but the full extent of the problem wasn't noticed at that time. * doc/automake.texi (Command-line arguments for test drivers): Fix the table of options to show arguments passed as separate words; add footnote explaining this rather sorry situation. * doc/automake.texi (Use TAP with the Automake test harness): Remove `=' from documentation of `--diagnostic-string', because that was never acceptable either. * lib/tap-driver.sh: Fix usage message. * contrib/tap-driver.pl: Change usage message to match the defined protocol. (This implementation parses options using Perl's `Getopt::Long' module, so it accepts the `=' syntax as specified, but this program isn't actually used.)
Reuben Thomas fa816226 2024-05-06T08:16:40 doc: update Vala documentation From https://bugs.gnu.org/70557#29. * doc/automake.texi (Vala Support): Update the URL for Vala. Drop the mention of a version requirement, as no current system will have a too-old version of Vala. Note the restriction on conditional inclusion of source files in *_SOURCES.
Karl Berry 2fa17ccc 2024-01-23T08:53:18 automake: recommend autoreconf -f with version mismatches. From https://bugs.gnu.org/68674. * bin/automake.in (scan_autoconf_traces): change error to suggest running autoreconf -f. The version mismatch is most likely to happen due to the cache files, which aclocal && automake (the previous recommendation) does not delete. (scan_autoconf_files): likewise. * doc/automake.texi (Auto-generating aclocal.m4): mention autoreconf. Other minor wording changes.
Gianfranco Costamagna ac64ce26 2024-01-17T14:48:13 python: use posix_prefix instead of posix_local on Debian. From https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54412#17. (Patch slightly adapted by Bogdan from original by Gianfranco, as posted by Stefano Rivera in message#14.) * m4/python.m4 (AM_PATH_PYTHON): replace Debian's posix_local scheme with posix_prefix. * doc/automake.texi (Python) <pythondir>: say a bit more. * NEWS: mention this.
Karl Berry 420b53da 2024-01-17T09:44:49 doc: mention debian python 3.10 changes; master menu; etc. * doc/automake.texi (Creating amhello): mention libtool too. (FAQ): remove spurious leftover "Errors with distclean" menu entry. (Top): Regenerate master menu (M-x texinfo-master-menu).
Paul Eggert b80b5c47 2024-01-01T11:29:06 maint: make update-copyright
Karl Berry ea454b4f 2023-12-31T18:28:10 doc: overview of autotools ordering. * doc/automake.texi (Creating amhello): briefly mention the order in which to run the autotools, a la autoreconf. A couple other tweaks.
Bruno Haible 21ac1161 2023-12-30T15:37:05 dist: Use -9 instead of --best, and only for gzip, to pacify Alpine. From https://bugs.gnu.org/68151. * lib/am/distdir.am (GZIP_ENV): Set to -9, not --best, since Alpine does not support --best. (distcheck): Don't use GZIP_ENV when invoking gzip for decompression, since Alpine does not support -1..-9 with decompression. * doc/automake.texi (The Types of Distributions): Document the change. * NEWS: mention this. (En passant, add more change links.)
Karl Berry 01b62818 2023-12-25T15:42:34 test: silent-defaults.sh rerun autotools each time. Follow-up to https://bugs.gnu.org/32868. * t/silent-defaults.sh: rerun $ACLOCAL && $AUTOMAKE for each trial, else test failed. (Why it has always succeeded before now, and/or what has changed, I don't know.) Remake the cache for each trial, for reliability. Echo trial description. * doc/automake.texi (Silent Rules): tweak text. (Unsilencing Automake): new node. Mention make --debug=p to completely unsilence rules.
Karl Berry 8f43e75d 2023-12-23T10:44:03 doc: more on help2man and "Errors with distclean". This fixes (the rest of) https://bugs.gnu.org/67891. * doc/automake.texi (Errors with distclean): make a subsection of "Checking the Distribution". Contrast help2man usage examples of Autoconf (includes man pages in distribution) and Automake (no man pages, distributes the help2man script instead). (Checking the Distribution): convert subheadings to subsections. * doc/local.mk: also mention autoconf vs. automake approaches here, and point to the manual. (checklinkx): en passant, remove unused checklinkx exclude.
Reuben Thomas 0fbca7e7 2023-12-10T15:12:00 doc: add advice to list Yacc/Lex generated sources in BUILT_SOURCES. For https://bugs.gnu.org/62791. * doc/automake.texi (Yacc and Lex): it seems to be necessary to list the generated C source file for a Yacc/Lex file, as well as the header file, in BUILT_SOURCES.
Karl Berry fac41f94 2023-12-02T14:33:30 doc: autoconf portability link, python NEWS. More for https://bugs.gnu.org/67268. * doc/automake.texi (Usage of Conditionals): link to Autoconf's Limitations of Builtins, e.g., https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.71/html_node/Limitations-of-Builtins.html * NEWS: Python version preferences are not just miscellaneous.
Pavel Raiskup 8cdbdda5 2023-11-21T08:30:00 automake: make the ARFLAGS default 'cr' instead of 'cru'. In some GNU/Linux distributions people started to compile 'ar' binary with --enable-deterministic-archives (binutils project). That, however, in combination with our previous long time working default AR_FLAGS=cru causes warnings on such installations: ar: `u' modifier ignored since `D' is the default (see `U') The 'u' option (at least with GNU binutils) did small optimization during repeated builds because it instructed 'ar' to not open/close unchanged *.o files and to rather read their contents from old archive file. However, its removal should not cause a big performance hit for usual workflows. Distributions started using --enable-deterministic-archives knowing that it would disable the 'u', just to rather have a bit more deterministic builds. Also, to justify this change a bit more, keeping 'u' in ARFLAGS could only result in many per-project changes to override Automake's ARFLAGS default, just to silence such warnings. Fixes bug#20082. Reported by Eric Blake. * bin/automake.in (handle_libraries): Use 'ARFLAGS=cr' by default. * doc/automake.texi (Building a library): Mention the changed ARFLAGS default. (@c LocalWords): Replace 'cru' with 'cr'. * m4/ar-lib.m4 (AM_PROG_AR): Cut out 'cru' string into separate ARFLAGS variable with new default 'cr'. * NEWS: Document.
Karl Berry f4b5d415 2023-11-18T18:25:16 doc: mention shell operators preferred over `test` options. * doc/automake.texi (Usage of Conditionals): mention that shell operators (&&, ||, ()) are preferred over `test` options (-a, -o, \(\)). Idea and POSIX url reference from Michael Stapelberg, https://lists.gnu.org/archive/html/automake-patches/2016-10/msg00002.html
Karl Berry df85c29c 2023-11-01T09:25:21 doc: tiny Texinfo cleanups. * doc/automake.texi (Public macros): Missed @var usage. (Dependencies): "The Autoconf Manual" in cross-manual xref.
Łukasz Stelmach edd08396 2023-11-01T09:18:57 m4: update invocation of AC_PROG_LEX. * m4/lex.m4: Pass on any arguments given to AC_PROG_LEX. * doc/automake.texi: Describe this. * NEWS: Mention this. * THANKS: New contributor.
Karl Berry 2d91e57b 2023-10-30T10:14:51 doc: user conditional for dependency tracking. * doc/automake.texi (Automatic dependency tracking): Describe basing a conditional for dependency tracking on the shell variable enable_dependency_tracking. Mentioned by Nick Bowler. https://lists.gnu.org/archive/html/automake/2023-09/msg00004.html * HACKING: Capitalization.
Vincent Lefevre 1c618bce 2023-10-06T08: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.
Ineiev 80d755f9 2023-08-05T17:58:10 doc: missing docdir and lispdir in _DATA description. This changes fixes https://bugs.gnu.org/65032. * doc/automake.texi (Data): add docdir and lispdir, index doc_DATA and lisp_DATA.
Bruno Haible dbdfa65c 2023-07-20T18: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.)
Bogdan 5c85a9d3 2023-07-13T15:32:34 texi: assume .texi.in generates .texi. This change refines the fix for https://bugs.gnu.org/54063. * bin/automake.in (scan_texinfo_file): if .texi doesn't exist, but .texi.in exists, read the latter for the Texinfo source. Use the @setfilename argument, if present, to generate rules. * t/txinfo-no-texi-but-texi-in.sh: new test. * t/list-of-tests.mk (handwritten_tests): add it. * doc/automake.texi (Texinfo): document this. * NEWS: mention this. (Doc changes written by Karl.)
Karl Berry 8859f820 2023-06-29T17:59:48 doc: discuss setting uid/gid information in tarballs. In response to https://bugs.gnu.org/19615. * doc/automake.texi (Basics of Distribution): give example of specifying the TAR_OPTIONS (environment) variable used by GNU tar.
Karl Berry a456dfd6 2023-06-27T18:10:38 doc: discuss workaround for V=99 failing. In response to https://bugs.gnu.org/20077. * doc/automake.texi (Tricks For Silencing Make): state and discuss workarounds for the limitation of $(V) only being settable to 0 or 1.
Karl Berry 7db4d7d1 2023-06-24T18:31:29 doc: bring a few examples up to date. * doc/automake.texi (Built Sources Example): use @kbd for typed commands; show current output. (Checking the Distribution): refer to Third-Party Makefiles for the do-nothing dvi target example. Other small wording tweaks throughout. * HACKING: consistently omit $ prompt. Say a bit more about versions of Autoconf. Describe actual current status of branches (only master in use). Give some topic examples. "rerun" not "re-run". Other small wording tweaks throughout.
Mike Frysinger f15852df 2023-01-03T21: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).
Karl Berry 2c0a22f9 2023-01-08T17:56:40 doc: overriding targets doesn't mean third-party Makefiles. Fixes automake bug https://bugs.gnu.org/60607. * doc/automake.texi (dvi and distcheck): simply show dvi: as an example of a do-nothing Makefile (xref to Extending), instead of cross-referencing the complicated method in Third-Party Makefiles. (Clean, Extending): wording tweaks.
Mike Frysinger 34bdde96 2023-01-04T02:00:14 maint: make update-copyright
Richard Hopkins cea8158f 2022-09-27T18:04:20 automake: do not use -Q with emacs invocations. This change is for https://bugs.gnu.org/58102. (By the way, the previous two commits were for bugs 58026 (silent .elc compilation) and 58025 (load bytecomp), respectively, but I forgot to mention them.) * m4/lispdir.m4 (AM_PATH_LISPDIR): omit -Q option. Also (from karl), use -no-site-file (one hyphen) for consistency with the other options. * NEWS: mention this. * doc/automake.texi (Hard-Coded Install Paths): likewise.
Mike Frysinger d5dc4e0a 2022-02-23T00:44:11 manual: mention LT_INIT The AC_PROG_LIBTOOL macro name is the old/deprecated one, so include LT_INIT here too to avoid confusing people who have switched. * doc/automake.texi: Add LT_INIT after AC_PROG_LIBTOOL.
Mike Frysinger 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.
Mike Frysinger 8ff90705 2022-02-06T01:23:47 manual: document Python version support status Clarify to users what versions of Python are supported and until when. This will make it easier for us to decide what versions to support. * doc/automake.texi: Add Supported Python versions section.
Mike Frysinger 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.
Mike Frysinger 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.
Mike Frysinger 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.
Jim Meyering 6c8ff6a8 2022-01-12T14:15:12 maint: make update-copyright
Bruno Haible 40f4b5dd 2021-12-18T18:26:46 doc: %reldir% and %canon_reldir% do not expand to the empty string. This change fixes https://bugs.gnu.org/52500. * doc/automake.texi (Include): correct wrong text. (Along the way, correct plain-text "Makefile" to "@file{Makefile}".)
Karl Berry 948c5fa4 2021-11-04T18:17:39 doc: rearrange Multiple Outputs node. This change fixes https://bugs.gnu.org/48188. * doc/automake.texi (Multiple Outputs): move GNU pattern rule approach to the front, since it is probably best if GNU make can be assumed. Suggestion from Frank Heckenbach. Also, remove one of the examples that did not work, per Paul Smith.
Karl Berry f4ac56ee 2021-11-01T18:24:25 doc: correct @node placement for new subsubsection. This change addresses https://bugs.gnu.org/51532. * doc/automake.texi (Linking Multiple Yacc Parsers): unfortunately I misplaced the @node after the @subsection; correct that.
Karl Berry 6f842a90 2021-09-28T18:27:57 doc: show "RUNNING: <testname>" example using [AM_]TESTS_ENVIRONMENT. This change addresses https://bugs.gnu.org/49309. * doc/automake.texi (Testsuite Environment Overrides): new subsubsection, separating out [AM_]TESTS_ENVIRONMENT description. Add example to get "RUNNING: <testname>" when a test starts.
Karl Berry 80ad99a6 2021-09-28T14:59:22 doc: tweak Yacc/Lex text; subnode for the yacc linking hack. * doc/automake.texi (Alternative): remove obsolete footnote. (Yacc and Lex): tweak wording, more consistent capitalization. (Linking Multiple Yacc Parsers): new subsection. Also add @shortcontents. Also update texinfo-master-menu (for the first time in ages).
Karl Berry 56387843 2021-09-19T15:12:27 python: only use Python's sys.* values if the new option --with-python-sys-prefix is specified; otherwise, return to previous behavior of using the GNU ${prefix} and ${exec_prefix}. * doc/automake.texi (Python): document the new behavior. * m4/python.m4 (AM_PATH_PYTHON): conditionalize use of Python's sys.* values on the new option --with-python-sys-prefix. * t/python-prefix.sh: doc update. * t/python-vars.sh: test both GNU and Python prefix values. * NEWS: mention this.
Nick Gasson 57688bd5 2021-07-15T18:37:09 automake: silent make output for custom link commands. Patch posted: https://lists.gnu.org/archive/html/automake-patches/2021-07/msg00010.html * bin/automake.in (define_per_target_linker_variable): Use AM_V_${target}_LINK if defined as the verbose variable name for custom link commands. * doc/automake.texi (Program and Library Variables): Document the new variable. * t/link_override.sh: Add extra checks for silent make rules. * NEWS: Mention this. * THANKS: new contributor.
Allison Karlitskaya 3d9460bc 2021-07-09T09:03:30 maint: tweak comment wording * doc/automake.texi (List of Automake options): Nit. * t/dist-no-built-sources.sh: Likewise.
Allison Karlitskaya 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.
Karl Berry 16569085 2021-07-01T18:21:51 dist: accept .md versions for README et al. This change was suggested by madmurphy; some ideas were taken from the patch he provided. https://lists.gnu.org/archive/html/automake-patches/2021-06/msg00005.html * bin/automake.in (@toplevelmd_ok): new global, listing the files for which we will accept .md versions. (@common_files): remove those files from there. (handle_dist): check for .md if non-.md is absent. (handle_minor_options): check for README-alpha.md. (check_gnu_standards): accept .md version if present. (check_gnits_standards): likewise. (usage): output list of .md-accepted files. * doc/automake.texi (Basics of Distribution): document. * t/toplevelmd.sh: new test. * t/list-of-tests.mk (handwritten_tests): add it. * NEWS: mention new feature.
Karl Berry e7724fb1 2021-06-08T17:58:10 doc: omit "really" from manual. * doc/automake.texi: remove or replace "really".
Karl Berry ccca652a 2021-06-07T18:09:25 doc: --always-make doesn't work. * doc/automake.texi (Rebuilding): the GNU Make option --always-make does not work with Automake. Report from Johan Persson, https://lists.gnu.org/archive/html/automake/2021-06/msg00002.html. Also, use "GNU Make" (capital M) more consistently.
Karl Berry 337c4bae 2021-05-18T18:34:56 doc: wording. * README: * t/python-virtualenv.sh: * doc/automake.texi: wording, typos, etc.
Joshua Root ed8daa06 2021-05-18T15:11:59 python: use Python's sys.prefix and sys.exec_prefix for PYTHON_PREFIX and PYTHON_EXEC_PREFIX; new configure options --with-python_prefix and --with-python_exec_prefix to set explicitly. This change fixes https://bugs.gnu.org/35322. * m4/python.m4 (AM_PATH_PYTHON): use Python's sys.prefix and sys.exec_prefix for PYTHON_PREFIX and PYTHON_EXEC_PREFIX, instead of $prefix and $exec_prefix. But use a variable reference to ${prefix} if it is contained within sys.prefix; similarly for exec_prefix. Also support new configure options to set explicitly. (PYTHON_PREFIX, PYTHON_EXEC_PREFIX): AC_SUBST these. (am_cv_python_pythondir): use our new $am_cv_python_prefix, substituting ${PYTHON_PREFIX}. (am_cv_python_pyexecdir): likewise. * doc/automake.texi (Python): PYTHON_PREFIX, PYTHON_EXEC_PREFIX, document new approach. * t/instmany-python.sh: set PYTHON_PREFIX as needed. * t/python-vars.sh (PYTHON_EXEC_PREFIX, PYTHON_PREFIX): also set from Python's sys.{exec_,}prefix; use ${PYTHON_{EXEC,}PREFIX} instead of ${exec_,}prefix.
Karl Berry 03d1ab0a 2021-02-22T18:23:16 doc: a_LDFLAGS always overrides AM_LDFLAGS. This change addresses https://bugs.gnu.org/34925. * doc/automake.texi (Program and Library Variables): document that using a_LDFLAGS at all, even in the false branch of a conditional, means that AM_LDFLAGS is ignored.
Mike Frysinger 784fcf21 2021-02-21T18:26:15 doc: [AM_]RUNTESTFLAGS not [AM_]RUNTESTDEFAULTFLAGS. * doc/automake.texi (Other Variables): Change [AM_]RUNTESTDEFAULTFLAGS to [AM_]RUNTESTFLAGS.
Karl Berry 89a76c9c 2021-02-11T18:05:15 doc: user flags last does not always allow overriding. This change addresses https://bugs.gnu.org/35526. * doc/automake.texi (Flag Variables Ordering): recognize that user flags last does not always allow overriding.
Karl Berry f80a940a 2021-01-06T17:57:08 doc: discuss AC_* ordering a little. * doc/automake.texi (Optional): mention that AC_CONFIG_AUX_DIR must be called before AM_INIT_AUTOMAKE, and recommend that other AC_CONFIG_* macros be called after. This seems to be the most common practice. Autoconf does not currently impose ordering: https://savannah.gnu.org/support/?110416
Reuben Thomas 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.
Karl Berry e83520ff 2020-12-03T11:00:53 warnings: be less forceful about a missing subdir-objects option. This change somewhat ameliorates https://bugs.gnu.org/20699. * bin/automake.in (handle_single_transform): change forward-incompatibility message for subdir-objects to be less draconian and less certain that the change will ever be made. * t/subobj.sh: message text has changed. * doc/automake.texi (Program and Library Variables): mention the unfortunate fact that one directory can clean in a sibling, subdir-objects notwithstanding.
Karl Berry 1f166f3c 2020-11-24T14:24:22 doc: typo. This change fixes https://bugs.gnu.org/44845. * doc/automake.texi (Vala Support): zardoz.c not zardoc.c.
Karl Berry dd616e2d 2020-11-22T10:13:16 doc: mention overriding SUBDIRS= with TESTS= and recursive make. This change palliates https://bugs.gnu.org/42883, though it's not a real fix. * doc/automake.texi (Parallel Test Harness): with recursive make, when limiting the tests run, also presumably needed to override SUBDIRS.
Miro Hron\v{c}ok e21d46fd 2020-10-27T14:33:46 python: determine Python (3.10) version number correctly. This change fixes https://bugs.gnu.org/44239 (and https://bugzilla.redhat.com/show_bug.cgi?id=1889732). * m4/python.m4: use print('%u.%u' % sys.version_info[:2]) for the version number instead of merely sys.version[:3], so the numbers are treated as numbers. * t/python-vars.sh (PYTHON_VERSION): Likewise. * doc/automake.texi: Document it. * NEWS: mention it. (Minor tweaks from Karl Berry.)
Jim Meyering 310edf02 2020-10-23T21:13:09 doc: correct "moved in", to "moved to" * NEWS: Correct wording. * contrib/README: Likewise. * doc/automake.texi: Likewise.
Reuben Thomas f832992d 2020-10-21T23:31:46 Improve Vala compiler detection: use API version, not compiler version * m4/vala.m4: check `valac --api-version', not `valac --version'. * doc/automake.texi: update documentation.
Karl Berry 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.
Zack Weinberg e0d69cc7 2020-09-21T14:16:33 Update documentation of warnings options and strictness levels. The warning categories ‘cross’ and ‘portability-recursive’ were not mentioned in the manual. Also clarify the relationship between warnings categories and strictness levels, and streamline the description of strictness levels by merging the “Gnits” section into the “Strictness” section. * doc/automake.texi (Gnits, Strictness): Combine these sections. Minor revisions to explanation of strictness levels. (automake Invocation): Add documentation of all the warnings categories that have been added since the last time this section was updated. Minor clarifications.
Karl Berry 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.
Akim Demaille 660dfaeb 2020-05-28T17:45:15 docs: promote Makefile snippets that work properly with make -n. This change handles https://bugs.gnu.org/10852. * doc/automake.texi (Multiple Outputs): Split commands than reinvoke $(MAKE) to avoid file removals during dry runs.
Karl Berry c838e042 2020-05-25T18:30:53 docs: forgot TAR in NEWS; fix " -- " in manual. * NEWS: it seems the TAR envvar was never mentioned in NEWS; add it, back for 1.11.3 when it was apparently implemented. * doc/automake.texi: consistently use "---" instead of " --".
Karl Berry 14ac16ec 2020-05-25T18:20:01 docs: TAR envvar overrides "tar" for make dist. This change finishes https://bugs.gnu.org/9822. * doc/automake.texi (Basics of Distribution): mention that environment variable TAR overrides "tar".
Karl Berry 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.
Karl Berry 656befe5 2020-05-07T18:26:33 docs: make dist implies make dvi. This change handles https://bugs.gnu.org/7994. * doc/automake.texi (Preparing Distributions): make distcheck runs make dvi. (Auxiliary Programs) <texinfo.tex>: mention that make dist runs make dvi, and therefore a TeX system is required when Texinfo sources are present. Add @cmindex entries for all auxiliary programs while we're here.
Vincent Lefevre c211745e 2020-04-23T17:40:39 bug#40699: "dist Hook" documentation in manual is incorrect or unclear about write permissions On 2020-04-20 14:59:00 -0600, Karl Berry wrote: > i.e. it does not change the permissions in order to make the removal > work recursively > > Right, I see it now. Had been testing the wrong thing. > > So, can you propose a specific change for the manual? -k I think that it is sufficient to fix the example (the explanation is just below). BTW, the second example is also incorrect. commit a639e5b51cadbaff88ca4059b4db4571c811070c Author: Vincent Lefevre <vincent@vinc17.net> Date: 2020-04-23 17:33:54 +0200 doc: fix dist-hook examples
Karl Berry df5460e0 2020-03-31T18:21:22 doc: update urls in manual and include checklinkx script. * doc/automake.texi: update many urls; http -> https, search.cpan.org -> metacpan.org/pod/distribution, node names, etc. Remove sourceware.org/cgi-bin/gnatsweb.pl and miller.emu.id.au/pmiller/books/rmch/ as these are 404 and no good replacement is evident. s/perl/Perl/ a couple times in text for good measure. * contrib/checklinkx: new script, a small modification of W3C checklink <https://validator.w3.org/checklink/docs/checklink.html> (W3C license, which is free software), starting from version 4.81 installed from CPAN: https://metacpan.org/pod/distribution/W3C-LinkChecker/bin/checklink.pod * doc/local.mk (checklinkx): new target to invoke it, with variables. * Makefile.am (EXTRA_DIST): distribute it. * NEWS: mention all this.
Karl Berry 8e05f006 2020-01-26T18:06:04 doc: clarify build tree location * doc/automake.texi (VPATH Builds): more words about the build tree location. Suggestion from Jefferson Carpenter, 31 May 2018: <https://lists.gnu.org/archive/html/automake-patches/2018-05/msg00003.html>
Jim Meyering cf27a3df 2020-01-01T11:44:41 maint: make update-copyright
Giuseppe Scrivano 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.
Paul Eggert 5ae02cc8 2019-10-14T13:46:55 maint: make update-copyright
Paul Hardy 6624f88b 2018-10-23T20:55:44 doc: Fix various typos and phrasing This change fixes automake bug#32150. * doc/automake.texi: Various typos and phrasing changes.
Bruno Haible fab4fb3a 2018-01-03T01:52:34 doc: Document the portability of various tar formats better * doc/automake.texi (List of Automake options): Document the portability of the tar-ustar and tar-pax options better.
Mathieu Lirzin bbaa4cdc 2018-01-04T16:19:30 maint: Update copyright years to 2018 This update has been made with 'make update-copyright'.
Mathieu Lirzin c2757b97 2017-09-19T13:43:07 maint: Reset master
Paul Eggert 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.
Paul Eggert 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.
Mathieu Lirzin f389ecb8 2017-08-31T19:23:42 Merge branch 'minor'
Mathieu Lirzin ab2d33e6 2017-08-29T21:15:14 aclocal: Support ACLOCAL_AUTOMAKE_DIR environment variable * bin/aclocal.in: Reset '@automake_includes' and '@system_includes' in for build environment. Allow setting '@automake_includes' with ACLOCAL_AUTOMAKE_DIR environment variable. (parse_arguments): Ignore 'dirlist' when '@system_includes' is empty. * doc/automake.texi (aclocal Options): Document ACLOCAL_AUTOMAKE_DIR. * bin/wrap-aclocal.in: Remove extra command line options. * pre-inst-env.in: Set ACLOCAL_AUTOMAKE_DIR and ACLOCAL_PATH environment variables. * t/ax/test-defs.in: Adapt. * t/ansi2knr-no-more.sh (warn_rx): Likewise.
Mathieu Lirzin 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.
Mathieu Lirzin bea673a5 2017-07-16T02:01:28 doc: Fix typo "nothing" => "noting" This fixes bug#24476. * doc/automake.texi (Checking the Distribution): Fix typo. * THANKS: Update.
Mathieu Lirzin 5864fb55 2017-07-16T01:02:49 doc: Fix typos This fixes bug#23099. * doc/automake.texi (Scripts-based Testsuites) (Parallel Test Harness): Fix typos. * THANKS: Update.
Mathieu Lirzin cc7231cc 2017-06-16T23:07:00 Merge branch 'minor'
Mathieu Lirzin 386569b2 2017-05-18T14:50:03 bootstrap: Rename 'bootstrap.sh' to 'bootstrap'. Follow Gnulib's convention of using either "bootstrap" or "autogen.sh" file names for development bootstrap scripts. * bootstrap.sh: Rename to ... * bootstrap: ... this. * GNUmakefile (bootstrap): Adapt. * HACKING: Likewise. * Makefile.am (EXTRA_DIST): Likewise. * doc/automake.texi (Future of aclocal) (Error required file ltmain.sh not found): Likewise. * maintainer/maint.mk (autodiffs, update-copyright): Likewise.
Mathieu Lirzin d8add592 2017-03-02T18:55:53 maint: Update copyright years to 2017. This update has been made with 'make update-copyright'.
Mathieu Lirzin cdf80d50 2017-02-23T16:40:03 doc: fix typo "requited" => "required" This change fixes automake bug#25413. * doc/automake.texi (Serial Test Harness): Fix typo.
Jim Meyering 1370ce5f 2017-01-01T08: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)
Stefano Lattarini 2f0293e1 2015-01-05T22:55:51 Merge branch 'minor' * minor: maint: update copyright years to 2015 (branch 'micro')
Stefano Lattarini 5de75f07 2015-01-05T22:48:33 maint: update copyright years to 2015 (branch 'micro') Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini 36812809 2014-12-30T20:59:22 Merge branch 'minor' * minor: docs: "make distcheck" implementation details are not to be abused NEWS: improve and adjust in light of the oncoming 1.15 release shell-no-trail-bslash: improve diagnostic in case of failure Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini 4cb0327a 2014-12-30T20:45:48 docs: "make distcheck" implementation details are not to be abused * doc/automake.texi: State explicitly and in detail that the exact location and the exact structure of the subdirectory used by "make distcheck" is to be considered an implementation detail, which can change at any time. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini 033293c2 2014-12-22T19: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.