kc3-lang/automake/lib

Branch :


Log

Author Commit Date CI Message
1fa0c24d 2013-01-10 18:04:33 depend: refactor and remove code duplication * lib/am/depend2.am: Here. The obsolescent comments removed from this same file in commit 'v1.13.1-42-g8f06bfb' of 2012-01-09, "depend2.am: fix comments on verbosity of compilation rules", gave the rationale for why that code duplication was there in the first place (rationale that, like those comments, has been obsolete by the silent-rules introduction). * bin/automake.in: Given the refactoring in 'depend2.am', there is no longer need to add extra trailing whitespace to the entries of the '%sourceflags' hash (which are used for the '%SOURCEFLAG%' transform when 'depend2.am' is processed. * t/fort2.sh: Adjust to avoid spurious failures. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
9fabb5e4 2013-01-10 19:54:13 Automake::Language: drop unused fields 'compile_flag' and 'output_flag' They are unused after the recent flurry of changes. This is just a simplification; no semantic change is intended. * lib/Automake/Language.pm (Class::Struct): Remove unused fields here. * bin/automake.in: And here, in all the 'register_language()' invocations. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
7299c4d2 2013-01-10 19:38:58 depend: assume we can always pass '-o' to the C compiler This is the case after the change in commit v1.13.1-56-g34001a9 of 2013-01-09 (compile: use 'compile' script when "-c -o" is used with losing compilers). This is just a simplification; no semantic changes are intended. * bin/automake.in (handle_languages): Drop transform '%-o%', and definitions of '$output_flag'. * lib/am/depend2.am: Adjust to just assume the '?-o?' transform is true, and the '%-o%' transform expands to "-o". Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
5b40c4e7 2013-01-08 14:04:00 cleanup: having subdir-objects mandatory allow us some simplifications Few minor cleanups made possible by earlier changes, plus other minor cleanups triggered in cascade. No semantic change is intended. This is a follow-up on previous commit 'v1.13.1d-214-g3ad07d2', and an adjusted backport of Automake-NG commit 'v1.12.1-315-gc97d41b' of 2012-06-08 ([ng] cleanup: after enabling of subdir-objects unconditionally). * bin/automake.in (LANG_IGNORE, LANG_SUBDIR): Remove. (handle_languages): Drop the '%DEPBASE%' transform when processing the '$rule_file'. (register_language ('name' => 'vala', ...)): Add '.vapi' to the entry 'extensions', and simplify the entry 'output_extensions' to point to a dummy subroutine (since it wasn't really used anyway). (handle_single_transform): No longer expect the 'lang_*_rewrite' subroutines to return a 'LANG_*' constant, but only a transformed extension, if required. To decide whether further processing of the source file should be stopped, rely on a new set of 'lang_*_ignore' subroutines, defaulting to a subroutine that returns false. Accordingly, don't special case the handling of '.vapi' files anymore, instead rely on ... (lang_vala_ignore, lang_header_ignore): ... these new subroutines to avoid extra processing of C/C++ headers and Vala '.vapi' headers. (lang_java_rewrite): Remove. Remove an outdated comment. * lib/am/depend2.am: Partial rewrite to reduce code duplication and drop use of the '%DEPBASE%' transform. * t/compile_f_c_cxx.sh: Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
20d337a7 2013-01-10 19:48:14 depend: assume '-c' compiler flag always means to produce object files Rather than fully-fledged executables. This is the case for all the compilers of all languages supported by Automake. This is just a simplification; no semantic changes are intended. * bin/automake.in (handle_languages): Drop transform '%-c%'. * lib/am/depend2.am: Adjust to just assume the '%-c%' transform expands to "-c". Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
020fb48d 2012-06-06 10:27:46 subdir-objects: enable unconditionally See automake bug#13378. The fact that Automake-generated Makefiles places compiled object files in the current directory by default, also when the corresponding source file is in a subdirectory, is basically an historical accident, due to the fact that the 'subdir-objects' option had only been introduced in April 1999, starting with commit 'user-dep-gen-branchpoint-56-g88b5959', and never made the default, likely to avoid backwards-compatibility issues. Since we believe the behaviour enabled by the 'subdir-objects' is the only natural and most useful one, we make it the only only one available, simplifying the Automake implementation and APIs a little in the process. This change is basically an adjusted backport of Automake-NG commit 'v1.12.1-313-g14fe163' of 2012-06-07, "[ng] subdir-objects: enable unconditionally". * NEWS: Update. * doc/automake.texi (Program and Library Variables): The output object files are no longer placed in the current directory by default, but rather in the same directory of the source file. (LIBOBJS): Now the $(LIBOBJS) and $(ALLOCA) variables can also be used outside of the directory where their sources lie. (List of Automake options): Report the 'subdir-objects' option as a no-op, existing only for compatibility with older versions of Automake. Other related minor adjustments. * bin/automake.in (LANG_PROCESS): Remove, it's no longer needed. (handle_languages): Don't test whether option 'subdir-objects' is set (just assume it is), and do not use the '%SUBDIROBJ%' transform when processing '.am' fragments. (lang_sub_obj): Delete, it would just return 'LANG_SUBDIR' unconditionally now. (lang_lex_rewrite): Adjust. Don't test whether the option 'subdir-objects' is set (just assume it is). (lang_yacc_rewrite): Likewise. (handle_single_transform): Likewise. Remove an obsolete comment. Add a proper "FIXME" comments about a fragment of code that might have become dead code now. (handle_LIBOBJS_or_ALLOCA): Simplify assuming that the option 'subdir-objects' is always set. Accordingly, there's no need to warn anymore if '$(LIBOBJS)' or '$(ALLOCA)' are used outside the '$config_libobj_dir' directory (as specified by autoconf macro 'AC_CONFIG_LIBOBJ_DIR'). * lib/am/depend2.am: Assume the '?SUBDIROBJ?' Automake time conditional is always true, and remove its uses accordingly. * t/compile_f_c_cxx.sh: Adjust. * t/cscope.tap: Likewise. * t/depcomp8a.sh: Likewise. * t/depcomp8b.sh: Likewise. * t/libtool3.sh: Likewise. * t/ltlibsrc.sh: Likewise. * t/pr401.sh: Likewise. * t/pr401b.sh: Likewise. * t/pr401c.sh: Likewise. * t/subobj.sh: Likewise. * t/lex-line.sh: Likewise. * t/yacc-line.sh: Likewise. * t/yacc5.sh: Likewise. * t/vala-libs.sh: Likewise. * t/fort4.sh: Likewise, and extend a bit. * t/fort5.sh: Likewise. * t/gcj.sh: Likewise. * t/subpkg.sh: Likewise. * t/subpkg-yacc.sh: Likewise. * t/xsource.sh: Likewise. * t/libobj20a.sh: Remove as obsolete. * t/libobj20b.sh: Adjust heading comments. * t/libobj20c.sh: Likewise. * t/subobj4.sh: Remove as obsolete. * t/sourcefile-in-subdir.sh: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
3c331df4 2013-05-13 21:38:46 Merge branch 'maint' * maint: Use AC_DEFUN_ONCE to define AM_PROG_CC_C_O compile: avoid AC_PROG_CC messy rewrite options: tiny simplification in dealing with incompatible versions
f233bf8f 2013-05-11 10:25:33 options: tiny simplification in dealing with incompatible versions * lib/Automake/Options.pm (_process_option_list): Here, when an incompatible version number option is detected, there's no need to call error() with the "uniq_scope => US_GLOBAL" switch. In fact, if the same incompatible version number is specified in AUTOMAKE_OPTIONS in both (say) 'Makefile.am' and 'sub/Makefile.am', we want each such erroneous usage reported separately, rather than just the first time it is encountered (as we'd expect to happen when "uniq_scope => US_GLOBAL" is used). Ideally, this change should have been folded into the similar commit 'v1.13.1d-129-gf7ef16f', but we noticed that too late. Oh well. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
4c39a5fa 2013-05-11 01:13:46 options: consistently use return statuses to report errors (more) This is a follow-up to commit 'v1.13.1d-128-g6e486c5', needed to deal with errors that are only present in the 'master' branch (while the reported commit was on the 'maint' branch). * lib/Automake/Options.pm (_process_option_list): Adjust, where dealing with the removed options 'dist-shar' and 'dist-tarZ'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
65643c8d 2013-05-11 01:06:58 Merge branch 'maint' * maint: options: try to report as much errors as possible warns: don't tell AM_PROG_MKDIR_P is going to be removed refactor: fix few "inverted boolean" usages options: better name for an internal function options: more consistency in use of return statuses to report errors options: tiny simplification in dealing with erroneous opts options: consistently use return statuses to report errors options: re-enable some sanity checks THANKS: update Eric Blake's e-mail address NEWS: typofix Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
9f21b55d 2013-05-11 00:28:15 options: try to report as much errors as possible For example, if two invalid options are used in AUTOMAKE_OPTIONS, don't report just the first one, but both of them. * lib/Automake/Options.pm (_process_option_list): Do so by avoiding early returns in here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
90ec3fe5 2013-05-10 23:50:25 refactor: fix few "inverted boolean" usages In some subroutines, we used a return value of 0 to indicate success, and a return status of 1 to indicate failure. That was not very consistent with the perl interpretation of 0 as a false value and 1 as a true value. So we now invert the meaning of the exit statuses. * lib/Automake/Options.pm (_process_option_list): Here. (process_global_option_list, process_option_list): And by reflex, here as well. * bin/automake.in (handle_options): And here. (generate_makefile, scan_autoconf_traces): Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
9a0d4868 2013-05-10 23:29:04 options: better name for an internal function * lib/Automake/Options.pm (_option_must_be_from_configure): Rename ... (_option_is_from_configure): ... like this. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
117ddf8d 2013-05-10 23:08:28 options: more consistency in use of return statuses to report errors * lib/Automake/Options.pm (_option_must_be_from_configure): By giving a proper return status here. (_process_option_list): And using it here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
f7ef16fe 2013-05-10 23:01:27 options: tiny simplification in dealing with erroneous opts * lib/Automake/Options.pm (_process_option_list): Here, when an invalid option is detected, there's no need to call &error with the "uniq_scope => US_GLOBAL" switch. In fact, if the same erroneous option is specified in AUTOMAKE_OPTIONS in both (say) 'Makefile.am' and 'sub/Makefile.am', we want each such erroneous usage reported separately, rather than just the first time it is encountered (as happens when "uniq_scope => US_GLOBAL" is used). Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
6e486c5d 2013-05-10 22:50:54 options: consistently use return statuses to report errors * lib/Automake/Options.pm (_process_option_list): Here. (process_option_list, process_global_option_list): Remove redundant use of 'return'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
b636268a 2013-05-10 22:34:21 options: re-enable some sanity checks They had been unwittingly disabled by a slightly incorrect code ordering. * lib/Automake/Options.pm (process_option_list): Here. (process_global_option_list): And here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
1ffdec45 2013-05-10 21:56:12 dist: remove support for shar and tarZ formats See also discussion about automake wishlist bug#13324. * lib/Automake/Options.pm: Give fatal errors (rather than warnings) if the 'dist-shar' or 'dist-tarZ' options are used. * lib/distdir.am: Remove the 'dist-tarZ' and 'dist-shar' targets, and references to the '.tar.Z' and '.shar' archives. * bin/automake.in (preprocess_file): Remove 'COMPRESS' and 'SHAR' transforms. (handle_dist): Remove lingering references to 'dist-tarZ' and 'dist-shar' options. * doc/automake.texi: Adjust, removing references to the removed targets and distribution formats. * t/dist-shar.sh: Adjust to expect fatal errors rather than warnings. * t/dist-tarZ.sh: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0cf58ea7 2013-05-10 21:18:40 Merge branch 'maint' * maint: news: document new 'subdir-objects' warning PLANS: one minor fixlet (mostly cosmetic) PLANS: we have already dropped support for split info files in master NEWS: fix a reference to Automake 1.14 where Automake 2.0 was intended PLANS: fix reference to non-existent 'next' branch PLANS: fix botched version reference maintcheck: fix two references to old location of aclocal and automake dist: deprecated shar and tar+compress formats
780299d9 2013-05-10 19:22:06 dist: deprecated shar and tar+compress formats See also discussion about automake wishlist bug#13324. * lib/Automake/Options.pm: Give proper warnings in the 'obsolete' category if the 'dist-shar' or 'dist-tarZ' options are used. * lib/distdir.am: When the 'dist-tarZ' or 'dist-shar' targets are invoked, make them give a non-fatal warning. * doc/automake.texi: Report the new deprecations. * t/dist-shar.sh: New test. * t/dist-tarZ.sh: Likewise. * t/lzma.sh: While at it, rename ... * t/dist-lzma.sh: ... like this, and tweak it to keep more in sync with the new tests. * t/dist-formats.tap: Remove references to deprecated formats. * t/list-of-tests.mk: Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0dd95c8d 2013-05-10 13:33:52 Merge branch 'maint' * maint: automake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/ am: prefer a shorter idiom where possible cosmetics: fix few typos, grammaros and missing whitespace fixup: remove an obsolete comment docs: we still don't have the promised better Java interface build: move automake and aclocal in 'bin' subdir build: break up monolithic Makefile.am in subdir-specific fragments + Extra non-trivial edits: * m4/Makefile.inc (dist_automake_ac_DATA): Drop lead-dot.m4 and mkdirp.m4. * lib/Automake/Makefile.inc (dist_perllib_DATA): Drop Configure_ac.pm. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0736c67c 2013-05-10 13:31:59 Merge branch 'dog-feeding' into maint * dog-feeding: build: move automake and aclocal in 'bin' subdir build: break up monolithic Makefile.am in subdir-specific fragments
126cd524 2013-05-10 10:57:38 am: prefer a shorter idiom where possible That is, prefer: test -f FILE || do_action over: if test ! -f FILE; then do_action; else :; fi * lib/am/remake-hdr.am (%CONFIG_H%): Here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
5a37b0e7 2013-05-10 10:53:15 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: cosmetics: fix few typos, grammaros and missing whitespace fixup: remove an obsolete comment docs: we still don't have the promised better Java interface
66ab18ae 2013-05-10 10:50:05 cosmetics: fix few typos, grammaros and missing whitespace * lib/am/*.am: In comments in some of these files. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
53201da1 2013-05-10 10:35:26 fixup: remove an obsolete comment * lib/am/header-vars.am (am__make_running_with_option): Here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
ce70cf4b 2013-05-09 11:57:20 build: move automake and aclocal in 'bin' subdir * automake.in: Rename ... * bin/automake.in: ... like this. * aclocal.in: Rename ... * bin/aclocal.in: ... like this. * Makefile.am: Move parts that dealt with the building/distribution of aclocal and Automake .. * bin/Makefile.inc): ... in this new included fragment. Adjust as needed, and make deliberate use of the '%D%' substitution. * lib/gen-perl-protos: Move ... * bin/gen-perl-protos: ... here. * bootstrap.sh, configure.ac, maintainer/rename-tests, t/wrap/aclocal.in, t/wrap/automake.in, doc/Makefile.inc, t/ax/tap-setup.sh, .gitignore: Adjust. * maintainer/syntax-checks.mk: Likewise, and enhance a little. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
c8f106c7 2013-05-09 11:17:47 build: break up monolithic Makefile.am in subdir-specific fragments This is convenient to do, now that we have improved "relative directory" support with the '%reladir%' (a.k.a. '%D%') and '%canon_reladir%' (a.k.a. '%C%') Automake-time substitutions for included makefile fragments. This move also satisfy our philosophy of using new Automake features in our own build system, as a way of facilitating early discovery of possible bugs or interface warts. * Makefile.am: Break up ... * doc/Makefile.inc, lib/Automake/Makefile.inc, lib/Makefile.inc, lib/am/Makefile.inc, m4/Makefile.inc, t/Makefile.inc): ... in this new included fragments. Adjust as needed, and make deliberate use of the '%D%' substitution. * contrib/t/local.am: Rename ... * contrib/t/Makefile.inc: ... like this. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
e2fd8f5c 2013-05-04 12:11:40 Merge branch 'maint' * maint: maint: targets and recipes to simplify testing on real-world packages build: preparatory refactoring build: tiny reduction in code duplication make flags analysis: handle more options with args make flags analysis: use simpler variable names make flags analysis: whitespace changes make flags analysis: embed in a subshell make flags analysis: be more robust make flags analysis: cater to GNU make 3.83 (still unreleased as of now) tests: expose weaknesses in make flags analysis tests: improve debugging output in checks on make flags analysis make flags analysis: refactor, to reduce code duplication tests: avoid one tricky use of "make -e" cosmetics: remove few trailing whitespace occurrences typofix: in NEWS (extra whitespace) tests: avoid a spurious error with Solaris make subdirs: don't return false positives for the '-k' option's presence header-vars: recognize more make flags ('-k' in particular) header-vars: simplify how make flags are determined tests: remove dead code from t/make-dryrun.tap header-vars: new variable $(am__running_with_option) tests: expose bug#12554 (false positives for presence of '-k' make option)
2d3a2e36 2013-05-04 11:50:10 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: maint: targets and recipes to simplify testing on real-world packages build: preparatory refactoring build: tiny reduction in code duplication make flags analysis: handle more options with args make flags analysis: use simpler variable names make flags analysis: whitespace changes make flags analysis: embed in a subshell make flags analysis: be more robust make flags analysis: cater to GNU make 3.83 (still unreleased as of now) tests: expose weaknesses in make flags analysis tests: improve debugging output in checks on make flags analysis make flags analysis: refactor, to reduce code duplication tests: avoid one tricky use of "make -e" tests: avoid a spurious error with Solaris make subdirs: don't return false positives for the '-k' option's presence header-vars: recognize more make flags ('-k' in particular) header-vars: simplify how make flags are determined tests: remove dead code from t/make-dryrun.tap header-vars: new variable $(am__running_with_option) tests: expose bug#12554 (false positives for presence of '-k' make option)
57925b67 2013-05-03 14:06:25 make flags analysis: handle more options with args That is, not only -I, but also -O (for upcoming GNU make 3.83), -l (GNU make), -d, -E, -D, -m (BSD make), -J, -T (NetBSD make). * lib/am/header-vars.am (am__make_running_with_option): Extend and adjust, both code and comments. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
1adb0570 2013-05-03 13:01:35 make flags analysis: use simpler variable names * lib/am/header-vars.am (am__make_running_with_option): Here. Now that we expect to be run in a subshell, we don't have to worry about being namespace-safe. And '$foo' is much more pleasant to read than '$am__foo' -- and pleasant code tends to be more correct. (am__make_dryrun, am__make_keepgoing): Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
6d643e93 2013-05-03 12:52:14 make flags analysis: whitespace changes * lib/am/header-vars.am (am__make_running_with_option): Here. No semantic change is intended. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
5c4aaae2 2013-05-03 12:47:59 make flags analysis: embed in a subshell So that we won't have to worry about leaking temporary variables, and similar stuff. * lib/am/header-vars.am (am__make_dryrun, am__make_keepgoing): Here. (am__make_running_with_option): Minor adjustments. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
b62616b3 2013-05-02 19:41:24 make flags analysis: be more robust In particular, catering to option-with-argument bundled together with options-without-arguments, as in: # With GNU make 3.82: $ make -f- <<<'all:; echo "$$MFLAGS"' -s -k -I none -skiI none # With development version of GNU make (Git commit b5ea49b): $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none -skiI none This fixes some lingering failures in the testsuite; precisely, in tests 'make-dryrun.tap' and 'make-keepgoing.tap'. * t/header-vars.am (am__make_running_with_option): Enhance. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
c93bc3d4 2013-05-02 01:10:13 make flags analysis: cater to GNU make 3.83 (still unreleased as of now) The current development version of GNU make (that is planned to become GNU make 3.83, sooner or later) has changed the format its $(MFLAGS) variable slightly, removing the space between an option and its argument: # With GNU make 3.82, compiled from official tarball: $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none -I none # With development version of GNU make (Git commit b5ea49b): $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none -Inone This was done on purpose, in order to support more easily the new option '-O', which takes an optional argument; see: <http://lists.gnu.org/archive/html/bug-make/2013-05/msg00001.html> So Just adapt to the new format as well. * t/header-vars.am (am__make_running_with_option): Adjust to cater to the new GNU make behaviour. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
e242b44e 2013-05-01 23:26:42 make flags analysis: refactor, to reduce code duplication And make it a little more reliable. * t/header-vars.am (am__make_running_with_option): Here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
d432f067 2013-04-30 23:55:47 Merge branch 'fix-pr12554' into branch-1.13.2 * fix-pr12554: tests: avoid a spurious error with Solaris make subdirs: don't return false positives for the '-k' option's presence header-vars: recognize more make flags ('-k' in particular) header-vars: simplify how make flags are determined tests: remove dead code from t/make-dryrun.tap header-vars: new variable $(am__running_with_option) tests: expose bug#12554 (false positives for presence of '-k' make option)
dc4eaab2 2013-04-30 16:24:41 Merge branch 'maint' * maint: sync: update files from upstream with "make fetch" maintcheck: remove outdated whitelisting tar: format 'ustar' cannot support UID/GID longer than 21 bits docs: issues with configure substitutions in TESTS tests: avoid possible autotools caching issues (automake bug#13832) tests: rename some with more descriptive names docs: add myself and Ralf Wildenhues as authors authors: add myself dry-run: don't get confused by '-I' option tests: avoid a spurious failure with the Korn Shell dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS) header vars: can determine whether we are running under GNU make NEWS: improve wording for automake bug#13514 fix NEWS: document fix for automake bug#13514
96b1303d 2013-04-30 15:35:46 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: sync: update files from upstream with "make fetch" maintcheck: remove outdated whitelisting tar: format 'ustar' cannot support UID/GID longer than 21 bits Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
02ead48e 2013-04-29 16:12:34 subdirs: don't return false positives for the '-k' option's presence This change fixes automake bug#12554. The old implementation of the code descending into $(SUBDIRS) entries used the following snippet to decide whether make is running with the '-k' a.k.a. '--keep-going' option, and thus whether a failure in a subdirectory should prevent the descent in the following ones: fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done It's clear that the second pattern in the 'case' construct could possibly match false positives, for examples in these two cases: make check TESTS="x.test k.test" make -I /usr/local/kool-fragments which are somewhat unusual, but not invalid. So we need a more resilient implementation, as we did for the detection of the '-n' flag. This implementation is now provided by the new private macro '$(am__make_keepgoing)' (introduced in recent commits); so we can just us that to fix the bug. * lib/am/subdirs.am ($(am__recursive_targets)): Use '$(am__make_keepgoing)' instead of ad-hoc and more brittle checks. * t/list-of-tests.mk (XFAIL_TESTS): Remove the now-passing test case 't/subdir-keep-going-pr12554.sh'. Reported-by: Michael Daniels <mdaniels@rim.com> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
69f77915 2013-04-29 15:22:10 header-vars: recognize more make flags ('-k' in particular) * lib/am/header-vars.am (am__running_with_option): Here. Few improvements to comments, while at it. (am__make_keepgoing): New, tell whther make is being runt with the '-k' option. * t/make-keepgoing.tap: New test. * t/list-of-tests.mk: Add it. * t/make-dryrun.tap: Minor edits to keep it more in sync with the new test. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
f6338e8c 2013-04-29 16:44:00 sync: update files from upstream with "make fetch" * lib/config.guess: Likewise. * lib/config.sub: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
e432b0d3 2013-04-27 16:09:43 header-vars: simplify how make flags are determined Actually, son far only the '-n' option ("dry mode") was detected, but this change will allow us to soon detect more options. * lib/am/header-vars.am (am__running_with_option): Even when $MAKEFLAGS appears to contain definition of variables with embedded whitespace, use simple textual pre-processing over $MAKEFLAGS rather than tricky recursive invocations of make to determine whether the '-n' option was given. This is enough to correctly handle all the tricky usages covered in the testsuite. * t/nodep.sh: Adjust to avoid a spurious failure. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
6eedee4c 2013-04-27 15:25:06 header-vars: new variable $(am__running_with_option) This is a preparatory refactoring, needed by later patches. No semantic change is intended. * lib/am/header-vars.am (am__running_with_option): New, contains shell code that determines whether the current make instance is running with a given one-letter option (e.g., -k, -n) that takes no argument. Actually, the only supported option at the moment is '-n' (support for '-k' will be added soon). (am__make_dryrun): Rewrite as a thin wrapper around '$(am__make_running_with_option)'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
f0d1288f 2013-04-26 20:39:40 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: docs: issues with configure substitutions in TESTS tests: avoid possible autotools caching issues (automake bug#13832) docs: add myself and Ralf Wildenhues as authors authors: add myself dry-run: don't get confused by '-I' option tests: avoid a spurious failure with the Korn Shell dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS) header vars: can determine whether we are running under GNU make NEWS: improve wording for automake bug#13514 fix NEWS: document fix for automake bug#13514
cfe0abc7 2013-04-22 18:02:07 dry-run: don't get confused by '-I' option Fixes automake bug#13760 for non-GNU make implementations that still support the option '-I'. So far, the only such make implementation are FreeBSD (8.x) make and NetBSD (5.x) make. * lib/am/header-vars.am (am__make_dryrun): If a non-GNU make is being used, try to handle the '-I' option in $MAKEFLAGS correctly. For GNU make, that is already done by the proper use of the $MFLAGS variable. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
334a2e0b 2013-04-22 15:07:43 dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS) Fixes automake bug#13760 for GNU make. * lib/am/header-vars.am (am__make_dryrun): If GNU make is being used, rely on the contents of the $(MFLAGS) variable rather than of the $(MAKEFLAGS) to decide whther make is being executed in "dry run" mode. Not only this makes the code possibly faster and less brittle, but also fixes automake bug#13760 (at least when GNU make is in use). * t/make-dryrun.tap: Adjust: some tests that were xfailing now pass. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
3de27839 2013-04-22 14:53:14 header vars: can determine whether we are running under GNU make This is mostly a preparatory patch in view of future changes. * lib/am/header-vars.am (am__is_gnu_make): New, contains shell code that determines whether we are running under GNU make. * t/make-is-gnu.sh: New test. * t/list-of-tests.mk: Add it. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
820d9093 2013-04-20 21:55:02 Merge branch 'maint' * maint: INSTALL: regen sync: update files from upstream with "make fetch" tests: tweaks and minimal improvements to t/insthook.sh typofix: in comments in t/extra2.sh tests: fix botched cross-reference in a heading comment
6d457d81 2013-04-20 21:54:40 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: INSTALL: regen sync: update files from upstream with "make fetch" tests: tweaks and minimal improvements to t/insthook.sh Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
8c333ed9 2013-04-20 18:10:28 sync: 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. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
389f32eb 2013-04-19 15:46:54 Merge branch 'maint' * maint: Add missing '$' for variable expansion in depout.m4 maintcheck: avoid spurious failure perl: perl subroutine prototypes are problematic, don't use them fixup: one stray reference to older versioning scheme
ce98f22e 2013-04-19 15:46:36 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: Add missing '$' for variable expansion in depout.m4 fixup: one stray reference to older versioning scheme
98a0b71f 2013-02-21 19:25:55 fixup: one stray reference to older versioning scheme * lib/Automake/Options.pm: Here, in a FIXME comment: reference "Automake 3.0" rather than "Automake 1.15". Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
a5ed87e7 2013-02-21 16:39:22 Merge branch 'maint' into master * maint: maint: more adjustments to the new versioning scheme aclocal: fix for more-than-once specified directories aclocal: just warn if the primary local m4 dir doesn't exist (don't error) coverage: expose automake bug#13760 tests: refactor/enhance tests about make dry-run mode maint: describe new versioning and branching scheme, and adjust to it cosmetics: fix some "docstring-like" comments in automake Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
5daad702 2013-02-20 22:14:55 Merge branch 'branch-1.13.2' into maint * branch-1.13.2: coverage: expose automake bug#13760 tests: refactor/enhance tests about make dry-run mode maint: describe new versioning and branching scheme, and adjust to it Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
97aaf121 2013-02-17 10:25:29 maint: describe new versioning and branching scheme, and adjust to it See discussion about automake bug#13578 for more details and background. Basically, for the versioning scheme: - micro versions only for bug and regression fixing; - minor versions for new backward-compatible features, and new non-fatal deprecations; - major versions for backward-incompatibilities, complex new features, and major refactoring. And for the git branching scheme: + branch 'next' is for the upcoming major version; + branch 'master' is now for the upcoming minor version; + branch 'maint' is for the upcoming micro (bug-fixing) version; + the merging hierarchy is: 'maint' -> 'master' -> 'next'. * HACKING (Automake versioning and compatibility scheme): New. (Working with git): Adjust. * NEWS: Update and fix. * aclocal.in: Adjust some "FIXME" messages. * automake.in: Likewise. * m4/mkdirp.m4: Likewise. * t/aclocal-acdir.sh: Likewise. * t/aclocal-macrodir.tap: Likewise. * t/aclocal-macrodirs.tap: Likewise. * lib/Automake/Options.pm: Likewise. * m4/internal/ac-config-macro-dirs.m4: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
5e074aa5 2013-02-16 19:39:07 Merge branch 'maint' * maint: style: call perl functions 'like_this()', not '&like_this()' maint: use more perl subroutines prototypes in the automake script build: auto-generate perl subroutines prototypes for automake and aclocal refactor: rip module Automake::Language out of automake script Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
e7b9d315 2013-02-04 23:37:23 maint: use more perl subroutines prototypes in the automake script * automake.in: Throughout this file. Note that these new prototypes are not much useful, since many subroutine calls still use the old '&foo' form; but we'll take care of that in later patches. * lib/Automake/Language.pm (target_hook): Call the '_target_hook' of the given language in a more modern form, avoiding '&'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
283ded7f 2013-02-04 23:04:18 build: auto-generate perl subroutines prototypes for automake and aclocal This will allow us to avoid either using the '&foo' invocation form when invoking a subroutine before its definition, or having to maintain the list of prototypes by hand (with the risk of having it become incomplete or fall out-of-sync when future edits to the automake and aclocal scripts are done). * Makefile.am (automake, aclocal): Automatically generate a list of prototypes by looking at the subroutines definitions. * bootstrap.sh: Likewise, when generating the temporary automake and aclocal scripts used for bootstrapping. * automake.in: Add a placeholder that will be tracked by the new recipes and substituted with the computed prototypes. Remove existing prototypes, that are now superfluous. Some adjustments required by the new, more comprehensive prototypes declarations. * aclocal.in: Likewise. * maintainer/syntax-checks.mk (sc_diff_automake, sc_diff_aclocal): Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
6d9e9dd4 2013-02-04 19:34:03 refactor: rip module Automake::Language out of automake script This is just a preparatory patch in view of future changes. * lib/Automake/Language.pm: New module, ripped out from ... * automake.in: ... here. Related adjustments. * Makefile.am (dist_perllib_DATA): List the new module. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
bba21ec3 2013-01-16 13:35:10 Merge branch 'texi-no-split-info' * texi-no-split-info: texi: no longer support split info files
2aa49391 2013-01-12 18:19:44 Merge branch 'maint' * maint: ywrap: remove an obsolete FIXME comment ywrap: style fixes (no semantic change intended) convenience: "make lint" as an alias for "make maintainer-check" docs: typofix in manual coverage: using multiple lexers in a single program Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0dee02df 2013-01-12 17:53:17 ywrap: remove an obsolete FIXME comment If it were still relevant, somebody would have complained by now. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
52b2af5d 2013-01-12 17:52:44 ywrap: style fixes (no semantic change intended) Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
84d77cd6 2013-01-12 13:54:43 Merge branch 'maint' * maint: tests: remove most uses of the AM_PROG_CC_C_O obsolete macro coverage: obsolete macro AM_PROG_CC_C_O should cause no warning nor errors INSTALL: update copyright years ithreads: use runtime (not configure time) detection of perl threads copyright: add few missing copyright notices maint: files in PLANS are to be exempted from copyright notice maint: consistently honor the UPDATE_COPYRIGHT_YEAR environment variable copyright: update some copyright years Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
18262668 2013-01-12 00:19:40 ithreads: use runtime (not configure time) detection of perl threads I can't imagine the runtime checks being a big runtime penalty, so there shouldn't be a need to do the checks at configure check and hardcode the result in the generated automake. With the current system, it means if you change your perl config (build perl w/threads, build automake, build perl w/out threads), or deploy a compiled automake package on a different system (build had threads, but deployed system does not), you get errors when trying to run automake. So take the logic from configure.ac and move it to the one place where PERL_THREADS is used (lib/Automake/Config.in) and do the version/config checking at runtime. * bootstrap.sh (PERL_THREADS): Delete assignment and use in sed. * configure.ac (am_cv_prog_PERL_ithreads, PERL_THREADS): Delete all code related to these two variables. * lib/Automake/Config.in (perl_threads): Initialize to 0, and only set to 1 if the perl version is at least 5.007_002, and useithreads is in Config. Copyright-paperwork-exempt: yes Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
9cb18f18 2013-01-11 21:53:19 Merge branch 'maint' * maint: compile: use 'compile' script when "-c -o" is used with losing compilers HACKING: suggest more checks before releasing tests: can fake a compiler not grasping "-c -o" -- globally in all tests sync: update files from upstream with "make fetch" typofix: in comments in GNUmakefile Rename 'maint/' -> 'maintainer/', for Git's sake HACKING: minor typofix HACKING: bug-tracker, the PLANS directory, and how to plan "big" changes HACKING: rewindable branches should live in the 'experimental/*' namespace HACKING: fixlets about git branch rewinding policy HACKING: commit messages are not to follow GCS ChangeLog rules too strongly HACKING: "detailed explanation" in commit messages is almost mandatory HACKING: we use "merge --log" even when merging master HACKING: typofix depend2.am: fix comments on verbosity of compilation rules depend2.am: improve comments a little plans: automake 1.14 is to assume "rm -f" with no args is OK plans: we want to active subdir-objects unconditionally in automake 1.14 Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10790d08 2013-01-11 17:38:58 sync: update files from upstream with "make fetch" * lib/INSTALL: Update. * lib/config.guess: Likewise. * lib/config.sub: Likewise. * lib/gendocs_template: Likewise. * lib/gitlog-to-changelog: Likewise. * lib/gnupload: Likewise. * lib/texinfo.tex: Likewise. * lib/update-copyright: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
8f06bfba 2013-01-09 22:17:53 depend2.am: fix comments on verbosity of compilation rules The situation and decisions described on those comments have become quite outdated since the introduction of the silent-rules support. Today, the general idea is to have nice, terse output if silent rules are enabled, and complete, faithful, very verbose output if they are not -- without trying to "massage" this verbose output in a more pleasant form if that would cause complication in the affected code. So it's better to just drop the obsolescent comments. Note that we don't start simplifying the existing rules according to this new philosophy; that will only be done when touching some existing code (for the 'depend2.am' code, that will probably happen on the master branch). Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
a52e9de0 2013-01-09 22:01:45 depend2.am: improve comments a little * lib/am/depend2.am: The "fastdep" mode is supported not only for gcc 3.x, but for gcc 3.x or later, in particular, for all gcc in the 4.x series (at the time of writing, the latest release is 4.72). Adjust the comments to match, and re-wrap them while at it. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
bfd7cc5a 2013-01-09 12:04:52 Merge branch 'maint' * maint: tests: adjust stale references to old test names tests: rename the last aclocal test with dumb name tests: fix an old botched change to an aclocal test tests: fix some botched inter-test references in heading comments coverage: compile rules used "-c -o" also with losing compilers texi: remove extra verbosity in creation of dirstamp directory coverage: user can avoid distributing '.info' pages plans: add some on-going plans (already registered on the bug tracker) docs: mention dist-hook help for EXTRA_DIST texi: remove workaround for older Texinfo (4.1) NEWS: improve wordings in entry deprecating suffix-less info files plans: add the "PLANS" directory
cdba479f 2013-01-04 18:12:29 texi: no longer support split info files See automake bug#13351 and bug#12320. Automake-generated recipes have for a long time supported "split" info files: http://www.gnu.org/software/texinfo/manual/texinfo/texinfo.html#Tag-and-Split-Files When I asked the rationale for this feature: http://lists.gnu.org/archive/html/texinfo-devel/2012-08/msg00015.html Karl Berry confirmed that the reason for its existence was indeed "efficiency, especially memory size": http://lists.gnu.org/archive/html/texinfo-devel/2012-08/msg00024.html He also added that "The Elisp manual is one of the largest ones around. Looks like it would be maybe 3.5mb as one file." Not in any way big by modern standards. OTOH, it appears that the use of split info files (at least in the way they have been handled by Automake-generated rules for a long time) can cause real problems in some (admittedly quite corner-case) situations: http://thread.gmane.org/gmane.comp.parsers.bison.bugs/3963 http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12320 So we now follow suit with Automake-NG (see commit v1.12.2-901-gdd603e2, <http://lists.gnu.org/archive/html/automake-ng/2012-08/msg00147.html>) and have Automake-generated makefiles pass the '--no-split' option unconditionally to makeinfo invocations. This allow some nice simplifications in our Texinfo recipes, and offer an automatic fix for bug#12320. Another *very* good aspect of such a change is that it should be 100% transparent to the Automake users. * lib/am/texinfos.am: Simplify moderately. * lib/am/texibuild.am: Simplify greatly the recipe for the creation of info files. * t/txinfo-makeinfo-error-no-clobber.sh: Adjust. * t/txinfo-no-split.sh: New test. * t/list-of-tests.mk: Add it. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
285d7b14 2013-01-05 12:12:56 texi: remove extra verbosity in creation of dirstamp directory * lib/am/texi-vers.am (%STAMPVTI%): Here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
7965844e 2013-01-04 18:35:06 texi: remove leftover support for DGJPP '.iNN' info files A follow-up to commit 'v1.13-6-gad08bbf'. * lib/am/texinfos.am (dist-info): Stop catering to info files with '.iNN' extension (as in '.i23' or '.i02'). Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
6a67b297 2013-01-03 23:10:42 texi: remove workaround for older Texinfo (4.1) * lib/am/texibuild.am: Here, in the rules generating HTML output. We can do so because, since Automake 1.13, we require Texinfo >= 4.9 anyway. Basically a backport of Automake-NG commit '1.12.2-879-ge6caf5e'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
e4fc1dad 2013-01-03 14:42:55 Merge branch 'maint' * maint: build: don't enable 'color-tests' automake option explicitly build: enable all warnings as fatal in our own build system texi: Texinfo sources and CLEANFILES definition should co-exist peacefully tests: make two new test executable runtest: better command line API tests: move runtest.in away from the top-lever directory maint: move more maintainer files in the 'maint/' subdir tests: more significant names for some tests maint: add some of my maintainer-specific scripts texi: deprecate hack about info files in CLEANFILES variables texi: info files can be generated in the builddir
36ee783a 2012-04-03 22:02:55 texi: info files can be generated in the builddir User can now ask info files to be built in the $(builddir), rather than the $(srcdir), by specifying the Automake option 'info-in-builddir'. This feature was requested by the developers of GCC, GDB, GNU binutils and the GNU bfd library. See the extensive discussion about automake bug#11034 for more details. OK, to be honest, having '.info' files built in the builddir was *already* possible, but only using ugly and undocumented hacks involving definition of the CLEANFILES and/or DISTCLEANFILES. For example, the binutils project did something like this in the relevant 'Makefile.am': # Automake 1.9 will only build info files in the objdir if they are # mentioned in DISTCLEANFILES. It doesn't have to be unconditional, # though, so we use a bogus condition. if GENINSRC_NEVER DISTCLEANFILES = binutils.info endif See also the extensive discussion about automake bug#11034; in particular, the following messages: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#65> <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#80> <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#86> <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#101> * lib/Automake/Options.pm (_is_valid_easy_option): Recognize the new 'info-in-builddir' option. * automake.in (handle_texinfo_helper): If that option is set, initialize '$insrc' to '0', so that info files will be generated in the builddir. Adjust comments to match. * t/txinfo-builddir.sh: New test. * t/list-of-tests.mk: Add it. * NEWS: Update. * doc/automake.texi: Document the new options. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
b98aab9f 2012-12-31 18:24:03 Merge branch 'maint' * maint: maint: update copyright year for 2013 (in branch maint) Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
7df8b28c 2012-12-31 18:18:37 maint: update copyright year for 2013 (in branch maint) Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11fac8b2 2012-12-31 13:45:05 Merge branch 'maint' * maint: tests: enhance and tweak some texinfo tests tests: remove a redundant texinfo test tests: don't list a removed tests in XFAIL_TESTS tests: more explicative names for some tests cleanup: drop a redundant %?FIRST% transform maint: state when compatibility cruft should be removed or warned about Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
ac5c1d77 2012-08-11 19:36:08 cleanup: drop a redundant %?FIRST% transform * lib/am/texinfos.am: Here: this file is only included one time per Makefile by Automake. Cherry picked from Automake-NG commit 'v1.12.2-864-g5c580b0'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
b6602b33 2012-12-31 09:53:43 maint: state when compatibility cruft should be removed or warned about * automake.in: Here. * lib/Automake/Options.pm: And here. * m4/obsolete-err.m4: And here. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
bd7b811d 2012-12-30 11:38:16 Merge branch 'maint' * maint: NEWS: minor fixup obsolete: better error message if AM_PROG_CC_STDC is used obsolete: better error message if AM_CONFIG_HEADER is used sync: update files from upstream with "make fetch" tests: better names for temporary configure.ac files Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2e269cff 2012-12-29 15:28:41 sync: update files from upstream with "make fetch" * lib/config.sub: Update. * lib/config.guess: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
7626e632 2012-05-25 17:51:01 cleanup: get rid of 'Automake::Configure_ac' module Now that we unconditionally assume the Autoconf input is named "configure.ac", it's easier and clearer to inline the checks on the existence of such a file directly in the automake and aclocal scripts. This change is basically a backport of the 'v1.12-327-gee6d72a' commit from Automake-NG. * lib/Automake/Variable.pm (Automake::Configure_ac): Drop this import. ($configure_ac): Define to "configure.ac", unconditionally. * automake.in: Likewise. Also, in main code, check the existence of 'configure.ac' directly, instead of calling the now-removed 'require_configure_ac' function. * aclocal.in: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
bff57c88 2012-05-25 17:50:59 Drop support for 'configure.in' as the Autoconf input file The autoconf input should be named 'configure.ac' instead. The use of 'configure.in' has been deprecated in Autoconf since at least the 2.13 -> 2.50 transition, and future Autoconf versions (starting with 2.70 probably) will start to warn about it at runtime. Automake has been warning about it since the 1.13 release. This change is basically a backport of commit 'v1.12-325-g927d4cb', from Automake-NG. * lib/Automake/Configure_ac.pm (find_configure_ac): Don't look for 'configure.in' if 'configure.ac' is not found. (require_configure_ac): On failure, don't tell that "'configure.ac' or 'configure.in' is required", but just that "'configure.ac' is required". * automake.in (@common_sometimes): Don't list 'configure.in'. (scan_autoconf_files): Adjust heading comments. * NEWS: Update. * t/help.sh: Adjust. * t/configure.sh: Remove as obsolete. * t/list-of-tests.mk: Adjust.
f083c5eb 2012-12-28 21:57:44 Merge branch 'remove-djgpp-support' * remove-djgpp-support: general: assume dot-starting file names are supported Drop support for DJGPP, MS-DOS, Windows 95/98/ME
ff0c7f83 2012-05-30 09:25:59 general: assume dot-starting file names are supported Now that we've dropped support for DJGPP, Windows 95/98/ME and MS-DOS, that should always the case. This change is basically a backport of Automake-NG commit 'v1.12-342-ge6af355'. * lib/am/texibuild.am: Just assume we can have directories whose name starts with a dot, i.e., that '${am__leading_dot}' expands to '.'. * automake.in (require_build_directory): Likewise. * m4/depend.m4 (AM_SET_DEPDIR): Likewise. Now $(DEPDIR) will be set unconditionally to '.deps'. * m4/init.m4 (AM_INIT_AUTOMAKE): Don't AC_REQUIRE the m4 macro 'AM_SET_LEADING_DOT' anymore. * m4/lead-dot.m4: Delete. * Makefile.am (dist_automake_ac_DATA): Remove it. * t/subobj11a.sh: Just assume $(DEPDIR) expands to '.deps'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
ad08bbfa 2012-05-29 19:51:22 Drop support for DJGPP, MS-DOS, Windows 95/98/ME Basically a backport and squash-in of three Automake-NG commits: v1.12.1-447-g041fe15, v1.12-343-g4526363, v1.12-341-gc853c20, plus proper simplifications of the ylwrap script. See also: <http://lists.gnu.org/archive/html/automake-ng/2012-05/msg00104.html> * automake.in (BEGIN): Don't override $ENV{SHELL} for DJGPP. (handle_libtool): Do not bother cleaning '_libs' directories, they are only used by Libtool on MS-DOS (and we no longer support that setup). * syntax-checks.mk (automake_diff_no): Adjust, as now there are only seven (not eight) different lines between 'automake.in' and 'automake'. * bootstrap.sh: Don't special case the default value for BOOTSTRAP_SHELL on DJGPP. While we are at, allow that variable to be overridden from the environment. Also, adjust comments: we don't use "ln -s" not because it's not properly supported by DJGPP, but because it might not be properly supported by MinGW/MSYS. * configure.ac (MODIFICATION_DELAY): Define to '2' unconditionally, as we no longer have to cater to quirks of Windows 95/98/ME. * lib/am/texibuild.am: Remove support for '*.iNN' files used on DJGPP. * lib/am/texinfos.am: Likewise. * lib/ylwrap: Remove support for DOS-specific filenames for bison output. * t/txinfo19.sh: Remove as obsolete. * t/list-of-tests.mk: Adjust. * NEWS: Update. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
35da6083 2012-12-19 18:12:04 depcomp: remove support for SGI C/C++ compilers These compilers are only meant to run on IRIX, and that system has seen its last release in 2006, and is expected to lose support from SGI in December 2013: <http://www.sgi.com/services/support/irix_mips_support.html> This change fixes automake bug#12967 and bug#12978. * lib/depcomp (sgi): Remove this depmode. * NEWS: Update. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
27eb4254 2012-12-19 14:51:58 ylwrap: various fixes Rename properly header guards in generated header files, instead of leaving Y_TAB_H. Convert header guards in implementation files. Because ylwrap failed to rename properly #include in the implementation files, current versions of Bison (e.g., 2.7) duplicate the generated header file in the implementation file. The header guard then protects the implementation file from duplicate definitions from the header file. Generate header guards with a single '_' for series of non alphabetic characters, instead of several. This is what Bison does. Makes the test t/yacc-d-basic.sh pass again. * lib/ylwrap (guard): Properly honor $1 to rename properly the header guards. Keep a single _ instead of several. (rename_sed): Rename as... (sed_fix_filenames): this. Suggested by Stefano Lattarini. (sed_fix_header_guards): New. Use it.
b8c7e3f7 2012-12-14 15:43:27 Merge branch 'maint' * maint: sync: update files from upstream with "make fetch" gitignore: align with recent changes fixup: add dummy rule for ChangeLog generation in Makefile.am maint: no longer use AM_MAKEFLAGS in maintainer rules maint: use more GNU make features in maintainer rules maint: move maintainer make rules in maint.mk
454a1acd 2012-12-14 15:10:00 sync: update files from upstream with "make fetch" * lib/gnupload: Update. See: <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00050.html> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
d7a59576 2012-12-09 21:55:32 Merge branch 'maint' * maint: docs: AM_CFLAGS: remove reference to non-existing "more detailed" desc maintcheck: prefer '$(am__cd)' over plain 'cd' fetch: improve, and reduce code duplication docs: add rule to generate manuals for www.gnu.org docs: copy the 'gendocs.sh' script from Texinfo CVS repository sync: update files from upstream with "make fetch" release: generate a stub for the release announcement release: distinguish major and minor releases tests: avoid two spurious failures on FreeBSD
6e8997d8 2012-12-08 19:49:33 docs: copy the 'gendocs.sh' script from Texinfo CVS repository As well as the 'gendocs_template' file. And enhance the "make fetch" target to keep them synced. It's better than having to fetch these files by hand each time a release is to be made. * Makefile.am (FETCHFILES): List 'gendocs.sh' and 'gendocs_template'. (fetch): Fetch them, into 'lib/'. (EXRA_DIST): Distribute them. * HACKING: Adjust instructions for generation of manuals. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
c271b9c1 2012-12-08 19:33:23 sync: update files from upstream with "make fetch" * lib/config.sub: Update. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
0ff68f95 2012-10-18 21:07:56 depcomp: remove 'icc' depmode, add 'tcc' one According to the comments in the now-removed test 'depcomp5.test' (removed by commit 'v1.11-1829-g5066c1b' of 2012-02-08, "tests: improve and rework tests on dependency tracking") "icc 8.0 and greater understand gcc options, so depmode is set to gcc". According to Wikipedia, the 8.0 version of the Intel C compiler has been released in December 2003, that is, almost nine yeas ago. So we can remove explicit support for icc 7.x from the depcomp script. Since our support for tcc has so far been relied on the icc depmode, we must write a new explicit 'tcc' depmode. That is easy to do, since we can rely on the simpler and better-specified format of tcc-specified makefiles; for more info, see: <http://lists.gnu.org/archive/html/automake/2012-10/msg00043.html> * lib/depcomp (icc): Remove. (tcc): New. * NEWS: Update. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
3a00a3c5 2012-10-18 17:42:21 depcomp: improve comments about tcc support * lib/depcomp (icc): Here. See also tcc commit 0394caf7 "Emit spaces for -MD" and automake commit v1.11-768-gb96263 "depcomp: support tcc (Tiny C Compiler)". Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>