kc3-lang/automake/syntax-checks.mk

Branch :


Log

Author Commit Date CI Message
8036e5a1 2012-04-11 21:01:39 maintcheck: avoid yet more spurious failures (2) Some maintainer checks were too greedy in processing 'Makefile.am' files, looking for them even in temporary directories left behind by the test cases, thus causing occasional spurious failures. * syntax-checks.mk (ams): Ignore 'Makefile.am' files in the temporary test directories. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
ee6eb9fa 2012-04-11 19:18:21 maintcheck: fix spurious failures * syntax-check.mk (sc_mkinstalldirs): Now the 'mkinstalldirs' is listed in the top-level 'Makefile.am', not in 'lib/Makefile.am'; adjust the "whitelist" accordingly. (sc_ensure_testsuite_has_run): The 'test-suite.log' file created by "make check" is now placed in the top-level directory, not in the 't/' subdirectory. Adjust by using '$(TEST_SUITE_LOG)' instead of an hand-crafted path for the 'test-suite.log' file. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
8e02441b 2012-04-06 15:20:54 maint: no more make recursion in Automake's build system We finally merge testsuite-related part of the Automake build system with the top-level one. See also yesterday's commit 'v1.11-2124-ga4b0f4b', "maint: remove most recursion in automake's own build system". * t/gen-testsuite-part: Move ... * gen-testsuite-part: ... here, with required adjustments. * t/defs-static.in: Move ... * defs-static.in: ... here, with required adjustments. In particular ... ($testsrcdir, $testbuilddir): Removed. ($top_testsrcdir): Renamed ... ($am_top_srcdir): ... to this. ($top_testbuilddir): Renamed ... ($am_top_builddir): ... to this. * t/defs: Move ... * defs: ... here, and adjust as required. * t/Makefile.am: Merge ... * Makefile.am: ... in here, with related adjustments and simplifications. * bootstrap: Adjust as required. * syntax-checks.mk: Likewise. * .gitignore: Likewise. * t/ax/tap-setup.sh: Likewise. * t/get-sysconf.sh: Likewise. * t/help-multilib.sh: Likewise. * t/multlib.sh: Likewise. * t/parallel-tests2.sh: Likewise. * t/self-check-cleanup.tap: Likewise. * t/self-check-exit.tap: Likewise. * t/self-check-dir.tap: Likewise. * t/self-check-explicit-skips.sh: Likewise. * t/self-check-reexec.tap: Likewise. * t/self-check-sanity.sh: Likewise. * t/yacc-d-cxx.sh: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
8a5096d1 2012-04-06 13:12:25 tests: rename 'tests/' => 't/', '*.test' => '*.sh' When we (soon) convert the Automake testsuite to a non-recursive make setup, we'll have to fix the entries of $(TESTS) to be prepended with the subdirectory they are in; this will increase the length of $(TESTS), and thus increase the possibility of exceeding the command-line length limits on some systems (most notably, MinGW/MSYS). See automake bug#7868 for more information. Thus we rename the 'tests/' subdirectory to 't/', and each 'x.test' script in there to 'x.sh'; this way, the $(TESTS) entry 'foo.test' will become 't/foo.sh', which have the same number of characters. * tests/: Rename ... * t/: ... to this. * t/*.test: Rename ... * t/*.sh: ... to this. * t/.gitignore: Removed as obsolete. * t/defs: Adjust. * t/gen-testsuite-part: Likewise. * t/list-of-tests.mk: Likewise. * t/ccnoco.sh: Likewise. * t/ccnoco3.sh: Likewise. * t/self-check-cleanup.tap: Likewise. * t/self-check-dir.tap: Likewise. * t/self-check-me.tap: Likewise. * t/self-check-reexec.tap: Likewise. * README: Likewise. * bootstrap: Likewise * configure.ac: Likewise. * Makefile.am: Likewise. * .gitignore: Likewise. * syntax-check.mk: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
23f0543e 2012-04-05 21:20:29 tests: move most helper scripts and files into the 'ax' subdirectory * tests/defs-static.in ($am_testauxdir): New variable. * tests/testsuite-summary-checks.sh: Moved ... * tests/ax/testsuite-summary-checks.sh: ... here. * tests/trivial-test-driver: Moved ... * tests/ax/trivial-test-driver: ... here. * tests/tap-summary-aux.sh: Moved ... * tests/ax/tap-summary-aux.sh: ... here. * tests/distcheck-hook-m4.am: Moved ... * tests/ax/distcheck-hook-m4.am: ... here. * tests/prove-runner: Moved ... * tests/ax/prove-runner: ... here. * tests/depcomp.sh: Moved ... * tests/ax/depcomp.sh: ... here. * tests/tap-setup.sh: Moved ... * tests/ax/tap-setup.sh: ... here. * tests/tap-functions.sh: Moved ... * tests/ax/tap-functions.sh: ... here. * tests/plain-functions.sh: Moved ... * tests/ax/plain-functions.sh: ... here. * tests/extract-testsuite-summary: Moved ... * tests/ax/extract-testsuite-summary.pl: .. . here. * tests/gen-testsuite-part: Adjusted accordingly. * tests/Makefile.am: Likewise. * tests/defs: Likewise. * syntax-check.mk: Likewise. * Several tests: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
57d09886 2012-03-02 22:50:21 maintcheck: fix few spurious failures * syntax-checks.mk: Fix some spurious failures by tightening and/or tweaking few checks so that some false positives end up whitelisted.
c4f2b64c 2012-02-23 22:06:14 maintcheck: remove an obsolete check * syntax-checks.mk (sc_perl_local_no_parens): Remove, we don't even allow the use of local but for the '$_' and '$~' special variables. (syntax_check_rules): Adjust.
2d951983 2012-02-23 19:21:00 build: do not quote `like this', as per GCS recommendation This patch converts the files implementing the automake's own build system to the use of new quoting format 'like this' or "like this" rather than `like this'. * bootstrap, configure.ac, syntax-checks.mk, Makefile.am, lib/Makefile.am, m4/Makefile.am, syntax-checks.mk: Update quoting format throughout, in comments and diagnostic. Some minor related rewordings and reformatting since we are at it.
db973eaa 2012-02-21 19:47:36 tests: prefer 'configure.ac' over 'configure.in' With this change, our testsuite now uses 'configure.ac' as the name for the typical autoconf input, instead of the obsolescent 'configure.in' (which has been deprecated for several years, at least since autoconf 2.50). Most of the test cases changed by this commit have been automatically modified with this sed command (using GNU sed): sed -i 's/\<configure\(\\\?\)\.in\>/configure\1.ac/g' * syntax-checks.mk (sc_tests_no_configure_in): New syntax check. (syntax_check_rules): Add it. * tests/defs: Create stub for autoconf input in 'configure.ac', not in 'configure.in'. Adjust comments. ($AUTOCONF, $AUTOHEADER, $AUTORECONF): Remove workaround for the infamous debian autoconf wrapper: we don't need such workaround anymore now that we name our autoconf input as 'configure.ac'. For more information, see commit v1.11-564-g63da492 "test defs: hack to support autoconf-wrapper programs" of 16-12-2011. * tests/README: Use 'configure.ac', not 'configure.in'. * Many many tests: Likewise. * tests/backcompat3.test: Adjust to avoid spurious failures. * tests/backcompat5.test: Likewise. * tests/missing6.test: Likewise. * tests/backcompat6.test: Likewise, and extend a bit since we are at it.
622a348e 2012-02-17 13:14:57 tests: TAP-based tests should error if no plan was specified After this change, it will still be OK for TAP-based tests not to report any explicit TAP plan -- but they should state *explicitly* that they want to do so, by calling the 'plan_' function with a proper argument (currently, either "later" or "unknonwn"). Motivated by a recent issue introduced by yesterday's commit 'v1.11-1959-g0699a84' (pointed out by Peter Rosin, and fixed by follow-up commit 'v1.11-1961-gea44190'). * tests/tap-functions.sh (plan_): Get rid of '$have_tap_plan_', and refactor use and initialization of '$planned_' in a way that will allow client script to get more information on which kind of plan (if any) has been declared by the former 'plan_' invocation. (skip_all_): Adjust. * tests/defs (exit trap): Only print the "lazy" TAP plan if 'plan_' has requested that *explicitly*. * syntax-check.mk (sc_tests_tap_plan): Remove: it's obsolete now, since a TAP-based test that doesn't call 'plan_' explicitly won't print any TAP plan, and the TAP driver will catch that and report an error. (syntax_check_rules): Adjust.
f76cb63c 2012-02-16 18:44:13 maintcheck: whitelist some false positives Instead of tweaking or dumbing down some of our sources or tests in order not to make them spuriously trigger few maintainer checks, we tweak such checks instead. * syntax-checks.mk (sc_tests_overriding_macros_on_cmdline): Also allow the variable 'exp' to be overridden on the make command line. Whitelist the test 'make-dryrun.test' where appropriate. (sc_mkinstalldirs): When whitelisting the 'mkinstalldirs' occurrence in 'lib/Makefile.am', do not look for the exact line number: it is obviously too fragile.
ef20e28b 2012-01-28 13:23:16 maintcheck: fix real and spurious warnings * lib/Makefile.am (install-data-hook): Correctly quote $(DESTDIR) occurrences. * Makefile.am (install-exec-hook, uninstall-hook): Likewise. (autodiffs): Prefer '$(am__cd)' to plain 'cd', where warranted. * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Likewise. Also, prefer using AC_SUBST'd $(abs_top_builddir) over obtaining it at runtime from $(top_builddir). * syntax-check.mk (sc_mkinstalldirs): Tweak to whitelist known harmless occurrences of the checked-against usages. (sc_no_for_variable_in_macro): Likewise. * tests/CheckListOfTests.am (maintainer-check-list-of-tests): Tweak to avoid spuriously triggering the 'sc_no_for_variable_in_macro' maintainer check. Prefer '$(am__cd)' to plain 'cd' when warranted.
25d3adb1 2012-01-28 12:38:07 maintcheck: take advantage of some GNU make features We can do so now that our maintainer checks require GNU make unconditionally. * syntax-check.mk (ams, xtests): Redefine as "immediate variables", using the GNU make $(shell ...) builtin. (maintainer-check-list-of-tests): Take advantage of GNU make "-C" option. Don't use $(AM_MAKEFLAGS), we shouldn't need it with GNU make.
e508e09d 2012-01-28 10:05:18 build: require GNU make in order to run the maintainer checks This is not a real regression in portability, since most maintainer check rules already assumed GNU grep, and were anyway only meant to run on the developers' systems (where we can safely assume the presence of GNU make). This change will allow us to take advantage, in future changes, of more GNU make features, thus simplifying or optimizing some of our maintainer rules. * GNUmakefile: New, including 'Makefile' and 'syntax-checks.mk'. * configure.ac (AC_CONFIG_LINKS): Link it in the builddir. * Makefile.am (EXTRA_DIST): Distribute 'GNUmakefile' and 'syntax-checks.mk'. Move all syntax-check rules and auxiliary variables into ... * syntax-checks.mk: ... this new file, with some adjustments.