Imported Upstream version 4.0
[platform/upstream/make.git] / tests / ChangeLog
1 2013-10-09  Paul Smith  <psmith@gnu.org>
2
3         * scripts/features/patspecific_vars: Typo fixes.
4
5 2013-10-05  Paul Smith  <psmith@gnu.org>
6
7         * test_driver.pl (run_all_tests): Rewrite to be more clear.
8         * scripts/features/jobserver: Avoid using $ENV{HOME} as it doesn't
9         exist everywhere.
10         * scripts/features/default_names: End with 1;
11
12         * scripts/features/loadapi: Use new calling signatures.  Verify
13         the NOEXPAND flag works.  Test with all valid function name
14         characters.
15
16 2013-09-29  Paul Smith  <psmith@gnu.org>
17
18         * scripts/variables/SHELL: Solaris /bin/sh can't handle options in
19         multiple words; skip that test.
20         * scripts/targets/ONESHELL: Ditto.
21
22         * scripts/variables/GNUMAKEFLAGS: Verify that GNUMAKEFLAGS is
23         cleared and options are not duplicated.
24
25 2013-09-23  Paul Smith  <psmith@gnu.org>
26
27         * scripts/options/print-directory: Rename dash-w to
28         print-directory to avoid conflicts with dash-W on case-insensitive
29         filesystems.
30
31 2013-09-22  Paul Smith  <psmith@gnu.org>
32
33         * scripts/features/se_implicit: Verify that order-only tokens
34         inside second expansion are parsed correctly.
35         Test for Savannah bug #31155.
36
37         * run_make_tests.pl (set_more_defaults): If we can't find
38         gnumake.h based on the make program we might be running from a
39         remote build directory.  Parse the Makefile for the right path.
40
41         Fix some test issues on Solaris.
42
43         * scripts/features/archives: Determine what output ar gives when
44         adding and replacing objects and compare with that.
45         * scripts/features/escape: Solaris /bin/sh doesn't properly handle
46         backslashes inside single quotes, so don't rely on it.
47         * scripts/features/output-sync: false(1) gives different exit
48         codes on different systems; use "exit 1" instead.
49         * scripts/features/parallelism: Increase the timeout for slower systems.
50
51 2013-09-21  Paul Smith  <psmith@gnu.org>
52
53         * scripts/features/archives: Some versions of ar (MacOSX) generate
54         different output when creating archives.  Run it and verify the
55         real output.
56         * scripts/features/default_names: MacOSX is, like Windows,
57         case-preserving / case-insensitive.  Redo the test to avoid
58         checking for "UNIX".
59         * test_driver.pl (attach_default_output): Don't dup stdout into
60         stderr.  Reported by Denis Excoffier <bug-tar@Denis-Excoffier.org>
61
62         * scripts/features/se_explicit: Fix a test that behaves
63         differently with/without archive capability enabled.
64         * scripts/features/output-sync: Don't test output-sync if it's not
65         enabled.  We also skip it if parallelism is not enabled, although
66         strictly speaking some of the output-sync tests are valid even
67         without parallelism.
68         * scripts/features/jobserver: Move some tests that require the
69         jobserver from features/parallelism to a separate suite.  Only run
70         this if jobserver mode is enabled.
71
72         * scripts/features/output-sync: Test shell functions writing to
73         stderr in recipes: ensure it's captured via output-sync.  Test
74         output generated while reading makefiles and make sure it's
75         captured via output-sync.  Make sure that fatal errors dump the
76         output so it's not lost.
77
78         * scripts/options/dash-w: Add a test for -w flag.
79
80 2013-09-15  Paul Smith  <psmith@gnu.org>
81
82         * scripts/misc/fopen-fail: Check for failure on infinite recursion.
83         * run_make_tests.pl (run_make_test): Allow the answer string to be
84         undef, which means that we shouldn't compare it at all.  Only the
85         exit code matters in this case.
86         * test_driver.pl (compare_output): Ditto.
87         Test for Savannah bug #27374.
88
89         * scripts/features/parallelism: Test broken jobserver on recursion.
90         Test for Savannah bug #39934.
91
92         * scripts/options/eval: Verify --eval during restart.
93         Test for Savannah bug #39203.
94
95 2013-09-14  Paul Smith  <psmith@gnu.org>
96
97         * scripts/features/output-sync: Verify -Orecurse properly.
98
99 2013-09-12  Paul Smith  <psmith@gnu.org>
100
101         * scripts/features/output-sync: Modify for output sync behavior.
102         * scripts/variables/MAKE_RESTARTS: Ditto.
103         * scripts/variables/MAKEFLAGS: Remove mode for --trace.
104         * scripts/variables/GNUMAKEFLAGS: Ditto.
105
106 2013-07-22  Paul Smith  <psmith@gnu.org>
107
108         * scripts/features/rule_glob: Add tests for wildcards in rules.
109         Test for Savannah bug #39310.
110
111 2013-07-09  Paul Smith  <psmith@gnu.org>
112
113         * scripts/features/se_implicit: Add a test for SE rules depending
114         on other SE rules to be built.
115
116 2013-05-26  Paul Smith  <psmith@gnu.org>
117
118         * scripts/features/archives: Test for Savannah bug #38442.
119
120         * scripts/misc/bs-nl: Test for Savannah bug #39035.
121         Add a test for Savannah bug #38945.
122
123 2013-05-22  Paul Smith  <psmith@gnu.org>
124
125         * scripts/options/dash-n: Fix results after MAKEFLAGS fixes.
126         * scripts/variables/MAKEFLAGS: Ditto.
127         * scripts/variables/GNUMAKEFLAGS: Ditto.
128
129 2013-05-14  Paul Smith  <psmith@gnu.org>
130
131         * scripts/features/loadapi: Add plugin_is_GPL_compatible symbol.
132         * scripts/features/load: Ditto.
133
134 2013-05-13  Paul Smith  <psmith@gnu.org>
135
136         * scripts/features/output-sync (output_sync_set): Update for new
137         --trace behavior.
138
139 2013-05-05  Paul Smith  <psmith@gnu.org>
140
141         * scripts/features/output-sync (output_sync_set): Remove
142         extraneous enter/leave lines, which are no longer printed.
143         Add tests for syncing command line printing.
144         (output_sync_set): Rename options: "job"->"line"; "make"->"recurse"
145
146 2013-05-04  Paul Smith  <psmith@gnu.org>
147
148         * scripts/features/loadapi: Use the new alloc functions.
149
150         * scripts/features/output-sync (output_sync_set): New test for
151         ordered recursive output for -Ojob / -Otarget.
152
153 2013-05-03  Eli Zaretskii  <eliz@gnu.org>
154
155         * scripts/features/load: Fix signatures of testload_gmk_setup and
156         explicit_setup, to bring them in line with the documentation.
157
158 2013-04-28  Paul Smith  <psmith@gnu.org>
159
160         * scripts/features/output-sync (output_sync_set): Add tests for
161         the per-job syntax mode.
162         (output_sync_set): Test improved error message location.
163
164 2013-04-15  Paul Smith  <psmith@gnu.org>
165
166         * scripts/features/output-sync (output_sync_set): New arg syntax.
167
168 2013-04-14  Paul Smith  <psmith@gnu.org>
169
170         * scripts/features/output-sync: Rewrite to be more reliable.
171
172         * test_driver.pl (_run_command): Don't set SIGALRM until after we
173         start the child.  Print errors to the top-level output, which will
174         be stderr.
175         (attach_default_output): Use a list of file handles as the stack.
176         (detach_default_output): Ditto.
177
178         * scripts/features/output-sync: Add a test for output-sync.
179
180 2013-02-25  Paul Smith  <psmith@gnu.org>
181
182         * run_make_tests.pl (valid_option): Support the -srcdir flag.
183         (set_more_defaults): Set up $srcdir if it's not set yet.
184
185         * scripts/functions/guile: Verify gmk-eval doesn't expand twice.
186         * scripts/features/load: Rework to test just the load capability.
187         * scripts/features/loadapi: New set of tests for the load API.
188
189 2013-01-19  Paul Smith  <psmith@gnu.org>
190
191         * scripts/features/load: Test loaded files with and without "./"
192         prefix.  Add tests for automatically rebuilding loaded files if
193         they are out of date or non-existent.
194
195 2013-01-13  Paul Smith  <psmith@gnu.org>
196
197         * scripts/features/archives: Add a check targets that have parens,
198         but are not archives.  See Savannah bug #37878.
199
200         * scripts/options/dash-n: Verify -n is preserved after recursive /
201         re-exec.  See Savannah bug #38051.
202
203 2013-01-12  Paul Smith  <psmith@gnu.org>
204
205         * scripts/features/parallelism: Change rule so it doesn't depend
206         on invocation order, etc.
207
208 2012-10-29  Paul Smith  <psmith@gnu.org>
209
210         * scripts/features/load: New test suite for the "load" directive.
211
212 2012-09-09  Paul Smith  <psmith@gnu.org>
213
214         * scripts/functions/file: Get errors in the C locale, not the
215         current locale.  Fixes Savannah bug #35764.
216
217         * scripts/features/escape: Check that backslashes before
218         non-special characters are not removed.
219
220         * scripts/features/utf8: New test for UTF-8 support.
221         See Savannah bug #36529.
222
223         * scripts/targets/POSIX: Add tests for default macro values as
224         specified by IEEE Std 1003.1-2008.  See Savannah bug #37069.
225
226 2012-03-04  Paul Smith  <psmith@gnu.org>
227
228         * scripts/features/se_explicit: Test $(x:%=%) format in secondary
229         expansion prerequisite lists.  See Savannah bug #16545.
230
231         * scripts/features/escape: Test escaped ":" in prerequisite lists.
232         See Savannah bug #12126.
233
234         * scripts/variables/private: Test appending private variables in
235         pattern-specific target rules.  See Savannah bug #35468.
236
237 2012-03-03  Paul Smith  <psmith@gnu.org>
238
239         * scripts/variables/SHELL: Ensure .SHELLFLAGS works with options
240         separated by whitespace.
241
242         * scripts/targets/ONESHELL: Try .ONESHELL in combination with
243         whitespace-separated options in .SHELLFLAGS.  See Savannah bug #35397.
244
245         * scripts/functions/filter-out: Add filter tests and test escape
246         operations.  See Savannah bug #35410.
247
248         * guile.supp: Suppress valgrind errors from Guile
249         * run_make_tests.pl: Use the Guile suppression file.
250
251         * scripts/misc/bs-nl: Check for POSIX and non-POSIX
252         backslash/newline handling.  Addresses Savannah bug #16670.
253
254 2012-01-29  Paul Smith  <psmith@gnu.org>
255
256         * scripts/variables/flavors: Add tests for ::=
257         * scripts/variables/define: Ditto
258
259         * scripts/functions/file: Test the new $(file ...) function.
260
261 2012-01-12  Paul Smith  <psmith@gnu.org>
262
263         * scripts/functions/guile: New regression tests for Guile support.
264
265 2011-12-10  Paul Smith  <psmith@gnu.org>
266
267         * scripts/targets/SECONDARY: Add prereq statements to ensure rules
268         are printed in the right order for test #9
269
270 2011-11-14  Paul Smith  <psmith@gnu.org>
271
272         * scripts/features/double_colon: Check double-colon with escaped
273         filenames.  See Savannah bug #33399.
274
275 2011-09-18  Paul Smith  <psmith@gnu.org>
276
277         * scripts/features/parallelism: On re-exec make sure we preserve
278         the value of MAKEFLAGS when necessary.  See Savannah bug #33873.
279
280         * scripts/features/vpath3: Verify handling of -lfoo libraries
281         found via vpath vs. the standard directory search.
282         See Savannah bug #32511.
283
284 2011-09-12  Paul Smith  <psmith@gnu.org>
285
286         * scripts/functions/call: Verify that using export in a $(call ...)
287         context creates a global variable.  See Savannah bug #32498.
288
289 2011-09-02  Paul Smith  <psmith@gnu.org>
290
291         * scripts/options/dash-n: Verify that in "-n -t", the -n takes
292         priority.  Patch from Michael Witten <mfwitten@gmail.com>.
293
294 2011-08-29  Paul Smith  <psmith@gnu.org>
295
296         * scripts/features/varnesting: Test resetting of variables while
297         expanding them.  See Savannah patch #7534
298
299 2011-06-12  Paul Smith  <psmith@gnu.org>
300
301         * scripts/features/archives: Check archives with whitespace at the
302         beginning, end, and extra in the middle.
303         Another test for Savannah bug #30612.
304
305 2011-05-07  Paul Smith  <psmith@gnu.org>
306
307         * scripts/variables/private: Ensure we skip private variables when
308         appending.  Test for Savannah bug #32872.
309
310         * scripts/functions/wildcard: Verify wildcard used to test for
311         file existence/non-existence.
312
313 2011-05-02  Paul Smith  <psmith@gnu.org>
314
315         * scripts/functions/sort: Add a test for Savannah bug #33125.
316
317 2011-04-17  David A. Wheeler  <dwheeler@dwheeler.com>
318
319         * scripts/features/shell_assignment: Regression for "!=" feature
320
321 2010-11-06  Paul Smith  <psmith@gnu.org>
322
323         * scripts/features/targetvars: Fix known-good output for BS/NL changes.
324         * scripts/functions/call: Ditto.
325         * scripts/variables/special: Ditto.
326
327         * scripts/misc/bs-nl: New test suite for backslash/newline testing.
328
329 2010-08-29  Paul Smith  <psmith@gnu.org>
330
331         * scripts/features/errors: Add new error message to output text.
332         * scripts/variables/SHELL: Ditto.
333         * scripts/targets/POSIX: Ditto.
334         * scripts/options/dash-k: Ditto.
335         * scripts/features/vpathplus: Ditto.
336         * scripts/features/patternrules: Ditto.
337         * scripts/features/parallelism: Ditto.
338
339 2010-08-13  Paul Smith  <psmith@gnu.org>
340
341         * scripts/features/archives: New regression tests for archive
342         support.  Test for fix to Savannah bug #30612.
343
344         * run_make_tests.pl (set_more_defaults): Set a %FEATURES hash to
345         the features available in $(.FEATURES).
346
347 2010-08-10  Paul Smith  <psmith@gnu.org>
348
349         * scripts/features/reinvoke: Ensure command line variable settings
350         are preserved across make re-exec.  Tests Savannah bug #30723.
351
352 2010-07-28  Paul Smith  <psmith@gnu.org>
353
354         * scripts/targets/POSIX: Compatibility issues with Solaris (and
355         Tru64?); "false" returns different exit codes, and set -x shows
356         output with extra whitespace.  Run the commands by hand first to
357         find out what the real shell would do, then compare what make does.
358         * scripts/variables/SHELL: Ditto.
359
360 2010-07-12  Paul Smith  <psmith@gnu.org>
361
362         * test_driver.pl: Add a new $perl_name containing the path to Perl.
363         * run_make_tests.pl (run_make_test): Replace the special string
364         #PERL# in a makefile etc. with the path the Perl executable so
365         makefiles can use it.
366
367         * scripts/targets/ONESHELL: Add a new set of regression tests for
368         the .ONESHELL feature.
369
370 2010-07-06  Paul Smith  <psmith@gnu.org>
371
372         * scripts/variables/SHELL: Test the new .SHELLFLAGS variable.
373
374         * scripts/targets/POSIX: New file.  Test the .POSIX special target.
375         Verify that enabling .POSIX changes the shell flags to set -e.
376
377 2010-07-01  Paul Smith  <psmith@gnu.org>
378
379         * scripts/features/recursion: Add a space to separate command-line
380         args.  Fixes Savannah bug #29968.
381
382 2009-11-12  Boris Kolpackov  <boris@codesynthesis.com>
383
384         * scripts/features/vpath3: Test for the new library search
385         behavior.
386
387 2009-10-06  Boris Kolpackov  <boris@codesynthesis.com>
388
389         * scripts/features/se_explicit: Enable the test for now fixed
390         Savannah bug 25780.
391
392 2009-10-06  Boris Kolpackov  <boris@codesynthesis.com>
393
394         * scripts/variables/undefine: Tests for the new undefine feature.
395
396 2009-10-03  Paul Smith  <psmith@gnu.org>
397
398         * scripts/features/parallelism: Test for open Savannah bug #26846.
399
400         * scripts/variables/MAKE: Rewrite for new run_make_test() format.
401
402         * scripts/variables/MAKEFLAGS: Created.
403         Add test for Savannah bug #2216 (still open).
404
405         * scripts/features/include: Test for Savannah bug #102 (still open).
406
407 2009-09-30  Boris Kolpackov  <boris@codesynthesis.com>
408
409         * scripts/features/include: Add diagnostics issuing tests for
410         cases where targets have been updated and failed with the
411         dontcare flag. Savannah bugs #15110, #25493, #12686, #17740.
412
413 2009-09-28  Paul Smith  <psmith@gnu.org>
414
415         * scripts/functions/shell: Add regression test for Savannah bug
416         #20513 (still open).
417
418         * scripts/features/se_explicit: Add regression tests for Savannah
419         bug #25780 (still open).
420
421         * run_make_tests.pl (valid_option): Add a new flag, -all([-_]?tests)?
422         that runs tests we know will fail.  This allows us to add
423         regression tests to the test suite for bugs that haven't been
424         fixed yet.
425
426 2009-09-28  Boris Kolpackov  <boris@codesynthesis.com>
427
428         * scripts/features/patspecific_vars: Add a test for the shortest
429         stem first order.
430
431         * scripts/features/patternrules: Add a test for the shortest stem
432         first order.
433
434 2009-09-24  Paul Smith  <psmith@gnu.org>
435
436         * scripts/features/se_implicit: Add a test for order-only
437         secondary expansion prerequisites.
438
439 2009-09-23  Paul Smith  <psmith@gnu.org>
440
441         * scripts/features/patternrules: Test that we can remove pattern
442         rules, both single and multiple prerequisites.  Savannah bug #18622.
443
444         * scripts/features/echoing: Rework for run_make_test().
445
446 2009-06-14  Paul Smith  <psmith@gnu.org>
447
448         * scripts/features/vpath: Verify we don't get bogus circular
449         dependency warnings if we choose a different file via vpath during
450         update.  Savannah bug #13529.
451
452 2009-06-13  Paul Smith  <psmith@gnu.org>
453
454         * scripts/variables/MAKEFILES: Verify that MAKEFILES included
455         files (and files included by them) don't set the default goal.
456         Savannah bug #13401.
457
458         * scripts/functions/wildcard: Test that wildcards with
459         non-existent glob matchers return empty.
460
461 2009-06-09  Paul Smith  <psmith@gnu.org>
462
463         * scripts/options/dash-B: Test the $? works correctly with -B.
464         Savannah bug #17825.
465
466         * scripts/features/patternrules: Test that dependencies of
467         "also_make" targets are created properly.  Savannah bug #19108.
468
469         * test_driver.pl (compare_output): Create a "run" file for failed
470         tests containing the command that was run.
471         (get_runfile): New function.
472
473         * run_make_tests.pl (valid_option): Enhanced support for valgrind:
474         allow memcheck and massif tools.
475
476         * scripts/features/patternrules: Have to comment out a line in the
477         first test due to backing out a change that broke the implicit
478         rule search algorithm.  Savannah bug #17752.
479         * scripts/misc/general4: Remove a test that is redundant with
480         patternrules.
481
482         * scripts/features/parallelism: Add a test for re-exec with
483         jobserver master override.  Savannah bug #18124.
484
485 2009-06-08  Paul Smith  <psmith@gnu.org>
486
487         * scripts/features/targetvars: Add a test for continued target
488         vars after a semicolon.  Savannah bug #17521.
489
490 2009-06-07  Paul Smith  <psmith@gnu.org>
491
492         * scripts/features/se_explicit: Make sure we catch defining
493         prereqs during snap_deps().  Savannah bug #24622.
494
495         * scripts/variables/automatic: Check prereq ordering when the
496         target with the recipe has no prereqs.  Savannah bug #21198.
497
498         * scripts/variables/LIBPATTERNS: Add a new set of test for
499         $(.LIBPATTERNS) (previously untested!)
500
501 2009-06-04  Paul Smith  <psmith@gnu.org>
502
503         * scripts/variables/SHELL: The export target-specific SHELL test
504         has an incorrect known-good-value.
505
506         * scripts/misc/general4: Check for whitespace (ffeed, vtab, etc.)
507
508         * scripts/features/se_explicit: Add tests for Savannah bug #24588.
509
510 2009-05-31  Paul Smith  <psmith@gnu.org>
511
512         * scripts/variables/DEFAULT_GOAL: Add tests for Savannah bug #25697.
513
514         * scripts/features/targetvars: Add tests of overrides for Savannah
515         bug #26207.
516         * scripts/features/patspecific_vars: Ditto.
517
518         * scripts/features/patternrules: Add a test for Savannah bug #26593.
519
520 2009-05-30  Paul Smith  <psmith@gnu.org>
521
522         * scripts/variables/flavors: Update with new variable flavor tests.
523         * scripts/variables/define: Create a new set of tests for
524         define/endef and move those aspects of the flavors suite here.
525
526 2009-05-25  Paul Smith  <psmith@gnu.org>
527
528         * scripts/features/targetvars: Ditto.
529
530         * scripts/features/export: Test new variable parsing abilities.
531
532 2009-02-23  Ramon Garcia  <ramon.garcia.f@gmail.com>
533
534         * scripts/variables/private: Create a new suite of tests for 'private'.
535
536 2007-11-04  Paul Smith  <psmith@gnu.org>
537
538         * scripts/functions/eval: Update error message for command -> recipe.
539
540         * test_driver.pl (compare_output): Allow the answer to be a regex,
541         if surrounded by '/'.
542         * scripts/misc/close_stdout: Use a regex for the answer, since
543         sometimes the error will have a description and sometimes it won't.
544
545 2007-09-10  Paul Smith  <psmith@gnu.org>
546
547         * scripts/variables/special: Add tests for .RECIPEPREFIX variable.
548
549 2007-08-15  Paul Smith  <psmith@gnu.org>
550
551         These test cases were contributed by
552         Icarus Sparry <savannah@icarus.freeuk.com> and J. David Bryan for
553         Savannah bugs #3330 and #15919.
554
555         * scripts/targets/SECONDARY: Add tests for Savannah bugs 3330 and
556         15919.
557
558         * scripts/features/parallelism: Add tests for wrong answer/hang
559         combining INTERMEDIATE, order-only prereqs, and parallelism.
560         See Savannah bugs 3330 and 15919.
561
562 2007-07-13  Paul Smith  <psmith@gnu.org>
563
564         Install a timeout so tests can never loop infinitely.
565         Original idea and patch for a single-test version provided by
566         Icarus Sparry <savannah@icarus.freeuk.com>
567
568         * test_driver.pl (_run_command): New function: this is called by
569         other functions to actually run a command.  Before we run it,
570         install a SIGALRM handler and set up a timer to go off in the
571         future (default is 5s; this can be overridden by individual tests).
572         (run_command): Call it.
573         (run_command_with_output): Call it.
574
575         * run_make_tests.pl (run_make_with_options): Override the default
576         timeout if the caller requests it.
577         (run_make_test): Pass any timeout override to run_make_with_options.
578
579         * scripts/features/parallelism: Increase the timeout for long tests.
580         * scripts/options/dash-l: Ditto.
581
582 2006-10-01  Paul Smith  <psmith@paulandlesley.org>
583
584         * run_make_tests.pl (set_more_defaults): Remove setting of LANG in
585         ENV here.  This doesn't always work.
586         * test_driver.pl (toplevel): Set LC_ALL to 'C' in the make
587         environment.  Fixes Savannah bug #16698.
588
589 2006-09-30  Paul Smith  <psmith@paulandlesley.org>
590
591         * scripts/variables/automatic: Add back the test for bug #8154.
592
593 2006-04-01  Paul D. Smith  <psmith@gnu.org>
594
595         * scripts/functions/realpath: Don't run tests with multiple
596         initial slashes on Windows: those paths mean something different.
597
598 2006-03-19  Paul D. Smith  <psmith@gnu.org>
599
600         * scripts/features/parallelism: Test that the jobserver is
601         properly managed when we have to re-exec the master instance of
602         make.
603
604 2006-03-17  Boris Kolpackov  <boris@kolpackov.net>
605
606         * scripts/features/statipattrules: Add tests for bug #16053.
607
608 2006-03-09  Paul Smith  <psmith@gnu.org>
609
610         * scripts/features/escape: Use "pre:" not "p:" to avoid conflicts
611         with DOS drive letters.  Fixes Savannah bug #15947.
612
613         * test_driver.pl (run_each_test): Set the status properly even
614         when a test fails to execute.  Fixes Savannah bug #15942.
615
616         * scripts/functions/foreach: Use a different environment variable
617         other than PATH to avoid differences with Windows platforms.
618         Fixes Savannah bug #15938.
619
620 2006-03-05  Paul D. Smith  <psmith@gnu.org>
621
622         * run_make_tests.pl (set_more_defaults): Add CYGWIN_NT as a port
623         type W32.  Fixed Savannah bug #15937.
624
625         * scripts/features/default_names: Don't call error() when the test
626         fails.  Fixes Savannah bug #15941.
627
628 2006-02-17  Paul D. Smith  <psmith@gnu.org>
629
630         * scripts/features/targetvars: Test a complex construction which
631         guarantees that we have to merge variable lists of different
632         sizes.  Tests for Savannah bug #15757.
633
634 2006-02-15  Paul D. Smith  <psmith@gnu.org>
635
636         * scripts/functions/error: Make sure filename/lineno information
637         is related to where the error is expanded, not where it's set.
638         * scripts/functions/warning: Ditto.
639         * scripts/functions/foreach: Check for different error conditions.
640         * scripts/functions/word: Ditto.
641         * scripts/variables/negative: Test some variable reference failure
642         conditions.
643         * scripts/options/warn-undefined-variables: Test the
644         --warn-undefined-variables flag.
645
646 2006-02-09  Paul D. Smith  <psmith@gnu.org>
647
648         * run_make_tests.pl (set_more_defaults): Update valgrind support
649         for newer versions.
650         * test_driver.pl (toplevel): Skip all hidden files/directories (ones
651         beginning with ".").
652
653         * scripts/functions/andor: Tests for $(and ...) and $(or ...)
654         functions.
655
656 2006-02-08  Boris Kolpackov  <boris@kolpackov.net>
657
658         * scripts/features/parallelism: Add a test for bug #15641.
659
660 2006-02-06  Paul D. Smith  <psmith@gnu.org>
661
662         * scripts/options/dash-W: Add a test for bug #15341.
663
664 2006-01-03  Paul D. Smith  <psmith@gnu.org>
665
666         * scripts/variables/automatic: Add a test for bug #8154.
667
668         * README: Update to reflect the current state of the test suite.
669
670 2005-12-12  Paul D. Smith  <psmith@gnu.org>
671
672         * scripts/features/parallelism, scripts/functions/wildcard,
673         scripts/targets/FORCE, scripts/targets/PHONY,
674         scripts/targets/SILENT: Use the default setting for
675         $delete_command.  Fixes bug #15085.
676
677         * run_make_tests.pl (get_this_pwd) [VMS]: Use -no_ask with delete_file.
678
679 2005-12-11  Paul D. Smith  <psmith@gnu.org>
680
681         * scripts/misc/general4: Test implicit rules with '$' in the
682         prereq list & prereq patterns.
683         * scripts/features/se_implicit: Add in .SECONDEXPANSION settings.
684
685 2005-12-09  Boris Kolpackov  <boris@kolpackov.net>
686
687         * scripts/features/patternrules: Add a test for bug #13022.
688
689 2005-12-07  Boris Kolpackov  <boris@kolpackov.net>
690
691         * scripts/features/double_colon: Add a test for bug #14334.
692
693 2005-11-17  Boris Kolpackov  <boris@kolpackov.net>
694
695         * scripts/functions/flavor: Add a test for the flavor function.
696
697 2005-11-14  Boris Kolpackov  <boris@kolpackov.net>
698
699         * scripts/variables/INCLUDE_DIRS: Add a test for the .INCLUDE_DIRS
700         special variable.
701
702 2005-10-24  Paul D. Smith  <psmith@gnu.org>
703
704         * scripts/misc/general4: Test '$$' in prerequisites list.
705         * scripts/features/statipattrules: Rewrite to use run_make_test().
706         Add various static pattern info.
707         * scripts/features/se_statpat: Enable .SECONDEXPANSION target.
708         * scripts/features/se_explicit: Add tests for handling '$$' in
709         prerequisite lists with and without setting .SECONDEXPANSION.
710         * scripts/features/order_only: Convert to run_make_test().
711         * run_make_tests.pl (set_more_defaults): If we can't get the value
712         of $(MAKE) from make, then fatal immediately.
713
714 2005-08-31  Paul D. Smith  <psmith@gnu.org>
715
716         * run_make_tests.pl (get_this_pwd): Require the POSIX module (in
717         an eval to trap errors) and if it exists, use POSIX::getcwd to
718         find the working directory.  If it doesn't exist, go back to the
719         previous methods.  This tries to be more accurate on Windows
720         systems.
721
722 2005-08-29  Paul D. Smith  <psmith@gnu.org>
723
724         * scripts/functions/abspath: Add some text to the error messages
725         to get a better idea of what's wrong.  Make warnings instead of
726         errors.
727
728         * scripts/features/patspecific_vars: Don't use "test", which is
729         UNIX specific.  Print the values and let the test script match
730         them.
731
732 2005-08-25  Paul Smith  <psmith@gnu.org>
733
734         * scripts/variables/SHELL: Use a /./ prefix instead of //: the
735         former works better with non-UNIX environments.  Fixes Savannah
736         bug #14129.
737
738 2005-08-13  Boris Kolpackov  <boris@kolpackov.net>
739
740         * scripts/functions/wildcard: Wrap calls to $(wildcard) with
741         $(sort) so that the resulting order is no longer filesystem-
742         dependent.
743
744 2005-08-10  Boris Kolpackov  <boris@kolpackov.net>
745
746         * scripts/features/statipattrules: Add a test for Savannah bug #13881.
747
748 2005-08-07  Paul D. Smith  <psmith@gnu.org>
749
750         * scripts/features/parallelism: Add a test for a bug reported by
751         Michael Matz (matz@suse.de) in which make exits without waiting
752         for all its children in some situations during parallel builds.
753
754 2005-07-08  Paul D. Smith  <psmith@gnu.org>
755
756         * test_driver.pl: Reset the environment to a clean value every
757         time before we invoke make.  I'm suspicious that the environment
758         isn't handled the same way in Windows as it is in UNIX, and some
759         variables are leaking out beyond the tests they are intended for.
760         Create an %extraENV hash tests can set to add more env. vars.
761         * tests/scripts/features/export: Change to use %extraENV.
762         * tests/scripts/functions/eval: Ditto.
763         * tests/scripts/functions/origin: Ditto.
764         * tests/scripts/options/dash-e: Ditto.
765         * tests/scripts/variables/SHELL: Ditto.
766
767 2005-06-27  Paul D. Smith  <psmith@gnu.org>
768
769         * scripts/options/dash-W: Use 'echo >>' instead of touch to update
770         files.
771         * scripts/features/reinvoke: Rewrite to be safer on systems with
772         subsecond timestamps.
773         * scripts/features/patternrules: False exits with different error
774         codes on different systems (for example, Linux => 1, Solaris => 255).
775
776         * scripts/options/dash-W: Set the timestamp to foo.x in the future,
777         to be sure it will be considered updated when it's remade.
778
779 2005-06-26  Paul D. Smith  <psmith@gnu.org>
780
781         * scripts/functions/shell: New test suite for the shell function.
782
783 2005-06-25  Paul D. Smith  <psmith@gnu.org>
784
785         * scripts/features/include: Test include/-include/sinclude with no
786         arguments.  Tests fix for Savannah bug #1761.
787
788         * scripts/misc/general3: Implement comprehensive testing of
789         backslash-newline behavior in command scripts: various types of
790         quoting, fast path / slow path, etc.
791         Tests fix for Savannah bug #1332.
792
793         * scripts/options/symlinks: Test symlinks to non-existent files.
794         Tests fix for Savannah bug #13280.
795
796         * scripts/misc/general3: Test semicolons in variable references.
797         Tests fix for Savannah bug #1454.
798
799         * scripts/variables/MAKE_RESTARTS: New file: test the
800         MAKE_RESTARTS variable.
801         * scripts/options/dash-B: Test re-exec doesn't loop infinitely.
802         Tests fix for Savannah bug #7566.
803         * scripts/options/dash-W: New file: test the -W flag, including
804         re-exec infinite looping.
805
806 2005-06-12  Paul D. Smith  <psmith@gnu.org>
807
808         * scripts/misc/close_stdout: Add a test for Savannah bug #1328.
809         This test only works on systems that have /dev/full (e.g., Linux).
810
811 2005-06-09  Paul D. Smith  <psmith@gnu.org>
812
813         * scripts/functions/foreach: Add a test for Savannah bug #11913.
814
815 2005-05-31  Boris Kolpackov  <boris@kolpackov.net>
816
817         * scripts/features/include: Add a test for Savannah bug #13216.
818         * scripts/features/patternrules: Add a test for Savannah bug #13218.
819
820 2005-05-13  Paul D. Smith  <psmith@gnu.org>
821
822         * scripts/features/conditionals: Add tests for the new if... else
823         if... endif syntax.
824
825 2005-05-03  Paul D. Smith  <psmith@gnu.org>
826
827         * scripts/variables/DEFAULT_GOAL: Rename DEFAULT_TARGET to
828         DEFAULT_GOAL.
829
830 2005-05-02  Paul D. Smith  <psmith@gnu.org>
831
832         * scripts/features/parallelism: Add a test for exporting recursive
833         variables containing $(shell) calls.  Rewrite this script to use
834         run_make_test() everywhere.
835
836 2005-04-07  Paul D. Smith  <psmith@gnu.org>
837
838         * scripts/targets/SECONDARY: Add a test for Savannah bug #12331.
839
840 2005-03-15  Boris Kolpackov  <boris@kolpackov.net>
841
842         * scripts/variables/automatic: Add a test for Savannah bug #12320.
843
844 2005-03-10  Boris Kolpackov  <boris@kolpackov.net>
845
846         * scripts/features/patternrules: Add a test for Savannah bug #12267.
847
848 2005-03-09  Boris Kolpackov  <boris@kolpackov.net>
849
850         * scripts/variables/DEFAULT_TARGET: Add a test for Savannah
851         bug #12266.
852
853 2005-03-04  Boris Kolpackov  <boris@kolpackov.net>
854
855         * scripts/features/patternrules: Add a test for Savannah bug #12202.
856
857 2005-03-03  Boris Kolpackov  <boris@kolpackov.net>
858
859         * scripts/features/se_implicit: Add a test for stem
860         termination bug. Add a test for stem triple-expansion bug.
861
862         * scripts/features/se_statpat: Add a test for stem
863         triple-expansion bug.
864
865         * scripts/features/statipattrules: Change test #4 to reflect
866         new way empty prerequisite list is handled.
867
868
869 2005-03-01  Boris Kolpackov  <boris@kolpackov.net>
870
871         * scripts/features/statipattrules: Add a test for
872         Savannah bug #12180.
873
874 2005-02-28  Paul D. Smith  <psmith@gnu.org>
875
876         * scripts/options/dash-q: Add a test for Savannah bug # 7144.
877
878         * scripts/options/symlinks: New file to test checking of symlink
879         timestamps.  Can't use filename dash-L because it conflicts with
880         dash-l on case-insensitive filesystems.
881
882         * scripts/variables/MAKEFILE_LIST, scripts/variables/MFILE_LIST:
883         Rename MAKEFILE_LIST test to MFILE_LIST, for systems that need 8.3
884         unique filenames.
885
886 2005-02-28  Boris Kolpackov  <boris@kolpackov.net>
887
888         * scripts/variables/DEFAULT_TARGET: Test the .DEFAULT_TARGET
889         special variable.
890
891 2005-02-27  Boris Kolpackov  <boris@kolpackov.net>
892
893         * scripts/features/se_explicit: Test the second expansion in
894         explicit rules.
895         * scripts/features/se_implicit: Test the second expansion in
896         implicit rules.
897         * scripts/features/se_statpat: Test the second expansion in
898         static pattern rules.
899         * scripts/variables/automatic: Fix to work with the second
900         expansion.
901
902         * scripts/misc/general4: Add a test for bug #12091.
903
904 2005-02-27  Paul D. Smith  <psmith@gnu.org>
905
906         * scripts/functions/eval: Check that eval of targets within
907         command scripts fails.  See Savannah bug # 12124.
908
909 2005-02-26  Paul D. Smith  <psmith@gnu.org>
910
911         * test_driver.pl (compare_output): If a basic comparison of the
912         log and answer doesn't match, try harder: change all backslashes
913         to slashes and all CRLF to LF.  This helps on DOS/Windows systems.
914
915 2005-02-09  Paul D. Smith  <psmith@gnu.org>
916
917         * scripts/features/recursion: Test command line variable settings:
918         only one instance of a given variable should be provided.
919
920 2004-11-30  Boris Kolpackov  <boris@kolpackov.net>
921
922         * tests/scripts/functions/abspath: New file: test `abspath'
923         built-in function.
924
925         * tests/scripts/functions/realpath: New file: test `realpath'
926         built-in function.
927
928 2004-11-28  Paul D. Smith  <psmith@gnu.org>
929
930         * scripts/options/dash-C [WINDOWS32]: Add a test for bug #10252;
931         this doesn't really test anything useful in UNIX but...
932
933         * scripts/variables/SHELL: New file: test proper handling of SHELL
934         according to POSIX rules.  Fixes bug #1276.
935
936 2004-10-21  Boris Kolpackov  <boris@kolpackov.net>
937
938         * scripts/functions/word: Test $(firstword ) and $(lastword ).
939
940 2004-10-05  Boris Kolpackov  <boris@kolpackov.net>
941
942         * scripts/features/patspecific_vars: Test simple/recursive
943         variable expansion.
944
945 2004-09-28  Boris Kolpackov  <boris@kolpackov.net>
946
947         * scripts/features/include: Test dontcare flag inheritance
948         when rebuilding makefiles.
949
950 2004-09-27  Boris Kolpackov  <boris@kolpackov.net>
951
952         * scripts/features/patspecific_vars: Test exported variables.
953
954 2004-09-22  Paul D. Smith  <psmith@gnu.org>
955
956         * run_make_tests.pl (run_make_test): Don't add newlines to the
957         makestring or answer if they are completely empty.
958
959         * scripts/features/patternrules: Rename from implicit_prereq_eval.
960
961         * scripts/test_template: Rework the template.
962
963 2004-09-21  Boris Kolpackov  <boris@kolpackov.net>
964
965         * run_make_tests.pl: Change `#!/usr/local/bin/perl' to be
966         `#!/usr/bin/env perl'.
967
968         * scripts/features/implicit_prereq_eval: Test implicit rule
969         prerequisite evaluation code.
970
971 2004-09-21  Paul D. Smith  <psmith@gnu.org>
972
973         * run_make_tests.pl (run_make_test): Enhance to allow the make
974         string to be undef: in that case it reuses the previous make
975         string.  Allows multiple tests on the same makefile.
976
977         * scripts/variables/flavors: Add some tests for prefix characters
978         interacting with define/endef variables.
979
980 2004-09-20  Paul D. Smith  <psmith@gnu.org>
981
982         * scripts/functions/substitution: Rewrite to use run_make_test()
983         interface, and add test for substitution failures reported by
984         Markus Mauhart <qwe123@chello.at>.
985
986 2004-03-22  Paul D. Smith  <psmith@gnu.org>
987
988         * test_driver.pl (run_each_test, toplevel, compare_output): Change
989         to track both the testing categories _AND_ the number of
990         individual tests, and report both sets of numbers.
991
992 2004-02-21  Paul D. Smith  <psmith@gnu.org>
993
994         * scripts/functions/origin: Set our own environment variable
995         rather than relying on $HOME.
996
997 2004-01-21  Paul D. Smith  <psmith@gnu.org>
998
999         * scripts/features/conditionals: Test arguments to ifn?def which
1000         contain whitespace (such as a function that is evaluated).  Bug
1001         #7257.
1002
1003 2004-01-07  Paul D. Smith  <psmith@gnu.org>
1004
1005         * scripts/features/order_only: Test order-only prerequisites in
1006         pattern rules (patch #2349).
1007
1008 2003-11-02  Paul D. Smith  <psmith@gnu.org>
1009
1010         * scripts/functions/if: Test if on conditionals with trailing
1011         whitespace--bug #5798.
1012
1013         * scripts/functions/eval: Test eval in a non-file context--bug #6195.
1014
1015 2003-04-19  Paul D. Smith  <psmith@gnu.org>
1016
1017         * scripts/features/patspecific_vars: Test multiple patterns
1018         matching the same target--Bug #1405.
1019
1020 2003-04-09  Paul D. Smith  <psmith@gnu.org>
1021
1022         * run_make_tests.pl (set_more_defaults): A new $port_type of
1023         'OS/2' for (surprise!) OS/2.  Also choose a wait time of 2 seconds
1024         for OS/2.
1025
1026 2003-03-28  Paul D. Smith  <psmith@gnu.org>
1027
1028         * scripts/targets/SECONDARY: Test the "global" .SECONDARY (with
1029         not prerequisites)--Bug #2515.
1030
1031 2003-01-30  Paul D. Smith  <psmith@gnu.org>
1032
1033         * scripts/features/targetvars: Test very long target-specific
1034         variable definition lines (longer than the default make buffer
1035         length).  Tests patch # 1022.
1036
1037         * scripts/functions/eval: Test very recursive $(eval ...) calls
1038         with simple variable expansion (bug #2238).
1039
1040         * scripts/functions/word: Test error handling for word and
1041         wordlist functions (bug #2407).
1042
1043 2003-01-22  Paul D. Smith  <psmith@gnu.org>
1044
1045         * scripts/functions/call: Test recursive argument masking (bug
1046         #1744).
1047
1048 2002-10-25  Paul D. Smith  <psmith@gnu.org>
1049
1050         * scripts/functions/eval: Test using $(eval ...) inside
1051         conditionals (Bug #1516).
1052
1053 2002-10-14  Paul D. Smith  <psmith@gnu.org>
1054
1055         * scripts/options/dash-t: Add a test for handling -t on targets
1056         with no commands (Bug #1418).
1057
1058 2002-10-13  Paul D. Smith  <psmith@gnu.org>
1059
1060         * scripts/features/targetvars: Add a test for exporting
1061         target-specific vars (Bug #1391).
1062
1063 2002-10-05  Paul D. Smith  <psmith@gnu.org>
1064
1065         * scripts/variables/automatic: Add tests for $$(@), $${@}, $${@D},
1066         and $${@F}.
1067
1068 2002-09-23  Paul D. Smith  <psmith@gnu.org>
1069
1070         * scripts/features/escape: Test handling of escaped comment
1071         characters in targets and prerequisites.
1072
1073 2002-09-18  Paul D. Smith  <psmith@gnu.org>
1074
1075         * scripts/features/export: Test export/unexport of multiple
1076         variables in a single command.
1077
1078 2002-09-17  Paul D. Smith  <psmith@gnu.org>
1079
1080         * scripts/features/targetvars: Tests for Bug #940: test
1081         target-specific and pattern-specific variables in conjunction with
1082         double-colon targets.
1083
1084 2002-09-10  Paul D. Smith  <psmith@gnu.org>
1085
1086         * test_driver.pl (compare_output): Match the new format for time
1087         skew error messages.
1088
1089         * scripts/features/export: Created.  Add tests for export/unexport
1090         capabilities, including exporting/unexporting expanded variables.
1091
1092         * scripts/features/conditionals: Add a test for expanded variables
1093         in ifdef conditionals.
1094
1095 2002-09-04  Paul D. Smith  <psmith@gnu.org>
1096
1097         * scripts/features/reinvoke: Change touch/sleep combos to utouch
1098         invocations.
1099         * scripts/features/vpathgpath: Ditto.
1100         * scripts/features/vpathplus: Ditto.
1101         * scripts/options/dash-n: Ditto.
1102         * scripts/targets/INTERMEDIATE: Ditto.
1103         * scripts/targets/SECONDARY: Ditto.
1104
1105         * scripts/options/dash-t: Added a test for the -t bug fixed by
1106         Henning Makholm.  This test was also contributed by Henning.
1107
1108         * scripts/misc/general4: Add a test suite for obscure algorithmic
1109         features of make.  First test: make sure creation subdirectories
1110         as prerequisites of targets works properly.
1111
1112         * scripts/misc/version: Remove this bogus test.
1113
1114 2002-08-07  Paul D. Smith  <psmith@gnu.org>
1115
1116         * scripts/misc/general3: Add a test for makefiles that don't end
1117         in newlines.
1118
1119         * scripts/variables/special: Create tests for the special
1120         variables (.VARIABLES and .TARGETS).  Comment out .TARGETS test
1121         for now as it's not yet supported.
1122
1123 2002-08-01  Paul D. Smith  <psmith@gnu.org>
1124
1125         * scripts/options/dash-B: Add a test for the new -B option.
1126
1127 2002-07-11  Paul D. Smith  <psmith@gnu.org>
1128
1129         * run_make_tests.pl (valid_option): Add support for Valgrind.  Use
1130         -valgrind option to the test suite.
1131         (set_more_defaults): Set up the file descriptor to capture
1132         Valgrind output.  We have to unset its close-on-exec flag; we
1133         hardcode the value for F_SETFD (2) rather than load it; hopefully
1134         this will help us avoid breaking the Windows/DOS test suite.
1135
1136 2002-07-10  Paul D. Smith  <psmith@gnu.org>
1137
1138         * scripts/variables/automatic: Add some tests for $$@, $$(@D), and
1139         $$(@F).
1140
1141         * test_driver.pl (utouch): Create a new function that creates a
1142         file with a specific timestamp offset.  Use of this function will
1143         let us avoid lots of annoying sleep() invocations in the tests
1144         just to get proper timestamping, which will make the tests run a
1145         lot faster.  So far it's only used in the automatic test suite.
1146
1147 2002-07-09  Paul D. Smith  <psmith@gnu.org>
1148
1149         * scripts/variables/automatic: Create a test for automatic variables.
1150
1151 2002-07-08  Paul D. Smith  <psmith@gnu.org>
1152
1153         * scripts/features/order_only: Test new order-only prerequisites.
1154
1155 2002-07-07  Paul D. Smith  <psmith@gnu.org>
1156
1157         * scripts/functions/eval: Test new function.
1158         * scripts/functions/value: Test new function.
1159         * scripts/variables/MAKEFILE_LIST: Test new variable.
1160
1161 2002-04-28  Paul D. Smith  <psmith@gnu.org>
1162
1163         * scripts/functions/call: New test: transitive closure
1164         implementation using $(call ...) to test variable recursion.
1165
1166 2002-04-21  Paul D. Smith  <psmith@gnu.org>
1167
1168         * test_driver.pl (compare_dir_tree): Ignore CVS and RCS
1169         directories in the script directories.
1170
1171 2001-05-02  Paul D. Smith  <psmith@gnu.org>
1172
1173         * scripts/variables/flavors: Test define/endef scripts where only
1174         one of the command lines is quiet.
1175
1176 2000-06-22  Paul D. Smith  <psmith@gnu.org>
1177
1178         * scripts/options/dash-q: New file; test the -q option.  Includes
1179         a test for PR/1780.
1180
1181 2000-06-21  Paul D. Smith  <psmith@gnu.org>
1182
1183         * scripts/features/targetvars: Added a test for PR/1709: allowing
1184         semicolons in target-specific variable values.
1185
1186 2000-06-19  Paul D. Smith  <psmith@gnu.org>
1187
1188         * scripts/functions/addsuffix: Test for an empty final argument.
1189         Actually this bug might have happened for any function, but this
1190         one was handy.
1191
1192 2000-06-17  Eli Zaretskii  <eliz@is.elta.co.il>
1193
1194         * scripts/options/general: If parallel jobs are not supported,
1195         expect a warning message from Make.
1196
1197 2000-06-15  Eli Zaretskii  <eliz@is.elta.co.il>
1198
1199         * scripts/options/general: Don't try -jN with N != 1 if parallel
1200         jobs are not supported.
1201
1202 2000-05-24  Paul D. Smith  <psmith@gnu.org>
1203
1204         * scripts/options/general: Test general option processing (PR/1716).
1205
1206 2000-04-11  Paul D. Smith  <psmith@gnu.org>
1207
1208         * scripts/functions/strip: Test empty value to strip (PR/1689).
1209
1210 2000-04-08  Eli Zaretskii  <eliz@is.elta.co.il>
1211
1212         * scripts/features/reinvoke: Sleep before updating the target
1213         files in the first test, to ensure its time stamp really gets
1214         newer; otherwise Make might re-exec more than once.
1215
1216 2000-04-07  Eli Zaretskii  <eliz@is.elta.co.il>
1217
1218         * scripts/features/double_colon: Don't run the parallel tests if
1219         parallel jobs aren't supported.
1220
1221 2000-04-04  Paul D. Smith  <psmith@gnu.org>
1222
1223         * scripts/functions/word: wordlist doesn't swap arguments anymore.
1224
1225 2000-03-27  Paul D. Smith  <psmith@gnu.org>
1226
1227         * scripts/features/statipattrules: Test that static pattern rules
1228         whose prerequisite patterns resolve to empty strings throw an
1229         error (instead of dumping core).  Fixes PR/1670.
1230
1231         * scripts/features/reinvoke: Make more robust by touching "b"
1232         first, to ensure it's not newer than "a".
1233         Reported by Marco Franzen <Marco.Franzen@Thyron.com>.
1234         * scripts/options/dash-n: Ditto.
1235
1236         * scripts/functions/call: Whoops.  The fix to PR/1527 caused
1237         recursive invocations of $(call ...) to break.  I can't come up
1238         with any way to get both working at the same time, so I backed out
1239         the fix to 1527 and added a test case for recursive calls.  This
1240         also tests the fix for PR/1610.
1241
1242         * scripts/features/double_colon: Test that circular dependencies
1243         in double-colon rule sets are detected correctly (PR/1671).
1244
1245 2000-03-26  Paul D. Smith  <psmith@gnu.org>
1246
1247         * scripts/targets/INTERMEDIATE: Test that make doesn't remove
1248         .INTERMEDIATE files when given on the command line (PR/1669).
1249
1250 2000-03-08  Paul D. Smith  <psmith@gnu.org>
1251
1252         * scripts/options/dash-k: Add a test for error detection by
1253         multiple targets depending on the same prerequisite with -k.
1254         For PR/1634.
1255
1256 2000-02-07  Paul D. Smith  <psmith@gnu.org>
1257
1258         * scripts/features/escape: Add a test for backslash-escaped spaces
1259         in a target name (PR/1586).
1260
1261 2000-02-04  Paul D. Smith  <psmith@gnu.org>
1262
1263         * scripts/features/patspecific_vars: Add a test for pattern-specific
1264         target variables inherited from the parent target (PR/1407).
1265
1266 2000-02-02  Paul D. Smith  <psmith@gnu.org>
1267
1268         * run_make_tests.pl (set_more_defaults): Hard-code the LANG to C
1269         to make sure sorting order, etc. is predictable.
1270         Reported by Andreas Jaeger <aj@suse.de>.
1271
1272         * run_make_tests.pl (set_more_defaults): Set the $wtime variable
1273         depending on the OS.  Eli Zaretskii <eliz@is.elta.co.il> reports
1274         this seems to need to be *4* on DOS/Windows, not just 2.  Keep it
1275         1 for other systems.
1276         * scripts/features/vpathplus (touchfiles): Use the $wtime value
1277         instead of hardcoding 2.
1278         * scripts/targets/SECONDARY: Ditto.
1279         * scripts/targets/INTERMEDIATE: Ditto.
1280
1281 2000-01-27  Paul D. Smith  <psmith@gnu.org>
1282
1283         * test_driver.pl (toplevel): Don't try to run test scripts which
1284         are really directories.
1285
1286 2000-01-23  Paul D. Smith  <psmith@gnu.org>
1287
1288         * scripts/features/include: Remove a check; the fix caused more
1289         problems than the error, so I removed it and removed the test for
1290         it.
1291
1292 2000-01-11  Paul D. Smith  <psmith@gnu.org>
1293
1294         * scripts/functions/call: Add a test for PR/1517 and PR/1527: make
1295         sure $(call ...) doesn't eval its arguments and that you can
1296         invoke foreach from it without looping forever.
1297
1298 1999-12-15  Paul D. Smith  <psmith@gnu.org>
1299
1300         * scripts/targets/INTERMEDIATE: Add a test for PR/1423: make sure
1301         .INTERMEDIATE settings on files don't disable them as implicit
1302         intermediate possibilities.
1303
1304 1999-12-01  Paul D. Smith  <psmith@gnu.org>
1305
1306         * scripts/features/double_colon: Add a test for PR/1476: Try
1307         double-colon rules as non-goal targets and during parallel builds
1308         to make sure they're handled serially.
1309
1310 1999-11-17  Paul D. Smith  <psmith@gnu.org>
1311
1312         * scripts/functions/if: Add a test for PR/1429: put some text
1313         after an if-statement to make sure it works.
1314
1315         * scripts/features/targetvars: Add a test for PR/1380: handling +=
1316         in target-specific variable definitions correctly.
1317
1318 1999-10-15  Paul D. Smith  <psmith@gnu.org>
1319
1320         * scripts/variables/MAKEFILES: This was really broken: it didn't
1321         test anything at all, really.  Rewrote it, plus added a test for
1322         PR/1394.
1323
1324 1999-10-13  Paul D. Smith  <psmith@gnu.org>
1325
1326         * scripts/options/dash-n: Add a test for PR/1379: "-n doesn't
1327         behave properly when used with recursive targets".
1328
1329 1999-10-08  Paul D. Smith  <psmith@gnu.org>
1330
1331         * scripts/features/targetvars: Add a check for PR/1378:
1332         "Target-specific vars don't inherit correctly"
1333
1334 1999-09-29  Paul D. Smith  <psmith@gnu.org>
1335
1336         * test_driver.pl (get_osname): Change $fancy_file_names to
1337         $short_filenames and reverse the logic.
1338         (run_each_test): Change test of non-existent $port_host to use
1339         $short_filenames--problem reported by Eli Zaretskii.
1340
1341 1999-09-23  Paul D. Smith  <psmith@gnu.org>
1342
1343         * scripts/features/parallelism: Add a check to ensure that the
1344         jobserver works when we re-invoke.  Also cleaned up the tests a
1345         little, reducing the number of rules we use so the test won't need
1346         as many "sleep" commands.
1347
1348 1999-09-16  Paul D. Smith  <psmith@gnu.org>
1349
1350         * scripts/features/reinvoke: Remove invocations of "touch" in
1351         makefiles.  See the comments on the touch function rewrite below.
1352         Note that UNIX touch behaves the same way if the file already
1353         exists: it sets the time to the _local_ time.  We don't want
1354         this.  This is probably a good tip for makefile writers in
1355         general, actually... where practical.
1356         * scripts/options/dash-l: Ditto.
1357         * scripts/options/dash-n: Ditto.
1358
1359         * test_driver.pl (run_each_test): In retrospect, I don't like the
1360         .lN/.bN/.dN postfix required by DOS.  So, for non-DOS systems I
1361         changed it back to use .log, .base, and .diff.
1362
1363         * run_make_tests.pl (set_more_defaults): Move the check for the
1364         make pathname to here from set_defaults (that's too early since it
1365         happens before the command line processing).
1366         Create a new variable $port_type, calculated from $osname, to
1367         specify what kind of system we're running on.  We should integrate
1368         the VOS stuff here, too.
1369         (valid_option): Comment out the workdir/-work stuff so people
1370         won't be fooled into thinking it works... someone needs to fix
1371         this, though!
1372
1373         * scripts/functions/origin: Use $port_type instead of $osname.
1374         * scripts/functions/foreach: Ditto.
1375         * scripts/features/default_names: Ditto.
1376
1377 1999-09-15  Paul D. Smith  <psmith@gnu.org>
1378
1379         * test_driver.pl (touch): Rewrite this function.  Previously it
1380         used to use utime() to hard-set the time based on the current
1381         local clock, or, if the file didn't exist, it merely created it.
1382         This mirrors exactly what real UNIX touch does, but it fails badly
1383         on networked filesystems where the FS server clock is skewed from
1384         the local clock: normally modifying a file causes it to get a mod
1385         time based on the _server's_ clock.  Hard-setting it based on the
1386         _local_ clock causes gratuitous errors and makes the tests
1387         unreliable except on local filesystems.  The new function will
1388         simply modify the file, allowing the filesystem to set the mod
1389         time as it sees fit.
1390
1391         * scripts/features/parallelism: The second test output could
1392         change depending on how fast some scripts completed; use "sleep"
1393         to force the order we want.
1394
1395         * test_driver.pl (toplevel): A bug in Perl 5.000 to Perl 5.004
1396         means that "%ENV = ();" doesn't do the right thing.  This worked
1397         in Perl 4 and was fixed in Perl 5.004_01, but use a loop to delete
1398         the environment rather than require specific versions.
1399
1400         * run_make_tests.pl (set_more_defaults): Don't use Perl 5 s///
1401         modifier "s", so the tests will run with Perl 4.
1402         (set_more_defaults): Set $pure_log to empty if there's no -logfile
1403         option in PURIFYOPTIONS.
1404         (setup_for_test): Don't remove any logs unless $pure_log is set.
1405
1406 1999-09-15  Eli Zaretskii  <eliz@is.elta.co.il>
1407
1408         * scripts/features/reinvoke: Put the SHELL definition in the right
1409         test makefile.
1410
1411 1999-09-15  Paul D. Smith  <psmith@gnu.org>
1412
1413         ChangeLog file for the test suite created.
1414 \f
1415
1416 Copyright (C) 1992-2013 Free Software Foundation, Inc.
1417 This file is part of GNU Make.
1418
1419 GNU Make is free software; you can redistribute it and/or modify it under the
1420 terms of the GNU General Public License as published by the Free Software
1421 Foundation; either version 3 of the License, or (at your option) any later
1422 version.
1423
1424 GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
1425 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
1426 A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
1427
1428 You should have received a copy of the GNU General Public License along with
1429 this program.  If not, see <http://www.gnu.org/licenses/>.