summaryrefslogtreecommitdiff
path: root/tests/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ChangeLog')
-rw-r--r--tests/ChangeLog1079
1 files changed, 1079 insertions, 0 deletions
diff --git a/tests/ChangeLog b/tests/ChangeLog
new file mode 100644
index 0000000..d036568
--- /dev/null
+++ b/tests/ChangeLog
@@ -0,0 +1,1079 @@
+2010-07-28 Paul Smith <psmith@gnu.org>
+
+ * scripts/targets/POSIX: Compatibility issues with Solaris (and
+ Tru64?); "false" returns different exit codes, and set -x shows
+ output with extra whitespace. Run the commands by hand first to
+ find out what the real shell would do, then compare what make does.
+ * scripts/variables/SHELL: Ditto.
+
+2010-07-12 Paul Smith <psmith@gnu.org>
+
+ * test_driver.pl: Add a new $perl_name containing the path to Perl.
+ * run_make_tests.pl (run_make_test): Replace the special string
+ #PERL# in a makefile etc. with the path the Perl executable so
+ makefiles can use it.
+
+ * scripts/targets/ONESHELL: Add a new set of regression tests for
+ the .ONESHELL feature.
+
+2010-07-06 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/SHELL: Test the new .SHELLFLAGS variable.
+
+ * scripts/targets/POSIX: New file. Test the .POSIX special target.
+ Verify that enabling .POSIX changes the shell flags to set -e.
+
+2010-07-01 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/recursion: Add a space to separate command-line
+ args. Fixes Savannah bug #29968.
+
+2009-11-12 Boris Kolpackov <boris@codesynthesis.com>
+
+ * scripts/features/vpath3: Test for the new library search
+ behavior.
+
+2009-10-06 Boris Kolpackov <boris@codesynthesis.com>
+
+ * scripts/features/se_explicit: Enable the test for now fixed
+ Savannah bug 25780.
+
+2009-10-06 Boris Kolpackov <boris@codesynthesis.com>
+
+ * scripts/variables/undefine: Tests for the new undefine feature.
+
+2009-10-03 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/parallelism: Test for open Savannah bug #26846.
+
+ * scripts/variables/MAKE: Rewrite for new run_make_test() format.
+
+ * scripts/variables/MAKEFLAGS: Created.
+ Add test for Savannah bug #2216 (still open).
+
+ * scripts/features/include: Test for Savannah bug #102 (still open).
+
+2009-09-30 Boris Kolpackov <boris@codesynthesis.com>
+
+ * scripts/features/include: Add diagnostics issuing tests for
+ cases where targets have been updated and failed with the
+ dontcare flag. Savannah bugs #15110, #25493, #12686, #17740.
+
+2009-09-28 Paul Smith <psmith@gnu.org>
+
+ * scripts/functions/shell: Add regression test for Savannah bug
+ #20513 (still open).
+
+ * scripts/features/se_explicit: Add regression tests for Savannah
+ bug #25780 (still open).
+
+ * run_make_tests.pl (valid_option): Add a new flag, -all([-_]?tests)?
+ that runs tests we know will fail. This allows us to add
+ regression tests to the test suite for bugs that haven't been
+ fixed yet.
+
+2009-09-28 Boris Kolpackov <boris@codesynthesis.com>
+
+ * scripts/features/patspecific_vars: Add a test for the shortest
+ stem first order.
+
+ * scripts/features/patternrules: Add a test for the shortest stem
+ first order.
+
+2009-09-24 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/se_implicit: Add a test for order-only
+ secondary expansion prerequisites.
+
+2009-09-23 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/patternrules: Test that we can remove pattern
+ rules, both single and multiple prerequisites. Savannah bug #18622.
+
+ * scripts/features/echoing: Rework for run_make_test().
+
+2009-06-14 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/vpath: Verify we don't get bogus circular
+ dependency warnings if we choose a different file via vpath during
+ update. Savannah bug #13529.
+
+2009-06-13 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/MAKEFILES: Verify that MAKEFILES included
+ files (and files included by them) don't set the default goal.
+ Savannah bug #13401.
+
+ * scripts/functions/wildcard: Test that wildcards with
+ non-existent glob matchers return empty.
+
+2009-06-09 Paul Smith <psmith@gnu.org>
+
+ * scripts/options/dash-B: Test the $? works correctly with -B.
+ Savannah bug #17825.
+
+ * scripts/features/patternrules: Test that dependencies of
+ "also_make" targets are created properly. Savannah bug #19108.
+
+ * test_driver.pl (compare_output): Create a "run" file for failed
+ tests containing the command that was run.
+ (get_runfile): New function.
+
+ * run_make_tests.pl (valid_option): Enhanced support for valgrind:
+ allow memcheck and massif tools.
+
+ * scripts/features/patternrules: Have to comment out a line in the
+ first test due to backing out a change that broke the implicit
+ rule search algorithm. Savannah bug #17752.
+ * scripts/misc/general4: Remove a test that is redundant with
+ patternrules.
+
+ * scripts/features/parallelism: Add a test for re-exec with
+ jobserver master override. Savannah bug #18124.
+
+2009-06-08 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Add a test for continued target
+ vars after a semicolon. Savannah bug #17521.
+
+2009-06-07 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/se_explicit: Make sure we catch defining
+ prereqs during snap_deps(). Savannah bug #24622.
+
+ * scripts/variables/automatic: Check prereq ordering when the
+ target with the recipe has no prereqs. Savannah bug #21198.
+
+ * scripts/variables/LIBPATTERNS: Add a new set of test for
+ $(.LIBPATTERNS) (previously untested!)
+
+2009-06-04 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/SHELL: The export target-specific SHELL test
+ has an incorrect known-good-value.
+
+ * scripts/misc/general4: Check for whitespace (ffeed, vtab, etc.)
+
+ * scripts/features/se_explicit: Add tests for Savannah bug #24588.
+
+2009-05-31 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/DEFAULT_GOAL: Add tests for Savannah bug #25697.
+
+ * scripts/features/targetvars: Add tests of overrides for Savannah
+ bug #26207.
+ * scripts/features/patspecific_vars: Ditto.
+
+ * scripts/features/patternrules: Add a test for Savannah bug #26593.
+
+2009-05-30 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/flavors: Update with new variable flavor tests.
+ * scripts/variables/define: Create a new set of tests for
+ define/endef and move those aspects of the flavors suite here.
+
+2009-05-25 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Ditto.
+
+ * scripts/features/export: Test new variable parsing abilities.
+
+2009-02-23 Ramon Garcia <ramon.garcia.f@gmail.com>
+
+ * scripts/variables/private: Create a new suite of tests for 'private'.
+
+2007-11-04 Paul Smith <psmith@gnu.org>
+
+ * scripts/functions/eval: Update error message for command -> recipe.
+
+ * test_driver.pl (compare_output): Allow the answer to be a regex,
+ if surrounded by '/'.
+ * scripts/misc/close_stdout: Use a regex for the answer, since
+ sometimes the error will have a description and sometimes it won't.
+
+2007-09-10 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/special: Add tests for .RECIPEPREFIX variable.
+
+2007-08-15 Paul Smith <psmith@gnu.org>
+
+ These test cases were contributed by
+ Icarus Sparry <savannah@icarus.freeuk.com> and J. David Bryan for
+ Savannah bugs #3330 and #15919.
+
+ * scripts/targets/SECONDARY: Add tests for Savannah bugs 3330 and
+ 15919.
+
+ * scripts/features/parallelism: Add tests for wrong answer/hang
+ combining INTERMEDIATE, order-only prereqs, and parallelism.
+ See Savannah bugs 3330 and 15919.
+
+2007-07-13 Paul Smith <psmith@gnu.org>
+
+ Install a timeout so tests can never loop infinitely.
+ Original idea and patch for a single-test version provided by
+ Icarus Sparry <savannah@icarus.freeuk.com>
+
+ * test_driver.pl (_run_command): New function: this is called by
+ other functions to actually run a command. Before we run it,
+ install a SIGALRM handler and set up a timer to go off in the
+ future (default is 5s; this can be overridden by individual tests).
+ (run_command): Call it.
+ (run_command_with_output): Call it.
+
+ * run_make_tests.pl (run_make_with_options): Override the default
+ timeout if the caller requests it.
+ (run_make_test): Pass any timeout override to run_make_with_options.
+
+ * scripts/features/parallelism: Increase the timeout for long tests.
+ * scripts/options/dash-l: Ditto.
+
+2006-10-01 Paul Smith <psmith@paulandlesley.org>
+
+ * run_make_tests.pl (set_more_defaults): Remove setting of LANG in
+ ENV here. This doesn't always work.
+ * test_driver.pl (toplevel): Set LC_ALL to 'C' in the make
+ environment. Fixes Savannah bug #16698.
+
+2006-09-30 Paul Smith <psmith@paulandlesley.org>
+
+ * scripts/variables/automatic: Add back the test for bug #8154.
+
+2006-04-01 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/realpath: Don't run tests with multiple
+ initial slashes on Windows: those paths mean something different.
+
+2006-03-19 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/parallelism: Test that the jobserver is
+ properly managed when we have to re-exec the master instance of
+ make.
+
+2006-03-17 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/statipattrules: Add tests for bug #16053.
+
+2006-03-09 Paul Smith <psmith@gnu.org>
+
+ * scripts/features/escape: Use "pre:" not "p:" to avoid conflicts
+ with DOS drive letters. Fixes Savannah bug #15947.
+
+ * test_driver.pl (run_each_test): Set the status properly even
+ when a test fails to execute. Fixes Savannah bug #15942.
+
+ * scripts/functions/foreach: Use a different environment variable
+ other than PATH to avoid differences with Windows platforms.
+ Fixes Savannah bug #15938.
+
+2006-03-05 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (set_more_defaults): Add CYGWIN_NT as a port
+ type W32. Fixed Savannah bug #15937.
+
+ * scripts/features/default_names: Don't call error() when the test
+ fails. Fixes Savannah bug #15941.
+
+2006-02-17 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Test a complex construction which
+ guarantees that we have to merge variable lists of different
+ sizes. Tests for Savannah bug #15757.
+
+2006-02-15 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/error: Make sure filename/lineno information
+ is related to where the error is expanded, not where it's set.
+ * scripts/functions/warning: Ditto.
+ * scripts/functions/foreach: Check for different error conditions.
+ * scripts/functions/word: Ditto.
+ * scripts/variables/negative: Test some variable reference failure
+ conditions.
+ * scripts/options/warn-undefined-variables: Test the
+ --warn-undefined-variables flag.
+
+2006-02-09 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (set_more_defaults): Update valgrind support
+ for newer versions.
+ * test_driver.pl (toplevel): Skip all hidden files/directories (ones
+ beginning with ".").
+
+ * scripts/functions/andor: Tests for $(and ..) and $(or ...)
+ functions.
+
+2006-02-08 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/parallelism: Add a test for bug #15641.
+
+2006-02-06 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-W: Add a test for bug #15341.
+
+2006-01-03 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/automatic: Add a test for bug #8154.
+
+ * README: Update to reflect the current state of the test suite.
+
+2005-12-12 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/parallelism, scripts/functions/wildcard,
+ scripts/targets/FORCE, scripts/targets/PHONY,
+ scripts/targets/SILENT: Use the default setting for
+ $delete_command. Fixes bug #15085.
+
+ * run_make_tests.pl (get_this_pwd) [VMS]: Use -no_ask with delete_file.
+
+2005-12-11 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/misc/general4: Test implicit rules with '$' in the
+ prereq list & prereq patterns.
+ * scripts/features/se_implicit: Add in .SECONDEXPANSION settings.
+
+2005-12-09 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/patternrules: Add a test for bug #13022.
+
+2005-12-07 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/double_colon: Add a test for bug #14334.
+
+2005-11-17 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/functions/flavor: Add a test for the flavor function.
+
+2005-11-14 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/variables/INCLUDE_DIRS: Add a test for the .INCLUDE_DIRS
+ special variable.
+
+2005-10-24 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/misc/general4: Test '$$' in prerequisites list.
+ * scripts/features/statipattrules: Rewrite to use run_make_test().
+ Add various static pattern info.
+ * scripts/features/se_statpat: Enable .SECONDEXPANSION target.
+ * scripts/features/se_explicit: Add tests for handling '$$' in
+ prerequisite lists with and without setting .SECONDEXPANSION.
+ * scripts/features/order_only: Convert to run_make_test().
+ * run_make_tests.pl (set_more_defaults): If we can't get the value
+ of $(MAKE) from make, then fatal immediately.
+
+2005-08-31 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (get_this_pwd): Require the POSIX module (in
+ an eval to trap errors) and if it exists, use POSIX::getcwd to
+ find the working directory. If it doesn't exist, go back to the
+ previous methods. This tries to be more accurate on Windows
+ systems.
+
+2005-08-29 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/abspath: Add some text to the error messages
+ to get a better idea of what's wrong. Make warnings instead of
+ errors.
+
+ * scripts/features/patspecific_vars: Don't use "test", which is
+ UNIX specific. Print the values and let the test script match
+ them.
+
+2005-08-25 Paul Smith <psmith@gnu.org>
+
+ * scripts/variables/SHELL: Use a /./ prefix instead of //: the
+ former works better with non-UNIX environments. Fixes Savannah
+ bug #14129.
+
+2005-08-13 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/functions/wildcard: Wrap calls to $(wildcard ) with
+ $(sort) so that the resulting order is no longer filesystem-
+ dependant.
+
+2005-08-10 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/statipattrules: Add a test for Savannah bug #13881.
+
+2005-08-07 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/parallelism: Add a test for a bug reported by
+ Michael Matz (matz@suse.de) in which make exits without waiting
+ for all its children in some situations during parallel builds.
+
+2005-07-08 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl: Reset the environment to a clean value every
+ time before we invoke make. I'm suspicious that the environment
+ isn't handled the same way in Windows as it is in UNIX, and some
+ variables are leaking out beyond the tests they are intended for.
+ Create an %extraENV hash tests can set to add more env. vars.
+ * tests/scripts/features/export: Change to use %extraENV.
+ * tests/scripts/functions/eval: Ditto.
+ * tests/scripts/functions/origin: Ditto.
+ * tests/scripts/options/dash-e: Ditto.
+ * tests/scripts/variables/SHELL: Ditto.
+
+2005-06-27 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-W: Use 'echo >>' instead of touch to update
+ files.
+ * scripts/features/reinvoke: Rewrite to be safer on systems with
+ subsecond timestamps.
+ * scripts/features/patternrules: False exits with different error
+ codes on different systems (for example, Linux => 1, Solaris => 255).
+
+ * scripts/options/dash-W: Set the timestamp to foo.x in the future,
+ to be sure it will be considered updated when it's remade.
+
+2005-06-26 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/shell: New test suite for the shell function.
+
+2005-06-25 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/include: Test include/-include/sinclude with no
+ arguments. Tests fix for Savannah bug #1761.
+
+ * scripts/misc/general3: Implement comprehensive testing of
+ backslash-newline behavior in command scripts: various types of
+ quoting, fast path / slow path, etc.
+ Tests fix for Savannah bug #1332.
+
+ * scripts/options/symlinks: Test symlinks to non-existent files.
+ Tests fix for Savannah bug #13280.
+
+ * scripts/misc/general3: Test semicolons in variable references.
+ Tests fix for Savannah bug #1454.
+
+ * scripts/variables/MAKE_RESTARTS: New file: test the
+ MAKE_RESTARTS variable.
+ * scripts/options/dash-B: Test re-exec doesn't loop infinitely.
+ Tests fix for Savannah bug #7566.
+ * scripts/options/dash-W: New file: test the -W flag, including
+ re-exec infinite looping.
+
+2005-06-12 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/misc/close_stdout: Add a test for Savannah bug #1328.
+ This test only works on systems that have /dev/full (e.g., Linux).
+
+2005-06-09 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/foreach: Add a test for Savannah bug #11913.
+
+2005-05-31 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/include: Add a test for Savannah bug #13216.
+ * scripts/features/patternrules: Add a test for Savannah bug #13218.
+
+2005-05-13 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/conditionals: Add tests for the new if... else
+ if... endif syntax.
+
+2005-05-03 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/DEFAULT_GOAL: Rename DEFAULT_TARGET to
+ DEFAULT_GOAL.
+
+2005-05-02 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/parallelism: Add a test for exporting recursive
+ variables containing $(shell ) calls. Rewrite this script to use
+ run_make_test() everywhere.
+
+2005-04-07 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/targets/SECONDARY: Add a test for Savannah bug #12331.
+
+2005-03-15 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/variables/automatic: Add a test for Savannah bug #12320.
+
+2005-03-10 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/patternrules: Add a test for Savannah bug #12267.
+
+2005-03-09 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/variables/DEFAULT_TARGET: Add a test for Savannah
+ bug #12266.
+
+2005-03-04 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/patternrules: Add a test for Savannah bug #12202.
+
+2005-03-03 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/se_implicit: Add a test for stem
+ termination bug. Add a test for stem triple-expansion bug.
+
+ * scripts/features/se_statpat: Add a test for stem
+ triple-expansion bug.
+
+ * scripts/features/statipattrules: Change test #4 to reflect
+ new way empty prerequisite list is handled.
+
+
+2005-03-01 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/statipattrules: Add a test for
+ Savannah bug #12180.
+
+2005-02-28 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-q: Add a test for Savannah bug # 7144.
+
+ * scripts/options/symlinks: New file to test checking of symlink
+ timestamps. Can't use filename dash-L because it conflicts with
+ dash-l on case-insensitive filesystems.
+
+ * scripts/variables/MAKEFILE_LIST, scripts/variables/MFILE_LIST:
+ Rename MAKEFILE_LIST test to MFILE_LIST, for systems that need 8.3
+ unique filenames.
+
+2005-02-28 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/variables/DEFAULT_TARGET: Test the .DEFAULT_TARGET
+ special variable.
+
+2005-02-27 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/se_explicit: Test the second expansion in
+ explicit rules.
+ * scripts/features/se_implicit: Test the second expansion in
+ implicit rules.
+ * scripts/features/se_statpat: Test the second expansion in
+ static pattern rules.
+ * scripts/variables/automatic: Fix to work with the second
+ expansion.
+
+ * scripts/misc/general4: Add a test for bug #12091.
+
+2005-02-27 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/eval: Check that eval of targets within
+ command scripts fails. See Savannah bug # 12124.
+
+2005-02-26 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (compare_output): If a basic comparison of the
+ log and answer doesn't match, try harder: change all backslashes
+ to slashes and all CRLF to LF. This helps on DOS/Windows systems.
+
+2005-02-09 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/recursion: Test command line variable settings:
+ only one instance of a given variable should be provided.
+
+2004-11-30 Boris Kolpackov <boris@kolpackov.net>
+
+ * tests/scripts/functions/abspath: New file: test `abspath'
+ built-in function.
+
+ * tests/scripts/functions/realpath: New file: test `realpath'
+ built-in function.
+
+2004-11-28 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-C [WINDOWS32]: Add a test for bug #10252;
+ this doesn't really test anything useful in UNIX but...
+
+ * scripts/variables/SHELL: New file: test proper handling of SHELL
+ according to POSIX rules. Fixes bug #1276.
+
+2004-10-21 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/functions/word: Test $(firstword ) and $(lastword ).
+
+2004-10-05 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/patspecific_vars: Test simple/recursive
+ variable expansion.
+
+2004-09-28 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/include: Test dontcare flag inheritance
+ when rebuilding makefiles.
+
+2004-09-27 Boris Kolpackov <boris@kolpackov.net>
+
+ * scripts/features/patspecific_vars: Test exported variables.
+
+2004-09-22 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (run_make_test): Don't add newlines to the
+ makestring or answer if they are completely empty.
+
+ * scripts/features/patternrules: Rename from implicit_prereq_eval.
+
+ * scripts/test_template: Rework the template.
+
+2004-09-21 Boris Kolpackov <boris@kolpackov.net>
+
+ * run_make_tests.pl: Change `#!/usr/local/bin/perl' to be
+ `#!/usr/bin/env perl'.
+
+ * scripts/features/implicit_prereq_eval: Test implicit rule
+ prerequisite evaluation code.
+
+2004-09-21 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (run_make_test): Enhance to allow the make
+ string to be undef: in that case it reuses the previous make
+ string. Allows multiple tests on the same makefile.
+
+ * scripts/variables/flavors: Add some tests for prefix characters
+ interacting with define/endef variables.
+
+2004-09-20 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/substitution: Rewrite to use run_make_test()
+ interface, and add test for substitution failures reported by
+ Markus Mauhart <qwe123@chello.at>.
+
+2004-03-22 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (run_each_test, toplevel, compare_output): Change
+ to track both the testing categories _AND_ the number of
+ individual tests, and report both sets of numbers.
+
+2004-02-21 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/origin: Set our own environment variable
+ rather than relying on $HOME.
+
+2004-01-21 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/conditionals: Test arguments to ifn?def which
+ contain whitespace (such as a function that is evaluated). Bug
+ #7257.
+
+2004-01-07 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/order_only: Test order-only prerequisites in
+ pattern rules (patch #2349).
+
+2003-11-02 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/if: Test if on conditionals with trailing
+ whitespace--bug #5798.
+
+ * scripts/functions/eval: Test eval in a non-file context--bug #6195.
+
+2003-04-19 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/patspecific_vars: Test multiple patterns
+ matching the same target--Bug #1405.
+
+2003-04-09 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (set_more_defaults): A new $port_type of
+ 'OS/2' for (surprise!) OS/2. Also choose a wait time of 2 seconds
+ for OS/2.
+
+2003-03-28 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/targets/SECONDARY: Test the "global" .SECONDARY (with
+ not prerequisites)--Bug #2515.
+
+2003-01-30 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Test very long target-specific
+ variable definition lines (longer than the default make buffer
+ length). Tests patch # 1022.
+
+ * scripts/functions/eval: Test very recursive $(eval ...) calls
+ with simple variable expansion (bug #2238).
+
+ * scripts/functions/word: Test error handling for word and
+ wordlist functions (bug #2407).
+
+2003-01-22 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/call: Test recursive argument masking (bug
+ #1744).
+
+2002-10-25 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/eval: Test using $(eval ...) inside
+ conditionals (Bug #1516).
+
+2002-10-14 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-t: Add a test for handling -t on targets
+ with no commands (Bug #1418).
+
+2002-10-13 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Add a test for exporting
+ target-specific vars (Bug #1391).
+
+2002-10-05 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/automatic: Add tests for $$(@), $${@}, $${@D},
+ and $${@F}.
+
+2002-09-23 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/escape: Test handling of escaped comment
+ characters in targets and prerequisites.
+
+2002-09-18 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/export: Test export/unexport of multiple
+ variables in a single command.
+
+2002-09-17 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Tests for Bug #940: test
+ target-specific and pattern-specific variables in conjunction with
+ double-colon targets.
+
+2002-09-10 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (compare_output): Match the new format for time
+ skew error messages.
+
+ * scripts/features/export: Created. Add tests for export/unexport
+ capabilities, including exporting/unexporting expanded variables.
+
+ * scripts/features/conditionals: Add a test for expanded variables
+ in ifdef conditionals.
+
+2002-09-04 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/reinvoke: Change touch/sleep combos to utouch
+ invocations.
+ * scripts/features/vpathgpath: Ditto.
+ * scripts/features/vpathplus: Ditto.
+ * scripts/options/dash-n: Ditto.
+ * scripts/targets/INTERMEDIATE: Ditto.
+ * scripts/targets/SECONDARY: Ditto.
+
+ * scripts/options/dash-t: Added a test for the -t bug fixed by
+ Henning Makholm. This test was also contributed by Henning.
+
+ * scripts/misc/general4: Add a test suite for obscure algorithmic
+ features of make. First test: make sure creation subdirectories
+ as prerequisites of targets works properly.
+
+ * scripts/misc/version: Remove this bogus test.
+
+2002-08-07 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/misc/general3: Add a test for makefiles that don't end
+ in newlines.
+
+ * scripts/variables/special: Create tests for the special
+ variables (.VARIABLES and .TARGETS). Comment out .TARGETS test
+ for now as it's not yet supported.
+
+2002-08-01 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-B: Add a test for the new -B option.
+
+2002-07-11 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (valid_option): Add support for Valgrind. Use
+ -valgrind option to the test suite.
+ (set_more_defaults): Set up the file descriptor to capture
+ Valgrind output. We have to unset its close-on-exec flag; we
+ hardcode the value for F_SETFD (2) rather than load it; hopefully
+ this will help us avoid breaking the Windows/DOS test suite.
+
+2002-07-10 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/automatic: Add some tests for $$@, $$(@D), and
+ $$(@F).
+
+ * test_driver.pl (utouch): Create a new function that creates a
+ file with a specific timestamp offset. Use of this function will
+ let us avoid lots of annoying sleep() invocations in the tests
+ just to get proper timestamping, which will make the tests run a
+ lot faster. So far it's only used in the automatic test suite.
+
+2002-07-09 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/automatic: Create a test for automatic variables.
+
+2002-07-08 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/order_only: Test new order-only prerequisites.
+
+2002-07-07 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/eval: Test new function.
+ * scripts/functions/value: Test new function.
+ * scripts/variables/MAKEFILE_LIST: Test new variable.
+
+2002-04-28 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/call: New test: transitive closure
+ implementation using $(call ...) to test variable recursion.
+
+2002-04-21 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (compare_dir_tree): Ignore CVS and RCS
+ directories in the script directories.
+
+2001-05-02 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/flavors: Test define/endef scripts where only
+ one of the command lines is quiet.
+
+2000-06-22 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-q: New file; test the -q option. Includes
+ a test for PR/1780.
+
+2000-06-21 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Added a test for PR/1709: allowing
+ semicolons in target-specific variable values.
+
+2000-06-19 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/addsuffix: Test for an empty final argument.
+ Actually this bug might have happened for any function, but this
+ one was handy.
+
+2000-06-17 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * scripts/options/general: If parallel jobs are not supported,
+ expect a warning message from Make.
+
+2000-06-15 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * scripts/options/general: Don't try -jN with N != 1 if parallel
+ jobs are not supported.
+
+2000-05-24 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/general: Test general option processing (PR/1716).
+
+2000-04-11 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/strip: Test empty value to strip (PR/1689).
+
+2000-04-08 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * scripts/features/reinvoke: Sleep before updating the target
+ files in the first test, to ensure its time stamp really gets
+ newer; otherwise Make might re-exec more than once.
+
+2000-04-07 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * scripts/features/double_colon: Don't run the parallel tests if
+ parallel jobs aren't supported.
+
+2000-04-04 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/word: wordlist doesn't swap arguments anymore.
+
+2000-03-27 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/statipattrules: Test that static pattern rules
+ whose prerequisite patterns resolve to empty strings throw an
+ error (instead of dumping core). Fixes PR/1670.
+
+ * scripts/features/reinvoke: Make more robust by touching "b"
+ first, to ensure it's not newer than "a".
+ Reported by Marco Franzen <Marco.Franzen@Thyron.com>.
+ * scripts/options/dash-n: Ditto.
+
+ * scripts/functions/call: Whoops. The fix to PR/1527 caused
+ recursive invocations of $(call ...) to break. I can't come up
+ with any way to get both working at the same time, so I backed out
+ the fix to 1527 and added a test case for recursive calls. This
+ also tests the fix for PR/1610.
+
+ * scripts/features/double_colon: Test that circular dependencies
+ in double-colon rule sets are detected correctly (PR/1671).
+
+2000-03-26 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/targets/INTERMEDIATE: Test that make doesn't remove
+ .INTERMEDIATE files when given on the command line (PR/1669).
+
+2000-03-08 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-k: Add a test for error detection by
+ multiple targets depending on the same prerequisite with -k.
+ For PR/1634.
+
+2000-02-07 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/escape: Add a test for backslash-escaped spaces
+ in a target name (PR/1586).
+
+2000-02-04 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/patspecific_vars: Add a test for pattern-specific
+ target variables inherited from the parent target (PR/1407).
+
+2000-02-02 Paul D. Smith <psmith@gnu.org>
+
+ * run_make_tests.pl (set_more_defaults): Hard-code the LANG to C
+ to make sure sorting order, etc. is predictable.
+ Reported by Andreas Jaeger <aj@suse.de>.
+
+ * run_make_tests.pl (set_more_defaults): Set the $wtime variable
+ depending on the OS. Eli Zaretskii <eliz@is.elta.co.il> reports
+ this seems to need to be *4* on DOS/Windows, not just 2. Keep it
+ 1 for other systems.
+ * scripts/features/vpathplus (touchfiles): Use the $wtime value
+ instead of hardcoding 2.
+ * scripts/targets/SECONDARY: Ditto.
+ * scripts/targets/INTERMEDIATE: Ditto.
+
+2000-01-27 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (toplevel): Don't try to run test scripts which
+ are really directories.
+
+2000-01-23 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/include: Remove a check; the fix caused more
+ problems than the error, so I removed it and removed the test for
+ it.
+
+2000-01-11 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/call: Add a test for PR/1517 and PR/1527: make
+ sure $(call ...) doesn't eval its arguments and that you can
+ invoke foreach from it without looping forever.
+
+1999-12-15 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/targets/INTERMEDIATE: Add a test for PR/1423: make sure
+ .INTERMEDIATE settings on files don't disable them as implicit
+ intermediate possibilities.
+
+1999-12-01 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/double_colon: Add a test for PR/1476: Try
+ double-colon rules as non-goal targets and during parallel builds
+ to make sure they're handled serially.
+
+1999-11-17 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/functions/if: Add a test for PR/1429: put some text
+ after an if-statement to make sure it works.
+
+ * scripts/features/targetvars: Add a test for PR/1380: handling +=
+ in target-specific variable definitions correctly.
+
+1999-10-15 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/variables/MAKEFILES: This was really broken: it didn't
+ test anything at all, really. Rewrote it, plus added a test for
+ PR/1394.
+
+1999-10-13 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/options/dash-n: Add a test for PR/1379: "-n doesn't
+ behave properly when used with recursive targets".
+
+1999-10-08 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/targetvars: Add a check for PR/1378:
+ "Target-specific vars don't inherit correctly"
+
+1999-09-29 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (get_osname): Change $fancy_file_names to
+ $short_filenames and reverse the logic.
+ (run_each_test): Change test of non-existent $port_host to use
+ $short_filenames--problem reported by Eli Zaretskii.
+
+1999-09-23 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/parallelism: Add a check to ensure that the
+ jobserver works when we re-invoke. Also cleaned up the tests a
+ little, reducing the number of rules we use so the test won't need
+ as many "sleep" commands.
+
+1999-09-16 Paul D. Smith <psmith@gnu.org>
+
+ * scripts/features/reinvoke: Remove invocations of "touch" in
+ makefiles. See the comments on the touch function rewrite below.
+ Note that UNIX touch behaves the same way if the file already
+ exists: it sets the time to the _local_ time. We don't want
+ this. This is probably a good tip for makefile writers in
+ general, actually... where practical.
+ * scripts/options/dash-l: Ditto.
+ * scripts/options/dash-n: Ditto.
+
+ * test_driver.pl (run_each_test): In retrospect, I don't like the
+ .lN/.bN/.dN postfix required by DOS. So, for non-DOS systems I
+ changed it back to use .log, .base, and .diff.
+
+ * run_make_tests.pl (set_more_defaults): Move the check for the
+ make pathname to here from set_defaults (that's too early since it
+ happens before the command line processing).
+ Create a new variable $port_type, calculated from $osname, to
+ specify what kind of system we're running on. We should integrate
+ the VOS stuff here, too.
+ (valid_option): Comment out the workdir/-work stuff so people
+ won't be fooled into thinking it works... someone needs to fix
+ this, though!
+
+ * scripts/functions/origin: Use $port_type instead of $osname.
+ * scripts/functions/foreach: Ditto.
+ * scripts/features/default_names: Ditto.
+
+1999-09-15 Paul D. Smith <psmith@gnu.org>
+
+ * test_driver.pl (touch): Rewrite this function. Previously it
+ used to use utime() to hard-set the time based on the current
+ local clock, or, if the file didn't exist, it merely created it.
+ This mirrors exactly what real UNIX touch does, but it fails badly
+ on networked filesystems where the FS server clock is skewed from
+ the local clock: normally modifying a file causes it to get a mod
+ time based on the _server's_ clock. Hard-setting it based on the
+ _local_ clock causes gratuitous errors and makes the tests
+ unreliable except on local filesystems. The new function will
+ simply modify the file, allowing the filesystem to set the mod
+ time as it sees fit.
+
+ * scripts/features/parallelism: The second test output could
+ change depending on how fast some scripts completed; use "sleep"
+ to force the order we want.
+
+ * test_driver.pl (toplevel): A bug in Perl 5.000 to Perl 5.004
+ means that "%ENV = ();" doesn't do the right thing. This worked
+ in Perl 4 and was fixed in Perl 5.004_01, but use a loop to delete
+ the environment rather than require specific versions.
+
+ * run_make_tests.pl (set_more_defaults): Don't use Perl 5 s///
+ modifier "s", so the tests will run with Perl 4.
+ (set_more_defaults): Set $pure_log to empty if there's no -logfile
+ option in PURIFYOPTIONS.
+ (setup_for_test): Don't remove any logs unless $pure_log is set.
+
+1999-09-15 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * scripts/features/reinvoke: Put the SHELL definition in the right
+ test makefile.
+
+1999-09-15 Paul D. Smith <psmith@gnu.org>
+
+ ChangeLog file for the test suite created.
+
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+This file is part of GNU Make.
+
+GNU Make is free software; you can redistribute it and/or modify it under the
+terms of the GNU General Public License as published by the Free Software
+Foundation; either version 3 of the License, or (at your option) any later
+version.
+
+GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with
+this program. If not, see <http://www.gnu.org/licenses/>.