summaryrefslogtreecommitdiff
path: root/bootstrap
Commit message (Collapse)AuthorAgeFilesLines
* bootstrap: Add a rationale for the bootstrap process.Mathieu Lirzin2017-05-201-0/+4
| | | | * bootstrap: Explain why we can't simply run 'autoreconf -i'.
* bootstrap: Rename 'bootstrap.sh' to 'bootstrap'.Mathieu Lirzin2017-05-201-0/+123
| | | | | | | | | | | | | | 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.
* fixup: avoid unconditional re-bootstrapping on "make dist"Stefano Lattarini2012-04-281-122/+0
| | | | | | | | | | | | | | | | | | | | | Since our 'bootstrap' script is distributed, the 'distdir' target depends on it. But in our GNUmakefile, we also have a 'bootstrap' target declared .PHONY, which when called re-bootstrap the Automake distribution. Thus, whenever we run "make dist", GNU make sees it must remake the 'bootstrap' target (as it is a dependency of the 'distdir' target), and thus ends up re-bootstrapping all the package (because of the .PHONY 'bootstrap' target in GNUmakefile). We fix this issue by renaming our bootstrap script to 'bootstrap.sh'. * bootstrap: Renamed ... * bootstrap.sh: ... to this. * GNUmakefile (bootstrap): Adjust. * Makefile.am (EXTRA_DIST): Likewise. (autodiffs): Likewise. * HACKING: Likewise. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
* build: ensure release year in copyright notice is up-to-dateStefano Lattarini2012-04-281-0/+3
| | | | | | | | | | | | | | | | | | | | | From a suggestion by Eric Blake. See automake bug#11356. This is a follow-up to previous patch 'v1.12-12-gb99b5be'. * configure.ac (RELEASE_YEAR): New AC_SUBST'd variable, should hold the value of the current year. * Makefile.am (update-copyright): Be sure to also update the definition of 'RELEASE_YEAR' in configure.ac. * lib/Automake/Config.in ($RELEASE_YEAR): New exported variable, initialized from the value substituted for '@RELEASE_YEAR@'. (@EXPORT): Add it. * automake.in, aclocal.in: Use '$RELEASE_YEAR' (which will be substituted at make time) instead of hard-coding the release year. This should ensure the copyright range in the version message and in the generated files (Makefile.in and aclocal.m4) are automatically kept up-to-date. * bootstrap (dosubst): Update, also substitute '@RELEASE_YEAR@'. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
* maint: no more make recursion in Automake's build systemStefano Lattarini2012-04-061-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* tests: rename 'tests/' => 't/', '*.test' => '*.sh'Stefano Lattarini2012-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* build: do not quote `like this', as per GCS recommendationStefano Lattarini2012-02-231-2/+2
| | | | | | | | | | | 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.
* maint: run "make update-copyright"Stefano Lattarini2012-02-161-2/+1
|
* Merge branch 'test-protocols' into testsuite-workStefano Lattarini2011-09-081-1/+3
|\ | | | | | | | | * test-protocols: aclocal: more granularity in acdir overriding
| * Merge branch 'maint'Stefano Lattarini2011-09-081-1/+3
| |\ | | | | | | | | | | | | * maint: aclocal: more granularity in acdir overriding
| | * aclocal: more granularity in acdir overridingStefano Lattarini2011-09-081-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this change, using the `--acdir' option caused aclocal to redefine both the directory of automake-provided m4 macros and the directory of third-party system-wide m4 macros. With this change, we deprecate the `--acdir' aclocal option, and introduce two new options `--automake-acdir' and `--system-acdir', to allow for more granularity. * aclocal.in (@automake_includes, @system_includes, @user_includes): Fix and extend comments. (usage): Update. (handle_acdir_option): New function. (parse_arguments): Recognize new options `--system-acdir' and `automake-acdir', and handle `--acdir' using the new function above. Simplify logic by assuming that the directory of third-party system-wide m4 files always exists. * tests/aclocal.in: Update to use the new options, instead of the deprecated. `--acdir'. * m4/dirlist: Move ... * m4/acdir/dirlist: ... here. * m4/Makefile.am (EXTRA_DIST): Update. (m4datadir): Rename ... (automake_acdir): ... to this. Accordingly, ... (dist_m4data_DATA): ... rename this ... (dist_automake_ac_DATA): ... to this. (system_acdir): New, directory. (dist_system_ac_DATA): New, defined to an empty value; this will ensure that the $(system_acdir) directory will be created by "make install". * tests/aclocal.test: Remove check about the `--print-ac-dir' option of aclocal, it has been moved into ... * tests/aclocal-print-acdir.test: ... this new test, and quite extended. * tests/aclocal-acdir.test: New test. * tests/Makefile.am (TESTS): Add the new tests. * NEWS, bootstrap: Update. * doc/automake.texi (aclocal Options, Macro Search Path): Update.
* | | cosmetic: rename gen-tests-deps -> gen-testsuite-partStefano Lattarini2011-09-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/gen-tests-deps: Renamed ... * tests/gen-testsuite-part: ... to this. * bootstrap: Update. * tests/Makefile.am ($(srcdir)/tests-deps.am): Don't generate nor include this ... ($(srcdir)/testsuite-part.am): ... do with this instead. * tests/.gitignore (tests-deps.am): Don't ignore this ... (testsuite-part.am): ... ignore this instead.
* | | testsuite: revamp generation of autogenerated testsStefano Lattarini2011-09-081-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this change, we make generated tests be real scripts again -- albeit only thin layers around the tests they wrap. It turned out that the apparently clever tricks we played by having lots of custom (and auto-generated) `..._LOG_COMPILER' variables and by having the tests in $(wrap_TESTS) not being real on-file-system scripts caused more pain and confusion than expected, for only marginal gains. Also, that previous setup didn't interact very well with "make check RECHECK_LOGS=", since the log files for the "wrappee" tests were always considered out-of-date (which in hindsight is natural, since these log files depended on wrappee tests that didn't exist -- and weren't created). And finally, it wasn't possible to easily and naturally run the wrappee tests from the command line -- definitely harmful for debugging and sanity checking. * tests/gen-wrap-tests: Deleted, its role subsumed into ... * tests/gen-tests-deps: ... this script, with the help of (unindent, atomic_write, build_matcher, write_wrapper_script, %test_generators): ... these new functions and variables. Other few minor fixlets and improvements. * tests/wrap-tests.sh: Delete, not needed anymore. * tests/Makefile.am ($(srcdir)/wrap-tests.am): Don't generate nor include anymore. (EXTRA_DIST): Update. (wrap_TESTS): Renamed to ... (generated_TESTS): ... this. ($(generated_TESTS)): Must have the same dependencies of `$(srcdir)/tests-deps.am'. Other minor related reordering and adjustments. * bootstrap: Do not generate `wrap-tests.am' anymore. * tests/.gitignore (wrap-tests.am): Don't ignore anymore. (*-w.test, *-w.tap): Ignore. * tests/README: Update paragraph on automatically-generated tests.
* | | testsuite: automatize generation of dependencies for testsStefano Lattarini2011-09-081-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/gen-test-deps: New script, automatically generates dependencies for the tests. * tests/Makefile.am (EXTRA_DIST): Distribute it. ($(srcdir)/tests-deps.am): New rule. (include $(srcdir)/tests-deps.am): New inclusion. Remove hand-written dependencies for tests. Other related updates. * tests/list-of-tests (tap_with_common_setup_TESTS, tap_other_TESTS): Delete, their content merged back into ... (handwritten_TESTS): ... this. * tests/.gitignore (tests-deps.am): New ignored file. * bootstrap: Generate `tests/tests-deps.am'.
* | | tests: two single auxiliary scripts to run/generate wrapped testsStefano Lattarini2011-08-291-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/config-shell-tests.sh, tests/parallel-tests.sh, tests/gen-config-shell-tests, tests/gen-parallel-tests: Deleted, their roles taken over by ... * tests/wrap-tests.sh, tests/gen-wrap-tests: ... these new more general scripts. * tests/Makefile.am (EXTRA_DIST): Distribute the new scripts, and do not distribute the obsolete ones anymore. ($(srcdir)/parallel-tests.am, $(srcdir)/config-shell-tests.am): Do not include nor generate anymore, they have been superseded by ... ($(srcdir)/wrap-tests.am): ... this new fragment, automatically generated by `gen-wrap-tests'. (PTEST_LOG_COMPILER, SHTST_LOG_COMPILER): Delete, they are now defined in the new `wrap-tests.am' makefile fragment. (TEST_EXTENSIONS): Do not append to it anymore, that is now done by the new `wrap-tests.am' makefile fragment above. ($(parallel_tests:.ptest=.log), $(config_shell_tests:.shtst=.log), $(parallel_tests), $(config_shell_tests): Remove this dependencies, superseded by ... ($(wrap_TESTS), $(wrap_LOGS)): ... these ones. (MAINTAINERCLEANFILES): Delete, it's not used anymore. (TESTS): Do not contain anymore `$(config_shell_tests)' nor `$(parallel_tests)', contain `$(wrap_TESTS)' instead, as defined by `$(srcdir)/wrap-tests.am'. Other related minor edits and reorderings. * bootstrap, tests/.gitignore, tests/README: Update.
* | | tests: list of tests placed in a separate Makefile fragmentStefano Lattarini2011-08-291-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows us to easily use make instead of by-hand (and more fragile) grepping to extract the list of hand-written tests from our Makefiles. * bootstrap (BOOTSTRAP_MAKE): New variable. Use it to run make in order to extract the list of hand-written tests from ... * tests/list-of-tests.mk: ... this new file, where they are listed in ... (handwritten_TESTS, tap_with_common_setup_TESTS, tap_other_TESTS): ... these variables, extracted respectively from ... * tests/Makefile.am (handwritten_tests, tap_other_tests, tap_with_common_setup_tests): ... these older variables, now removed. (EXTRA_DIST, expected_list_of_tests): Update w.r.t. the variable names' changes. (include $(srcdir)/list-of-tests.mk): New inclusion. Remove an overkill indirection, and with it ... (tap_with_common_setup_logs): ... this variable. ($(srcdir)/parallel-tests.am, $(srcdir)/config-shell-tests.am): Update to match the new interface of ... (gen-parallel-tests, gen-config-shell-tests): ... these scripts, that now read the list of tests from the standard input.
* | | testsuite: use TAP for `depmod*' tests, related simplificationsStefano Lattarini2011-08-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/depmod-tests.sh: Delete this complex and multifarious script, moving all it checks it used to perform into ... * tests/depmod.tap: ... this TAP-based test script. And extend it quite a bit, since the new form of the test was papering over some pre-existing failures (this was due to the fact that the values used for the VPATH were shorter in the new test script). * tests/depmod-data.test: Deleted. * tests/Makefile.am ($(srcdir)/depmod-tests.am): Don't include nor generate it anymore. (EXTRA_DIST): Don't distribute depmod-tests.sh anymore. (TEST_EXTENSIONS): Remove '.depmod'. (DEPMOD_LOG_COMPILER): Deleted. (depmod-data.log, $(depmod_tests:.depmod=.log)): Delete dependencies for these files, which are not used anymore. ($(depmod_tests)): Delete this dummy dependency declaration. (TESTS): Remove $(depmod_tests). (handwritten_tests): Remove depmod-data.test, add depmod.tap. * bootstrap: Don't generate tests/depmod-tests.am anymore.
* | | testsuite: use TAP for `instspc*' tests, related simplificationsStefano Lattarini2011-08-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/instspc-tests.sh: Delete this complex and multifarious script, moving all it checks it used to perform into ... * tests/instspc.tap: ... this TAP-based test script. * tests/instspc-data.test: Deleted. * tests/Makefile.am ($(srcdir)/instspc-tests.am): Don't include nor generate it anymore. (EXTRA_DIST): Don't distribute instspc-tests.sh anymore. (TEST_EXTENSIONS): Remove '.instspc'. (INSTSPC_LOG_COMPILER): Deleted. (XFAIL_TESTS): Remove $(instspc_xfail_tests). (instspc-data.log, $(instspc_tests:.instspc=.log)): Delete dependencies for these files, which are not used anymore. ($(instspc_tests)): Delete this dummy dependency declaration. (TESTS): Remove $(instspc_tests). (handwritten_tests): Remove instspc-data.test, add instspc.tap. * bootstrap: Don't generate tests/instspc-tests.am anymore.
* | | tests: autogenerate list of wrapped tests for `lib/' shell scriptsStefano Lattarini2011-06-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/gen-config-shell-tests: New script, generates distributed makefile snippet `tests/config-shell-tests.am' to list all tests that use the `get_shell_script' function, with names mangled to use suffix `-w.shtst', in ... * tests/Makefile.am (config_shell_tests): ... this macro, whose definition has been consequently removed from Makefile.am. (EXTRA_DIST): Distribute the new script. ($(srcdir)/config-shell-tests.am): Generate using the new script. (include): Include the `config-shell-tests.am' fragment. * bootstrap: Invoke `tests/gen-config-shell-tests' to generate `tests/config-shell-tests.am'. * tests/.gitignore: Ignore `config-shell-tests.am'. * tests/gen-parallel-tests: Fixlet in heading comments.
* | | tests: extend tests on dependency tracking with VPATHStefano Lattarini2011-05-011-0/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/depmod-tests.sh: New script, fulfilling a threefold role: 1. it is called to generate a Makefile.am snippet, containing the definition of proper lists of tests; 2. it is called to set up a directory containing some common data files and autotools-generated files used by the aforementioned tests (this is done for speed reasons only); and 3. it is called to properly run those tests, one at a time. * tests/depcomp9.test: Delete, it's obsolete now. * tests/depcomp10.test: Likewise. * tests/Makefile.am ($(srcdir)/depmod-tests.am): Include this snippet, which defines ... (depmode_tests): ... this new macro, containing the list of the newly generated `*.depmod' tests. (TESTS_EXTENSIONS): Add `.depmod'. (DEPMOD_LOG_COMPILER): Define. It calls `depmod-tests.sh', so that the "depmode tests" will be executed by passing that driver script a proper parameter. ($(depmod_tests)): New dependency declaration (dummy, but required in order to have make actually produce expected log files from the `.depmod.log' suffix rule). (TESTS): Add $(depmod_tests). (EXTRA_DIST): Distribute depmod-tests.sh. Other minor cosmetic changes and reorderings. * bootstrap: Generate depmod-tests.am. * tests/.gitignore: Updated.
* | Overhauled and modularized tests in `instspc.test'.Stefano Lattarini2010-11-041-1/+2
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test `instspc.test' was way too big and fragile. Its running time was very long. It also produced a log that was nearly unreadable due to its length, making it very difficult to find out the reason for failures. Also, it was too much monolithic, with a single (maybe spurious) failure in a corner case causing the whole test to fail (even if everything worked as expected in the other 99% of cases). The present change should solve these problems, by separating `instspc.test' into many smaller, self-contained, auto-generated tests. * tests/instspc.test: Removed. * tests/instspc-tests.sh: New script, fullfilling a double role: 1. it generates a Makefile.am snippet `tests/instspc-tests.am', containing the definition of a list of new tests which will take over the older `instspc.test', and 2. it is sourced by said generated tests with proper parameters pre-set, to run the "meat" of the checks. This apparent abuse is indeed required because the test generation code and test execution code are inevitably interwined. * tests/Makefile.am ($(srcdir)/instspc-tests.am): Include this snippet, which (among the other things) defines ... (instspc_tests): ... this new macro, containing the list of the newly generated `instspc*.test' tests, and ... (instspc_xfail_tests): ... this new macro, containing the list of the `instspc*.test' tests expected to fail. ($(instspc_tests)): New rule, generates the `instspc*.test' tests. ($(instspc_tests:.test=.log)): New rule, registers the dependency of all `instspc*.test' tests on the `instspc-tests.sh' script. (TESTS): Add `$(instspc_tests)', remove `instspc.test'. (XFAIL_TESTS): Add `$(xfail_instspc_tests)'. (EXTRA_DIST): Distribute instspc-tests.sh. (MAINTAINERCLEANFILES): Added $(instspc_tests). Other minor cosmetic changes. * bootstrap: Generate instspc-tests.am. * tests/.gitignore: Updated.
* Bootstrap: fixlet.Stefano Lattarini2010-08-101-4/+2
| | | | | | | * bootstrap: Do not remove `lib/Automake/Config.pm' anymore, since we don't generate it. Correctly quote arguments of `eval' builtin. Fixed a botched error message. Removed an extra blank line.
* Bootstrap: don't search perl in $PATH.Stefano Lattarini2010-08-101-30/+2
| | | | | * bootstrap: Do not explicitly search perl in $PATH anymore. ($PATH_SEPARATOR): Removed, it's no more needed.
* Bootstrap: let the user choose which autoconf to use.Stefano Lattarini2010-08-101-1/+7
| | | | | | * bootstrap ($AUTOCONF): New variable, from the environment. ($AUTOM4TE): Likewise, for clarity. Use "$AUTOCONF" instead of calling "autoconf" directly.
* Improve determination of PATH separator in bootstrap script.Stefano Lattarini2010-06-111-7/+6
| | | | | | | * bootstrap: Detemine what the PATH separator is the same way autoconf does. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Minor improvements in bootstrap script.Stefano Lattarini2010-06-111-36/+39
| | | | | | | | | * bootstrap: Consistently use two-spaces indentation. Cosmetic improvement to comments. ($me): New variable, containing program basename. Prepend it to all error messages. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Use $DJDIR rather than $DJGPP to detect running on DJGPP.Ralf Wildenhues2009-12-051-1/+1
| | | | | | | | | * automake.in (Language): Use $ENV{'DJDIR'} for the $ENV{'SHELL'} override. * bootstrap: Use $DJDIR for setting BOOTSTRAP_SHELL, to fix bootstrapping under MinGW when $DJGPP has been set. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Revert Automake license to GPLv2+.Ralf Wildenhues2009-05-171-1/+1
| | | | | | | | | | | | Automake will move to GPLv3+ once the Exception statement has been rewritten to use the new GPLv3 exception language. This change does not impact the COPYING file that may be installed by `automake --add-missing'. * COPYING: Revert to GPLv2. All uses changed. * NEWS: Update. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* parallel-tests: Ensure backward-compatible semantics.Ralf Wildenhues2009-03-141-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For each test in Automake's test suite that uses TESTS, generate an identical one that uses the `parallel-tests' option, for coverage of backward-compatible functionality. * tests/gen-parallel-tests: New file, generates distributed Makefile.am snippet tests/parallel-tests.am to list all tests that use the TESTS interface but not yet the `parallel-tests' option, with names mangled to use suffix `-p.test', in ... (parallel_tests): ... this new make macro. * tests/Makefile.am ($(srcdir)/parallel-tests.am) ($(parallel_tests), defs-p): New rules. (TESTS): Add check11.test and $(parallel_tests). (check_SCRIPTS): Add defs-p, $(parallel_tests). (check-clean-local): Remove `defs-p'. (EXTRA_DIST): Distribute gen-parallel-tests. (MAINTAINERCLEANFILES): New variable, remove $(parallel_tests). * bootstrap: Generate parallel-tests.am. * tests/check8.test: Check for circular dependencies in rules. * tests/check11.test: New test, check that SKIPs are not counted as passed tests. * tests/defs.in: Unset DISABLE_HARD_ERRORS, LAZY_TEST_SUITE, VERBOSE, so the tests are not influenced by the way our test suite is invoked. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Parallel automake execution: AUTOMAKE_JOBS.Ralf Wildenhues2008-10-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lib/Automake/Config.in (perl_threads): New global. * automake.in: Use it. If the perl supports interpreter-based threading, then use `threads' and `Thread::Queue'. (handle_makefile, handle_makefiles_serial): New functions, factored out from main. (get_number_of_threads): New function, compute number of threads to use, based on environment variable `AUTOMAKE_JOBS' and number of independent makefiles. (handle_makefiles_threaded): New function. Spawn threads, use thread queue to distribute handling the different makefiles. Collect $exit_code values from threads. (main): Use new functions. * aclocal.in: No threads here. * configure.ac: Substitute PERL_THREADS; enabled with perl >= 5.7.2 and when ithreads are available. * bootstrap (dosubst): Likewise. * Makefile.am (do_subst): Likewise. * lib/Automake/Makefile.am (do_subst): Likewise. * lib/Automake/ChannelDefs.pm: Use `Automake::Config' and `threads'. (verb): Prepend thread ID (tid) to verbose messages. * lib/Automake/Channels.pm (msg): Before exiting, flush stderr, needed for worker threads. * lib/Automake/tests/Makefile.am (TESTS_ENVIRONMENT): Also include the build tree path, so Config.pm is found. * tests/parallel-am.test: New test. * tests/Makefile.am: Update. * doc/automake.texi (Invoking Automake): Document AUTOMAKE_JOBS. * NEWS, THANKS: Update. Report about long execution times by Joakim Tjernlund and others. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Fix bootstrap to remove read-only directories right.Ralf Wildenhues2008-10-081-1/+5
| | | | | | * bootstrap: Remove automake-$APIVERSION correctly. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Reword the copyright notices to match what's suggested in GPLv3.Ralf Wildenhues2007-12-081-2/+1
|
* * bootstrap: Fix typos on redirections.Akim Demaille2007-11-251-4/+4
| | | | Signed-off-by: Akim Demaille <akim@lrde.epita.fr>
* Move to git as primary source repository.Ralf Wildenhues2007-10-291-2/+2
| | | | | | | | | | | * Makefile.am (git-dist, git-release): Renamed and adjusted from ... (cvs-dist, cvs-release): ... these. (git-diff): New target, taken and adjusted from cvs-diff. * Makefile.in: Regenerate. * bootstrap: Adjust. * NEWS: Announce change. * doc/automake.texi (General Operation): cvs-dist is git-dist now. (Timeline): Mention change.
* * COPYING, lib/COPYING: Update to GPLv3. All uses changed.Ralf Wildenhues2007-07-071-1/+1
| | | | * NEWS: Update.
* * COPYING, ChangeLog, ChangeLog.00, ChangeLog.01, ChangeLog.02,Alexandre Duret-Lutz2005-05-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ChangeLog.03, ChangeLog.96, ChangeLog.98, HACKING, Makefile.am, NEWS, README, TODO, aclocal.in, automake.in, bootstrap, configure, configure.ac, doc/Makefile.am, doc/fdl.texi, lib/COPYING, lib/Makefile.am, lib/acinstall, lib/compile, lib/config-ml.in, lib/config.guess, lib/config.sub, lib/depcomp, lib/elisp-comp, lib/gnupload, lib/mdate-sh, lib/missing, lib/py-compile, lib/symlink-tree, lib/texinfo.tex, lib/ylwrap, lib/Automake/ChannelDefs.pm, lib/Automake/Channels.pm, lib/Automake/Condition.pm, lib/Automake/Config.in, lib/Automake/Configure_ac.pm, lib/Automake/DisjConditions.pm, lib/Automake/FileUtils.pm, lib/Automake/General.pm, lib/Automake/Item.pm, lib/Automake/ItemDef.pm, lib/Automake/Location.pm, lib/Automake/Makefile.am, lib/Automake/Options.pm, lib/Automake/Rule.pm, lib/Automake/RuleDef.pm, lib/Automake/Struct.pm, lib/Automake/VarDef.pm, lib/Automake/Variable.pm, lib/Automake/Version.pm, lib/Automake/Wrap.pm, lib/Automake/XFile.pm, lib/Automake/tests/Condition.pl, lib/Automake/tests/DisjConditions.pl, lib/Automake/tests/Makefile.am, lib/Automake/tests/Version.pl, lib/Automake/tests/Wrap.pl, lib/am/Makefile.am, lib/am/ansi2knr.am, lib/am/check.am, lib/am/clean-hdr.am, lib/am/clean.am, lib/am/compile.am, lib/am/configure.am, lib/am/data.am, lib/am/dejagnu.am, lib/am/depend.am, lib/am/depend2.am, lib/am/distdir.am, lib/am/footer.am, lib/am/header-vars.am, lib/am/header.am, lib/am/inst-vars.am, lib/am/install.am, lib/am/java.am, lib/am/lang-compile.am, lib/am/lex.am, lib/am/library.am, lib/am/libs.am, lib/am/libtool.am, lib/am/lisp.am, lib/am/ltlib.am, lib/am/ltlibrary.am, lib/am/mans-vars.am, lib/am/mans.am, lib/am/multilib.am, lib/am/program.am, lib/am/progs.am, lib/am/python.am, lib/am/remake-hdr.am, lib/am/scripts.am, lib/am/subdirs.am, lib/am/tags.am, lib/am/texi-vers.am, lib/am/texibuild.am, lib/am/texinfos.am, lib/am/yacc.am, m4/Makefile.am, tests/aclibobj.test, tests/acloca10.test, tests/acloca11.test, tests/acloca12.test, tests/acloca13.test, tests/acloca14.test, tests/acloca15.test, tests/acloca16.test, tests/acloca17.test, tests/acloca18.test, tests/acloca19.test, tests/aclocal.test, tests/aclocal3.test, tests/aclocal4.test, tests/aclocal5.test, tests/aclocal6.test, tests/aclocal7.test, tests/aclocal8.test, tests/aclocal9.test, tests/acoutbs.test, tests/acoutbs2.test, tests/acoutnoq.test, tests/acoutpt.test, tests/acoutpt2.test, tests/acoutqnl.test, tests/acsilent.test, tests/acsubst.test, tests/acsubst2.test, tests/all.test, tests/alloca.test, tests/alloca2.test, tests/alpha.test, tests/alpha2.test, tests/amassign.test, tests/ammissing.test, tests/ansi.test, tests/ansi10.test, tests/ansi2.test, tests/ansi3.test, tests/ansi3b.test, tests/ansi4.test, tests/ansi5.test, tests/ansi6.test, tests/ansi7.test, tests/ansi8.test, tests/ansi9.test, tests/ar.test, tests/ar2.test, tests/asm.test, tests/autohdr.test, tests/autohdr2.test, tests/autohdr3.test, tests/autohdr4.test, tests/automake.test, tests/auxdir.test, tests/auxdir2.test, tests/auxdir3.test, tests/auxdir4.test, tests/backsl.test, tests/backsl2.test, tests/backsl3.test, tests/backsl4.test, tests/badline.test, tests/badopt.test, tests/badprog.test, tests/block.test, tests/bsource.test, tests/canon.test, tests/canon2.test, tests/canon3.test, tests/canon4.test, tests/canon5.test, tests/ccnoco.test, tests/check.test, tests/check2.test, tests/check3.test, tests/check4.test, tests/checkall.test, tests/clean.test, tests/clean2.test, tests/colneq.test, tests/colneq2.test, tests/colon.test, tests/colon2.test, tests/colon3.test, tests/colon4.test, tests/colon5.test, tests/colon6.test, tests/colon7.test, tests/comment.test, tests/comment2.test, tests/comment3.test, tests/comment4.test, tests/comment5.test, tests/comment6.test, tests/comment7.test, tests/comment8.test, tests/comment9.test, tests/compile.test, tests/compile_f90_c_cxx.test, tests/compile_f_c_cxx.test, tests/cond.test, tests/cond10.test, tests/cond11.test, tests/cond13.test, tests/cond14.test, tests/cond15.test, tests/cond16.test, tests/cond17.test, tests/cond18.test, tests/cond19.test, tests/cond2.test, tests/cond20.test, tests/cond21.test, tests/cond22.test, tests/cond23.test, tests/cond24.test, tests/cond25.test, tests/cond26.test, tests/cond27.test, tests/cond28.test, tests/cond29.test, tests/cond3.test, tests/cond30.test, tests/cond31.test, tests/cond32.test, tests/cond33.test, tests/cond34.test, tests/cond35.test, tests/cond36.test, tests/cond37.test, tests/cond4.test, tests/cond5.test, tests/cond6.test, tests/cond7.test, tests/cond8.test, tests/cond9.test, tests/condd.test, tests/condhook.test, tests/condinc.test, tests/condinc2.test, tests/condlib.test, tests/condman.test, tests/condman2.test, tests/conf2.test, tests/confdeps.test, tests/conff.test, tests/conff2.test, tests/confh.test, tests/confh4.test, tests/confh5.test, tests/config.test, tests/confincl.test, tests/conflnk.test, tests/conflnk2.test, tests/conflnk3.test, tests/confsub.test, tests/confvar.test, tests/confvar2.test, tests/copy.test, tests/ctarget1.test, tests/cxx.test, tests/cxx2.test, tests/cxxansi.test, tests/cxxcpp.test, tests/cxxlibobj.test, tests/cxxlink.test, tests/cxxnoc.test, tests/cxxo.test, tests/cygwin32.test, tests/dash.test, tests/defs.in, tests/defun.test, tests/defun2.test, tests/dejagnu.test, tests/dejagnu2.test, tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test, tests/dejagnu6.test, tests/dejagnu7.test, tests/depacl2.test, tests/depcomp.test, tests/depcomp2.test, tests/depcomp3.test, tests/depcomp4.test, tests/depcomp5.test, tests/depdist.test, tests/depend.test, tests/depend2.test, tests/depend3.test, tests/depend4.test, tests/destdir.test, tests/dirforbid.test, tests/dirlist.test, tests/discover.test, tests/distcom2.test, tests/distcom3.test, tests/distcom4.test, tests/distcom5.test, tests/distcom6.test, tests/distcom7.test, tests/distdir.test, tests/distname.test, tests/dollar.test, tests/double.test, tests/dup2.test, tests/else.test, tests/empty.test, tests/empty2.test, tests/empty3.test, tests/empty4.test, tests/exdir.test, tests/exdir2.test, tests/exeext.test, tests/exeext2.test, tests/exeext3.test, tests/exeext4.test, tests/exsource.test, tests/ext.test, tests/ext2.test, tests/extra.test, tests/extra2.test, tests/extra3.test, tests/extra4.test, tests/extra5.test, tests/extra6.test, tests/extra7.test, tests/f90only.test, tests/flibs.test, tests/fn99.test, tests/fnoc.test, tests/fo.test, tests/fonly.test, tests/fortdep.test, tests/fpinst2.test, tests/fpinstall.test, tests/gcj.test, tests/gcj2.test, tests/gcj3.test, tests/gcj4.test, tests/gcj5.test, tests/getopt.test, tests/gettext.test, tests/gettext2.test, tests/gnits.test, tests/gnits2.test, tests/gnits3.test, tests/gnumake.test, tests/gnuwarn.test, tests/gnuwarn2.test, tests/header.test, tests/help.test, tests/hfs.test, tests/hosts.test, tests/implicit.test, tests/include.test, tests/include2.test, tests/info.test, tests/insh2.test, tests/install2.test, tests/installdir.test, tests/instdat.test, tests/instdat2.test, tests/instexec.test, tests/insthook.test, tests/instman.test, tests/instman2.test, tests/instsh.test, tests/instsh2.test, tests/instspc.test, tests/interp.test, tests/interp2.test, tests/java.test, tests/java2.test, tests/java3.test, tests/javaprim.test, tests/javasubst.test, tests/ldadd.test, tests/ldflags.test, tests/lex.test, tests/lex2.test, tests/lex3.test, tests/lex4.test, tests/lex5.test, tests/libobj10.test, tests/libobj11.test, tests/libobj12.test, tests/libobj13.test, tests/libobj14.test, tests/libobj2.test, tests/libobj3.test, tests/libobj4.test, tests/libobj5.test, tests/libobj7.test, tests/libobj8.test, tests/library.test, tests/library2.test, tests/library3.test, tests/libtool.test, tests/libtool2.test, tests/libtool3.test, tests/libtool4.test, tests/libtool5.test, tests/libtool6.test, tests/libtool7.test, tests/libtool8.test, tests/libtool9.test, tests/license.test, tests/link_c_cxx.test, tests/link_dist.test, tests/link_f90_only.test, tests/link_f_only.test, tests/link_fc.test, tests/link_fccxx.test, tests/link_fcxx.test, tests/lisp2.test, tests/lisp3.test, tests/lisp4.test, tests/lisp5.test, tests/lisp6.test, tests/lisp7.test, tests/lisp8.test, tests/listval.test, tests/location.test, tests/longlin2.test, tests/longline.test, tests/ltcond.test, tests/ltcond2.test, tests/ltconv.test, tests/ltdeps.test, tests/ltlibobjs.test, tests/ltlibsrc.test, tests/maintclean.test, tests/make.test, tests/makej.test, tests/makevars.test, tests/man.test, tests/man2.test, tests/mclean.test, tests/mdate.test, tests/mdate2.test, tests/mdate3.test, tests/mdate4.test, tests/missing.test, tests/missing2.test, tests/missing3.test, tests/mkinst2.test, tests/mkinstall.test, tests/mmodely.test, tests/multlib.test, tests/nobase.test, tests/nodef.test, tests/nodef2.test, tests/nodep.test, tests/nodepcomp.test, tests/nodist.test, tests/nodist2.test, tests/nodist3.test, tests/nogzip.test, tests/nogzip2.test, tests/noinst.test, tests/noinstdir.test, tests/nolink.test, tests/nostdinc.test, tests/number.test, tests/obsolete.test, tests/order.test, tests/outdir.test, tests/output.test, tests/output10.test, tests/output11.test, tests/output12.test, tests/output2.test, tests/output3.test, tests/output4.test, tests/output5.test, tests/output6.test, tests/output7.test, tests/output8.test, tests/output9.test, tests/overrid.test, tests/parse.test, tests/percent.test, tests/percent2.test, tests/phony.test, tests/pluseq.test, tests/pluseq10.test, tests/pluseq2.test, tests/pluseq3.test, tests/pluseq4.test, tests/pluseq5.test, tests/pluseq6.test, tests/pluseq7.test, tests/pluseq8.test, tests/pluseq9.test, tests/postproc.test, tests/ppf77.test, tests/pr2.test, tests/pr204.test, tests/pr211.test, tests/pr220.test, tests/pr224.test, tests/pr229.test, tests/pr243.test, tests/pr266.test, tests/pr279-2.test, tests/pr279.test, tests/pr287.test, tests/pr300-lib.test, tests/pr300-ltlib.test, tests/pr300-prog.test, tests/pr307.test, tests/pr401.test, tests/pr401b.test, tests/pr401c.test, tests/pr72.test, tests/pr87.test, tests/pr9.test, tests/prefix.test, tests/primary.test, tests/primary2.test, tests/primary3.test, tests/proginst.test, tests/python.test, tests/python10.test, tests/python11.test, tests/python12.test, tests/python2.test, tests/python3.test, tests/python4.test, tests/python5.test, tests/python6.test, tests/python7.test, tests/python8.test, tests/python9.test, tests/recurs.test, tests/recurs2.test, tests/regex.test, tests/remake.test, tests/remake2.test, tests/remake3.test, tests/remake4.test, tests/remake5.test, tests/req.test, tests/reqd.test, tests/reqd2.test, tests/rulepat.test, tests/scripts.test, tests/seenc.test, tests/sinclude.test, tests/space.test, tests/specflg.test, tests/specflg2.test, tests/specflg3.test, tests/specflg6.test, tests/specflg7.test, tests/specflg8.test, tests/specflg9.test, tests/spell.test, tests/spell2.test, tests/spell3.test, tests/spelling.test, tests/spy.test, tests/srcsub.test, tests/srcsub2.test, tests/stamph2.test, tests/stdlib.test, tests/stdlib2.test, tests/strip.test, tests/subcond.test, tests/subcond2.test, tests/subcond3.test, tests/subdir.test, tests/subdir2.test, tests/subdir3.test, tests/subdir4.test, tests/subdir5.test, tests/subdir6.test, tests/subdir7.test, tests/subdir8.test, tests/subdir9.test, tests/subdirbuiltsources.test, tests/subobj.test, tests/subobj2.test, tests/subobj3.test, tests/subobj4.test, tests/subobj5.test, tests/subobj6.test, tests/subobj7.test, tests/subobj8.test, tests/subobj9.test, tests/subobjname.test, tests/subpkg.test, tests/subpkg2.test, tests/subst.test, tests/subst2.test, tests/substre2.test, tests/substref.test, tests/substtarg.test, tests/suffix.test, tests/suffix10.test, tests/suffix11.test, tests/suffix2.test, tests/suffix3.test, tests/suffix4.test, tests/suffix5.test, tests/suffix6.test, tests/suffix7.test, tests/suffix8.test, tests/suffix9.test, tests/symlink.test, tests/symlink2.test, tests/symlink3.test, tests/syntax.test, tests/tags.test, tests/tagsub.test, tests/tar.test, tests/tar2.test, tests/tar3.test, tests/target-cflags.test, tests/targetclash.test, tests/transform.test, tests/txinfo.test, tests/txinfo10.test, tests/txinfo13.test, tests/txinfo16.test, tests/txinfo17.test, tests/txinfo18.test, tests/txinfo19.test, tests/txinfo2.test, tests/txinfo20.test, tests/txinfo21.test, tests/txinfo22.test, tests/txinfo23.test, tests/txinfo24.test, tests/txinfo25.test, tests/txinfo26.test, tests/txinfo27.test, tests/txinfo28.test, tests/txinfo29.test, tests/txinfo3.test, tests/txinfo4.test, tests/txinfo5.test, tests/txinfo6.test, tests/txinfo7.test, tests/txinfo8.test, tests/txinfo9.test, tests/unused.test, tests/vars.test, tests/vars3.test, tests/vartar.test, tests/version.test, tests/version2.test, tests/version3.test, tests/version4.test, tests/version6.test, tests/version7.test, tests/version8.test, tests/vpath.test, tests/vtexi.test, tests/vtexi2.test, tests/warnopts.test, tests/werror.test, tests/werror2.test, tests/whoami.test, tests/xsource.test, tests/yacc.test, tests/yacc2.test, tests/yacc3.test, tests/yacc4.test, tests/yacc5.test, tests/yacc6.test, tests/yacc7.test, tests/yacc8.test, tests/yaccpp.test, tests/yaccvpath.test: Update FSF postal mail address.
* Mimic Paul Eggert's changes to Autoconf.Alexandre Duret-Lutz2004-01-051-2/+2
| | | | | | * Makefile.am (automake, aclocal): Use `chmod a-w', not `chmod -w'. * lib/Automake/Makefile.am (Config.pm): Likewise. * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Likewise.
* * Makefile.am (do_subst): Fix the substitution of @configure_input@.Alexandre Duret-Lutz2003-12-091-4/+9
| | | | | | | | | | | | (automake, aclocal): Create the output atomically and make it read-only, as done in the Autoconf package. * lib/Automake/Makefile.am (do_subst): Fix the substitution of @configure_input@. (Config.pm): Create the output atomically and make it read-only. * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Substitute @configure_input@ and make the output read-only. * lib/Automake/Config.in, m4/amversion.in, tests/aclocal.in, tests/automake.in, tests/defs.in: Add a @configure_input@ line.
* Require not only that `perl' have the executableJim Meyering2003-11-171-1/+1
| | | | bit set, but also that it is not a directory.
* * configure.in: Rename as ...Alexandre Duret-Lutz2003-09-241-2/+2
| | | | | * configure.ac: ... this. * README: s/configure.in/configure.ac/.
* * lib/Automake/Config.in: New file.Alexandre Duret-Lutz2003-08-061-17/+19
| | | | | | | | | * lib/Automake/Makefile.am (nodist_perllib_DATA, do_subst, CLEANFILES): New variables. (Config.pm): New rule. * Makefile.am (maintainer-check): Adjust expected differences between automake.in and automake. * aclocal.in, automake.in: Use Automake::Config.
* run autoconfAlexandre Duret-Lutz2003-06-021-4/+3
|
* quote DJGPP; from Simon RichterAlexandre Duret-Lutz2003-05-061-1/+1
|
* * automake.in (scan_aclocal_m4): Do not parse ACLOCAL_AMFLAGSAlexandre Duret-Lutz2003-04-241-7/+4
| | | | | | | | | | | | | | | | | | | | | | | and glob for m4_files (We've got all local m4 files while tracing m4_include's). Diagnose ACLOCAL_M4_SOURCES as obsolete. Distribute aclocal.m4 only at the top-level. (my_glob): Remove. This fixes PR automake/11. (handle_dist): Strip leading `./' from directories. * aclocal.in (add_file): Output 'm4_include([file.m4])' instead of copying local files. (write_aclocal, parse_arguments): Bump copyright date. * configure.in: De not build m4/amversion.m4 from here ... * m4/Makefile.am ($(srcdir)/amversion.m4): ... do this here. (nodist_m4data_DATA): Use $(srcdir)/amversion.m4 instead of amversion.m4. * tests/Makefile.am (XFAIL_TESTS): Remove aclocal5.test. (TESTS): Remove aclocal2.test. Do not test aclocal.test twice. * tests/aclocal2.test: Delete (pointless). * tests/aclocal5.test: Make sure configure's dependencies are distributed. * tests/acinclude.test: Adjust to search for m4_include. * tests/dirlist.test, tests/dup3.test: Run $AUTOCONF and grep configure instead of aclocal.m4.
* auto-detect the path separator; patch from Richard DaweAlexandre Duret-Lutz2003-02-241-1/+11
|
* always use cp -rf instead of ln -s, as suggested by Richard DaweAlexandre Duret-Lutz2003-02-111-4/+4
|
* redirect ln errors to /dev/nullAlexandre Duret-Lutz2003-02-101-1/+1
|
* 2003-02-10 Richard Dawe <rich@phekda.freeserve.co.uk>Alexandre Duret-Lutz2003-02-101-2/+16
| | | | | | | * bootstrap: Don't require support for symlinks - copy instead. Override $SHELL with DJGPP's bash, if running DJGPP. Substitute @SHELL@ in automake.in and aclocal.in. This makes the setting of SHELL work for DJGPP.
* Don't rely on which, use an Autoconf-like test instead.Pavel Roskin2002-10-201-3/+12
| | | | Reported by Frédéric L. W. Meunier" <0@pervalidus.net>
* fix computation of APIVERSIONAlexandre Duret-Lutz2002-09-251-1/+1
|