m4/missing.m4

Branch


Log

Author Commit Date CI Message
Paul Eggert 61075eab 2025-01-01T14:31:02 maint: make update-copyright
Paul Eggert b80b5c47 2024-01-01T11:29:06 maint: make update-copyright
Mike Frysinger 34bdde96 2023-01-04T02:00:14 maint: make update-copyright
Jim Meyering 6c8ff6a8 2022-01-12T14:15:12 maint: make update-copyright
Jim Meyering a470a47f 2021-07-11T19:19:42 maint: make update-copyright
Zack Weinberg 74a413ff 2020-09-05T18:12:48 automake: be robust against directories containing (). This change fixes https://bugs.gnu.org/14196. * m4/missing.m4 (AM_MISSING_HAS_RUN): always quote the invocation (not just if $am_aux_dir contains space or tab), in case $am_aux_dir contains () or other metachars not rejected by AM_SANITY_CHECK; quoting with '...' suggested by Jim Meyering. * t/man6.sh (HELP2MAN): adjust grep since missing value is quoted now. * t/am-missing-prog.sh: likewise.
Jim Meyering cf27a3df 2020-01-01T11:44:41 maint: make update-copyright
Paul Eggert 5ae02cc8 2019-10-14T13:46:55 maint: make update-copyright
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
Mathieu Lirzin d8add592 2017-03-02T18:55:53 maint: Update copyright years to 2017. This update has been made with 'make update-copyright'.
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 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 a78f63c5 2014-04-21T15:10:54 maint: update copyright years We've been in 2014 already for few months now... Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini 7df8b28c 2012-12-31T18:18:37 maint: update copyright year for 2013 (in branch maint) Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini 094b83a6 2012-07-16T11:16:15 Merge branch 'maint' * maint: fixup: delete "# serial" line in m4/amversion.in news: update about recent ylwrap changes and fixes m4: get rid of "# serial" lines configure: ${#param} must be supported by the shell for the testsuite yacc tests: fix a spurious failure with parallel make ylwrap: use proper quoting inside a `...` substitution ylwrap: don't uselessly reset the exit status in case of failure ylwrap: fix C++ support for Bison ylwrap: refactor: move loop invariant ylwrap: refactoring: don't rely on the file order tests: upgrade and fix Bison test case tests: fix bison input file ylwrap: comment changes ylwrap: modernize idioms ylwrap: rename header inclusion in generated parsers ylwrap: simplify the list of renamings ylwrap: refactor: less duplication Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini 6e3c0b92 2012-07-14T18:49:25 m4: get rid of "# serial" lines The "#serial" lines are only considered by aclocal for the system-wide third-party '.m4' files, not for the Automake-provided ones. So they serve no real purpose in the Automake '.m4' files. In addition, now that we use git and topic branches, and that we are also writing the Automake-NG fork, the "#serial" lines are becoming more and more unreliable (e.g., different version of the same file in different branches can easily end up having the same serial numbers). So let's just nuke all the "#serial" lines. See also automake bug#11932. * m4/*.m4: All "# serial" lines removed. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini a22717df 2012-06-15T11:13:00 missing: do not touch timestamps; only warn for out-of-date files Before this change, the missing script had a twofold role: - it warned the user if some required maintainer tools was missing, or too old; - in such a case, it tried to "fix" the timestamp of the files that should have been rebuilt by that tool (without actually updating the file contents, of course), to allow the build to continue. The second capability used to be quite useful in the days when most projects committed files generated by maintainer-only tools in their VCS repository (today the trend is not to keep such generated files VCS-committed anymore). In such a setup, the "timestamp-fixing" capability of 'missing' was quite useful, in that it allowed users lacking some required maintainer tool to build from a VCS checkout in the face of skewed timestamps (as could have been caused by "cvs update" or "git checkout"). But then, when the automatic remake rules kicked in due to the generated files being *actually out-of-date* (e.g., because the user had modified 'configure.ac' but lacked a modern-enough autoconf to rebuild it), that behaviour of 'missing' caused the same problem that plagued AM_MAINTAINER_MODE; i.e., the user would get non-dependable builds and inconsistent statuses of the build tree -- changes to source files don't reflect on generated files, and this can be very confusing and cause hard-to-spot errors). So we now believe that the best approach to deal with timestamp-related issues is not to have 'missing' to "automagically" try to resolve them (with all the risk and brittleness entailed), but rather to suggest those projects still keeping generated files committed in their VCS to provide a proper (say) 'fix-timestamp.sh' script that touches the timestamp of the checked-out files, to ensure no spurious rebuild will be triggered. As a bonus, such a script can be more aware of the particularities, nooks and corner cases of a project, and thus more reliable than the old 'missing' script. An example of this approach is offered by GNU awk (release 4.0.1, Git tag 'gawk-4.0.1', commit b85b04e8). The GNU awk maintainers commit the Autotools-generated files (configure, Makefile.in, etc.) and other generated in the project's Git repository, but offer a useful script 'bootstrap.sh' that fixes the timestamps of those files, to ensure no useless remake is triggered in a freshly cloned repository: #! /bin/sh # bootstrap.sh --- touch relevant files to avoid out-of-date issues # in Git sandboxes touch aclocal.m4 find awklib -type f -print | xargs touch sleep 1 touch configure sleep 2 touch configh.in sleep 1 touch test/Maketests find . -name Makefile.in -print | xargs touch touch doc/*.info touch po/*.gmo touch po/stamp-po touch awkgram.c touch command.c touch version.c A similar, simplified script is also reported as an example in the manual. * NEWS: Update. * doc/automake.texi (Auxiliary Programs, maintainer-mod): Update. (CVS): Do not suggest that 'missing' can "automagically" fix botched timestamp due to a "cvs update"; this isn't true anymore. Give an example of a custom 'fix-timestamp.sh' script that can be used to obtain the same effect (in a slightly more laborious but also more explicit and less brittle way). Fix some minor typos and improper wordings while we are at it. * lib/missing: Basically rewritten to implement the new semantics. As a side effect (one of the several), the '--run' option is no more required nor recognized. * m4/missing.m4 (AM_MISSING_HAS_RUN): Enhance the test on '$MISSING' to ensure it actually provides the new semantics (by trying the new "witness" option '--is-lightweight'). * lib/am/distdir.am (distdir): No need anymore to check for "bad" distributed man pages that were actually dummy stubs generated by the 'missing' script. * t/missing4.sh: Rename ... * t/remake-aclocal-version-mismatch.sh: ... like this. * t/missing2.sh: Rename ... * t/missing-version-mismatch.sh: ... like this, and adjust to the new semantics. * t/missing3.sh: Adjust to the new semantics. * t/man4.sh: Remove as obsolete. * t/missing.sh: Likewise. * t/missing5.sh: Likewise. * t/txinfo30.sh: Likewise. * t/man6.sh: Adjust grepping checks. * t/remake6.sh: Likewise. * t/list-of-tests.mk: Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Stefano Lattarini f8f22fea 2012-02-23T19:36:20 m4: do not quote `like this', as per GCS recommendation This patch converts the files comprising the automake's own build system to the use of new quoting format 'like this' or "like this" rather than `like this'. * m4/auxdir.m4, m4/ccstdc.m4, m4/depend.m4, m4/depout.m4, m4/tar.m4, m4/init.m4, m4/maintainer.m4, m4/make.m4, m4/missing.m4, m4/vala.m4, m4/mkdirp.m4, m4/sanity.m4, m4/silent.m4, m4/strip.m4: Update and adjust quoting format throughout, in comments and diagnostic. Some minor related rewordings and reformatting since we are at it. Bump serial numbers.
Stefano Lattarini 641a5a4b 2012-02-16T10:46:23 maint: run "make update-copyright"
Ralf Wildenhues e9a942a1 2008-11-27T21:46:36 Cope with whitespace in $MISSING and $install_sh. * configure.ac (am_AUTOHEADER): New substitution, save the value of $AUTOHEADER before AM_INIT_AUTOMAKE may add $MISSING. * tests/defs.in: Use am_AUTOHEADER. * lib/am/install.am: Fix typo. * m4/install-sh.m4 (AM_PROG_INSTALL_SH): Add suitable single-quote quoting to install_sh, but only if needed. * m4/missing.m4 (AM_MISSING_HAS_RUN): Add suitable double-quote quoting to MISSING, but only if needed. * m4/sanity.m4 (AM_SANITY_CHECK): Abort configure if `pwd` or $srcdir contain shell meta-characters that cannot be handled; space and tab are allowed in the former only. * tests/sanity.test: New test. * tests/Makefile.am: Adjust. * NEWS: Update. Reports by Jim Meyering and others. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Alexandre Duret-Lutz 391df12b 2005-01-09T14:46:22 * m4/amversion.in, m4/as.m4, m4/auxdir.m4, m4/ccstdc.m4, m4/cond.m4, m4/depend.m4, m4/depout.m4, m4/dmalloc.m4, m4/gcj.m4, m4/header.m4, m4/init.m4, m4/install-sh.m4, m4/lead-dot.m4, m4/lex.m4, m4/lispdir.m4, m4/maintainer.m4, m4/make.m4, m4/minuso.m4, m4/missing.m4, m4/mkdirp.m4, m4/multi.m4, m4/obsol-gt.m4, m4/obsol-lt.m4, m4/obsolete.m4, m4/options.m4, m4/protos.m4, m4/python.m4, m4/regex.m4, m4/runlog.m4, m4/sanity.m4, m4/strip.m4, m4/tar.m4: Use the same all-permissive license that is used in aclocal.m4. Relicensing backed by RMS.
Alexandre Duret-Lutz 1e840d7c 2004-08-03T23:02:56 Support AC_REQUIRE_AUX_FILE, and fix requirement of AM_PROG_CC_C_O. * automake.in (%required_aux_file): New hash. (handle_single_transform, lang_c_rewrite): Do note explicitly require 'compile', this is now an internal detail of AM_PROG_CC_C_O. (scan_autoconf_traces): Trace AC_REQUIRE_AUX_FILE and fill %required_aux_file. (scan_autoconf_files): Require all %required_aux_file instead of explicitly requiring install-sh and missing. (generate_makefile): Do not require config.sub and config.guess. (handle_single_transform): Pass $have_per_exec_flags to &lang_c_rewrite. * configure.ac, m4/init.m4: Require Autoconf 2.59a. * doc/automake.texi (Optional): Document AC_REQUIRE_AUX_FILE. (Program and Library Variables, Options, Public macros): AC_PROG_CC_C_O is required when per-target flags or subdir-objects are used with C sources. * m4/minuso.m4: Require `compile' using AC_REQUIRE_AUX_FILE. * m4/missing.m4: Require `missing' similarly. * tests/acsubst2.test, tests/distcom2.test, tests/distcom6.test, tests/specflg.test, tests/specflg2.test, tests/specflg3.test, tests/specflg6.test, tests/specflg7.test, tests/specflg8.test, tests/specflg9.test, tests/subobj7.test, tests/target-cflags.test, tests/yacc6.test: Fix to use AM_PROG_CC_C_O.
Akim Demaille f68696e2 2003-06-02T07:08:40 * lib/am/texi-vers.am, lib/am/subdirs.am, lib/am/scripts.am, * lib/am/remake-hdr.am, lib/am/python.am, lib/am/progs.am, * lib/am/program.am, lib/am/multilib.am, lib/am/mans.am, * lib/am/mans-vars.am, lib/am/ltlibrary.am, lib/am/ltlib.am, * lib/am/lisp.am, lib/am/libtool.am, lib/am/library.am, * lib/am/lang-compile.am, lib/am/java.am, lib/am/header.am, * lib/am/header-vars.am, lib/am/footer.am, lib/am/depend.am, * lib/am/dejagnu.am, lib/am/data.am, lib/am/compile.am, * lib/am/clean.am, lib/am/clean-hdr.am, lib/am/check.am, * lib/am/ansi2knr.am, lib/am/Makefile.am, lib/Makefile.am, * m4/strip.m4, m4/sanity.m4, m4/runlog.m4, m4/regex.m4, * m4/python.m4, m4/protos.m4, m4/options.m4, m4/obsolete.m4, * m4/obsol-lt.m4, m4/obsol-gt.m4, m4/multi.m4, m4/missing.m4, * m4/minuso.m4, m4/maintainer.m4, m4/lispdir.m4, m4/lex.m4, * m4/install-sh.m4, m4/header.m4, m4/gcj.m4, m4/dmalloc.m4, * m4/depout.m4, m4/cond.m4, m4/ccstdc.m4, m4/auxdir.m4, m4/as.m4, * m4/Makefile.am: White space changes and Copyright updates.
Akim Demaille 401f009a 2001-11-12T08:55:52 * m4/make.m4 (AM_MAKE_INCLUDE): Serial 2. Use `"#"' and `"""', which Autoconf mode prefers over `'#'' and `'"''. * m4/missing.m4 (AM_MISSING_HAS_RUN): Serial 3. Rely on AC_MSG 2.50's quotation.
Akim Demaille 21ba3236 2001-10-15T07:52:52 * m4/depend.m4 (AM_DEP_TRACK): Use AC_SUBST([AMDEPBACKSLASH]) normally, what is wrong is that automake outputs a variable definition for it, hence... * automake.in (scan_one_autoconf_file): don't. * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): New, extracted from... (AM_OUTPUT_DEPENDENCY_COMMANDS): here. Adjust. Use AC_CONFIG_COMMANDS. (_AM_OUTPUT_DEPENDENCY_COMMANDS): Use AS_DIRNAME and AS_MKDIR_P.
Akim Demaille 0668ce98 2001-09-22T16:05:36 * ChangeLog, ChangeLog.1996, ChangeLog.1998, ChangeLog.2000, Makefile.am, NEWS, README, TODO, configure.in, lib/Makefile.am, lib/acinstall, lib/am/Makefile.am, m4/Makefile.am, m4/as.m4, m4/auxdir.m4, m4/ccstdc.m4, m4/cond.m4, m4/depend.m4, m4/depout.m4, m4/dmalloc.m4, m4/error.m4, m4/gcj.m4, m4/header.m4, m4/init.m4, m4/install-sh.m4, m4/lex.m4, m4/lispdir.m4, m4/maintainer.m4, m4/make.m4, m4/minuso.m4, m4/missing.m4, m4/multi.m4, m4/obstack.m4, m4/protos.m4, m4/ptrdiff.m4, m4/python.m4, m4/regex.m4, m4/sanity.m4, m4/strip.m4, m4/termios.m4, m4/winsz.m4: Add copyright notice. * INSTALL, lib/INSTALL: Upgrade to latest autoconf version, which has a copyright notice.
Tom Tromey a1782d39 2001-08-23T03:57:04 2001-08-22 Tim Van Holder <tim.van.holder@pandora.be> * m4/missing.m4: Require AM_AUX_DIR_EXPAND and use $am_aux_dir.
Alexandre Duret-Lutz f00ec284 2001-08-03T08:28:21 * m4/install-sh.m4: New file. * m4/Makefile.am (m4data_DATA): Add install-sh.m4. * m4/missing.m4 (AM_MISSING_INSTALL_SH): Move ... * m4/install-sh.m4 (AM_PROG_INSTALL_SH): ... here. Don't check for install.sh any longer, always use install-sh, don't even fall back to missing. Use $am_aux_dir, making $install_sh absolute. * m4/strip.m4 (AM_PROG_INSTALL_STRIP): Simplify, since $install_sh is absolute. * m4/init.m4: Adjust call to AM_PROG_INSTALL_SH.
Alexandre Duret-Lutz d947aafb 2001-08-01T16:23:55 * m4/missing.m4 (AM_MISSING_HAS_RUN): Typo.
Tom Tromey 50bea031 2001-07-20T01:25:14 2001-07-19 Tom Tromey <tromey@redhat.com> Alexandre Duret-Lutz <duret_g@epita.fr> Fix for ccnoco.test, subobj8.test: * m4/Makefile.am (m4data_DATA): Added auxdir.m4. * tests/Makefile.am (XFAIL_TESTS): Removed ccnoco.test, subobj8.test. * m4/minuso.m4 (AM_PROG_CC_C_O): Use absolute path to compile. Use AM_AUX_DIR_EXPAND. * lib/compile: Handle case where `-o' argument is the name of an executable, not an object file. * m4/auxdir.m4: New file, from... * m4/missing.m4: ... here. Moved AM_AUX_DIR_EXPAND. * automake.in (handle_single_transform_list, lang_c_rewrite): Require compile using `require_config_file'.
Tom Tromey 5dc571b4 2001-07-19T00:49:57 2001-07-18 Tim Van Holder <tim.van.holder@pandora.be> * m4/missing.m4: Reword comment.
Tom Tromey e163c03b 2001-04-09T23:21:13 * m4/missing.m4 (AM_MISSING_HAS_RUN): Use `true', not `:'. Fixes report from Jim Meyering.
Tom Tromey eb0b1538 2001-02-18T00:35:19 2001-02-17 Tom Tromey <tromey@redhat.com> * automake.in (handle_merge_targets): Use double quotes around setting of INSTALL_STRIP_PROGRAM. * m4/strip.m4 (AM_PROG_INSTALL_STRIP): Set INSTALL_STRIP_PROGRAM to absolute path at runtime. (AM_PROG_STRIP): Don't explicitly test $STRIP. 2001-01-28 Alexandre Duret-Lutz <duret_g@epita.fr> * m4/strip.m4: New file. * m4/Makefile.am (m4data_DATA): Add strip.m4. * m4/init.m4: Call AM_PROG_INSTALL_STRIP. * m4/missing.m4 (AM_AUX_DIR_EXPAND): New function. (AM_MISSING_INSTALL_SH, AM_MISSING_HAS_RUN): Use $am_aux_dir instead of $ac_aux_dir, and require AM_AUX_DIR_EXPAND. * m4/depend.m4 (AM_DEP_TRACK): Likewise. * automake.in (handle_merge_targets): In the install-strip rule, set INSTALL_PROGRAM to INSTALL_STRIP_PROGRAM, and INSTALL_PROGRAM_ENV to INSTALL_STRIP_PROGRAM_ENV; don't use INSTALL_STRIP_FLAG. * progs.am (install-@DIR@PROGRAMS): Adapt to use INSTALL_PROGRAM_ENV, don't use INSTALL_STRIP_FLAG any longer. * header-vars.am (INSTALL_STRIP_FLAG): Remove. (INSTALL_PROGRAM_ENV): New variable.
Akim Demaille 1e2c6b41 2001-01-16T11:04:36 * m4/multi.m4: Remove the hairy useless quotation of `$'. Simplify `ifelse([$2],,,[$2])' into... `$2'! * m4/minuso.m4: Don't use changequote! * m4/cond.m4: Fix quotation. * m4/sanity.m4: Follow the Autoconf coding style. * m4/missing.m4 (AM_MISSING_INSTALL_SH): Use a for loop. * m4/depend.m4 (AM_DEPENDENCIES): Fix quotation issues. Use AC_CACHE_CHECK.
Pavel Roskin 5cad77aa 2000-10-10T00:18:53 * m4/init.m4 (AM_INIT_AUTOMAKE): Don't rely on variable assignments changing $? - it's broken in ash-0.2. * m4/missing.m4 (AM_MISSING_HAS_RUN): Likewise.
Akim Demaille 4b893ece 2000-08-02T08:59:16 * m4: Quote properly the name of the macros being defined. Use `#' instead of `dnl' where appropriate. * m4/header.m4 (AM_CONFIG_HEADER): Get rid of changequote, just quote. Don't quote passive characters. Pull the AC_PREREQ outside the macro. * m4/init.m4: Pull the AC_PREREQ outside the macro.
Alexandre Oliva c337ebde 2000-03-13T10:40:49 * m4/missing.m4: Print the backtick in a way that won't cause autoconf CVS to emit any warnings.
Tom Tromey a9e06855 1999-12-10T07:49:33 * automake.in (initialize_global_constants): If unreadable by owner, make it readable by owner regardless of number of links. Fixes more of install2.test. * missing: Try to see if gnutar or gtar exist before invoking them. * m4/missing.m4 (AM_MISSING_INSTALL_SH): Remove ${SHELL} from install_sh value. Look for install-sh and install.sh in a somewhat more sensible way. Fixes test install2.test. Partially from Jim Meyering.
Tom Tromey 5ce1429e 1999-12-10T06:44:10 1999-12-09 Pavel Roskin <pavel_roskin@geocities.com> * m4/missing.m4: remove redundant backquote
Tom Tromey 5821230c 1999-11-23T05:08:42 * m4/missing.m4 (AM_MISSING_INSTALL_SH): Don't take argument. * m4/init.m4 (AM_INIT_AUTOMAKE): Don't pass argument to AM_MISSING_INSTALL_SH. * automake.in (scan_one_configure_file): Reverted previous change.
Tom Tromey 9ae48df8 1999-11-21T21:35:41 Merged from user-dep-gen-branch.
Tom Tromey d9a5a21d 1997-04-26T05:07:53 patch to missing check
Tom Tromey 2cd1bd2a 1997-03-26T05:12:05 bug fix in "missing" checks
Tom Tromey c1bf7cf1 1997-03-19T07:42:37 last-minute fixes
Tom Tromey 09bb43da 1997-03-19T05:37:03 fixed up "missing" support