1 2004-01-21 Paul D. Smith <psmith@gnu.org>
3 * scripts/features/conditionals: Test arguments to ifn?def which
4 contain whitespace (such as a function that is evaluated). Bug
7 2004-01-07 Paul D. Smith <psmith@gnu.org>
9 * scripts/features/order_only: Test order-only prerequisites in
10 pattern rules (patch #2349).
12 2003-11-02 Paul D. Smith <psmith@gnu.org>
14 * scripts/functions/if: Test if on conditionals with trailing
15 whitespace--bug #5798.
17 * scripts/functions/eval: Test eval in a non-file context--bug #6195.
19 2003-04-19 Paul D. Smith <psmith@gnu.org>
21 * scripts/features/patspecific_vars: Test multiple patterns
22 matching the same target--Bug #1405.
24 2003-04-09 Paul D. Smith <psmith@gnu.org>
26 * run_make_tests.pl (set_more_defaults): A new $port_type of
27 'OS/2' for (surprise!) OS/2. Also choose a wait time of 2 seconds
30 2003-03-28 Paul D. Smith <psmith@gnu.org>
32 * scripts/targets/SECONDARY: Test the "global" .SECONDARY (with
33 not prerequisites)--Bug #2515.
35 2003-01-30 Paul D. Smith <psmith@gnu.org>
37 * scripts/features/targetvars: Test very long target-specific
38 variable definition lines (longer than the default make buffer
39 length). Tests patch # 1022.
41 * scripts/functions/eval: Test very recursive $(eval ...) calls
42 with simple variable expansion (bug #2238).
44 * scripts/functions/word: Test error handling for word and
45 wordlist functions (bug #2407).
47 2003-01-22 Paul D. Smith <psmith@gnu.org>
49 * scripts/functions/call: Test recursive argument masking (bug
52 2002-10-25 Paul D. Smith <psmith@gnu.org>
54 * scripts/functions/eval: Test using $(eval ...) inside
55 conditionals (Bug #1516).
57 2002-10-14 Paul D. Smith <psmith@gnu.org>
59 * scripts/options/dash-t: Add a test for handling -t on targets
60 with no commands (Bug #1418).
62 2002-10-13 Paul D. Smith <psmith@gnu.org>
64 * scripts/features/targetvars: Add a test for exporting
65 target-specific vars (Bug #1391).
67 2002-10-05 Paul D. Smith <psmith@gnu.org>
69 * scripts/variables/automatic: Add tests for $$(@), $${@}, $${@D},
72 2002-09-23 Paul D. Smith <psmith@gnu.org>
74 * scripts/features/escape: Test handling of escaped comment
75 characters in targets and prerequisites.
77 2002-09-18 Paul D. Smith <psmith@gnu.org>
79 * scripts/features/export: Test export/unexport of multiple
80 variables in a single command.
82 2002-09-17 Paul D. Smith <psmith@gnu.org>
84 * scripts/features/targetvars: Tests for Bug #940: test
85 target-specific and pattern-specific variables in conjunction with
88 2002-09-10 Paul D. Smith <psmith@gnu.org>
90 * test_driver.pl (compare_output): Match the new format for time
93 * scripts/features/export: Created. Add tests for export/unexport
94 capabilities, including exporting/unexporting expanded variables.
96 * scripts/features/conditionals: Add a test for expanded variables
97 in ifdef conditionals.
99 2002-09-04 Paul D. Smith <psmith@gnu.org>
101 * scripts/features/reinvoke: Change touch/sleep combos to utouch
103 * scripts/features/vpathgpath: Ditto.
104 * scripts/features/vpathplus: Ditto.
105 * scripts/options/dash-n: Ditto.
106 * scripts/targets/INTERMEDIATE: Ditto.
107 * scripts/targets/SECONDARY: Ditto.
109 * scripts/options/dash-t: Added a test for the -t bug fixed by
110 Henning Makholm. This test was also contributed by Henning.
112 * scripts/misc/general4: Add a test suite for obscure algorithmic
113 features of make. First test: make sure creation subdirectories
114 as prerequisites of targets works properly.
116 * scripts/misc/version: Remove this bogus test.
118 2002-08-07 Paul D. Smith <psmith@gnu.org>
120 * scripts/misc/general3: Add a test for makefiles that don't end
123 * scripts/variables/special: Create tests for the special
124 variables (.VARIABLES and .TARGETS). Comment out .TARGETS test
125 for now as it's not yet supported.
127 2002-08-01 Paul D. Smith <psmith@gnu.org>
129 * scripts/options/dash-B: Add a test for the new -B option.
131 2002-07-11 Paul D. Smith <psmith@gnu.org>
133 * run_make_tests.pl (valid_option): Add support for Valgrind
134 <http://developer.kde.org/~sewardj/>. Use -valgrind option to the
136 (set_more_defaults): Set up the file descriptor to capture
137 Valgrind output. We have to unset its close-on-exec flag; we
138 hardcode the value for F_SETFD (2) rather than load it; hopefully
139 this will help us avoid breaking the Windows/DOS test suite.
141 2002-07-10 Paul D. Smith <psmith@gnu.org>
143 * scripts/variables/automatic: Add some tests for $$@, $$(@D), and
146 * test_driver.pl (utouch): Create a new function that creates a
147 file with a specific timestamp offset. Use of this function will
148 let us avoid lots of annoying sleep() invocations in the tests
149 just to get proper timestamping, which will make the tests run a
150 lot faster. So far it's only used in the automatic test suite.
152 2002-07-09 Paul D. Smith <psmith@gnu.org>
154 * scripts/variables/automatic: Create a test for automatic variables.
156 2002-07-08 Paul D. Smith <psmith@gnu.org>
158 * scripts/features/order_only: Test new order-only prerequisites.
160 2002-07-07 Paul D. Smith <psmith@gnu.org>
162 * scripts/functions/eval: Test new function.
163 * scripts/functions/value: Test new function.
164 * scripts/variables/MAKEFILE_LIST: Test new variable.
166 2002-04-28 Paul D. Smith <psmith@gnu.org>
168 * scripts/functions/call: New test: transitive closure
169 implementation using $(call ...) to test variable recursion.
171 2002-04-21 Paul D. Smith <psmith@gnu.org>
173 * test_driver.pl (compare_dir_tree): Ignore CVS and RCS
174 directories in the script directories.
176 2001-05-02 Paul D. Smith <psmith@gnu.org>
178 * scripts/variables/flavors: Test define/endef scripts where only
179 one of the command lines is quiet.
181 2000-06-22 Paul D. Smith <psmith@gnu.org>
183 * scripts/options/dash-q: New file; test the -q option. Includes
186 2000-06-21 Paul D. Smith <psmith@gnu.org>
188 * scripts/features/targetvars: Added a test for PR/1709: allowing
189 semicolons in target-specific variable values.
191 2000-06-19 Paul D. Smith <psmith@gnu.org>
193 * scripts/functions/addsuffix: Test for an empty final argument.
194 Actually this bug might have happened for any function, but this
197 2000-06-17 Eli Zaretskii <eliz@is.elta.co.il>
199 * scripts/options/general: If parallel jobs are not supported,
200 expect a warning message from Make.
202 2000-06-15 Eli Zaretskii <eliz@is.elta.co.il>
204 * scripts/options/general: Don't try -jN with N != 1 if parallel
205 jobs are not supported.
207 2000-05-24 Paul D. Smith <psmith@gnu.org>
209 * scripts/options/general: Test general option processing (PR/1716).
211 2000-04-11 Paul D. Smith <psmith@gnu.org>
213 * scripts/functions/strip: Test empty value to strip (PR/1689).
215 2000-04-08 Eli Zaretskii <eliz@is.elta.co.il>
217 * scripts/features/reinvoke: Sleep before updating the target
218 files in the first test, to ensure its time stamp really gets
219 newer; otherwise Make might re-exec more than once.
221 2000-04-07 Eli Zaretskii <eliz@is.elta.co.il>
223 * scripts/features/double_colon: Don't run the parallel tests if
224 parallel jobs aren't supported.
226 2000-04-04 Paul D. Smith <psmith@gnu.org>
228 * scripts/functions/word: wordlist doesn't swap arguments anymore.
230 2000-03-27 Paul D. Smith <psmith@gnu.org>
232 * scripts/features/statipattrules: Test that static pattern rules
233 whose prerequisite patterns resolve to empty strings throw an
234 error (instead of dumping core). Fixes PR/1670.
236 * scripts/features/reinvoke: Make more robust by touching "b"
237 first, to ensure it's not newer than "a".
238 Reported by Marco Franzen <Marco.Franzen@Thyron.com>.
239 * scripts/options/dash-n: Ditto.
241 * scripts/functions/call: Whoops. The fix to PR/1527 caused
242 recursive invocations of $(call ...) to break. I can't come up
243 with any way to get both working at the same time, so I backed out
244 the fix to 1527 and added a test case for recursive calls. This
245 also tests the fix for PR/1610.
247 * scripts/features/double_colon: Test that circular dependencies
248 in double-colon rule sets are detected correctly (PR/1671).
250 2000-03-26 Paul D. Smith <psmith@gnu.org>
252 * scripts/targets/INTERMEDIATE: Test that make doesn't remove
253 .INTERMEDIATE files when given on the command line (PR/1669).
255 2000-03-08 Paul D. Smith <psmith@gnu.org>
257 * scripts/options/dash-k: Add a test for error detection by
258 multiple targets depending on the same prerequisite with -k.
261 2000-02-07 Paul D. Smith <psmith@gnu.org>
263 * scripts/features/escape: Add a test for backslash-escaped spaces
264 in a target name (PR/1586).
266 2000-02-04 Paul D. Smith <psmith@gnu.org>
268 * scripts/features/patspecific_vars: Add a test for pattern-specific
269 target variables inherited from the parent target (PR/1407).
271 2000-02-02 Paul D. Smith <psmith@gnu.org>
273 * run_make_tests.pl (set_more_defaults): Hard-code the LANG to C
274 to make sure sorting order, etc. is predictable.
275 Reported by Andreas Jaeger <aj@suse.de>.
277 * run_make_tests.pl (set_more_defaults): Set the $wtime variable
278 depending on the OS. Eli Zaretskii <eliz@is.elta.co.il> reports
279 this seems to need to be *4* on DOS/Windows, not just 2. Keep it
281 * scripts/features/vpathplus (touchfiles): Use the $wtime value
282 instead of hardcoding 2.
283 * scripts/targets/SECONDARY: Ditto.
284 * scripts/targets/INTERMEDIATE: Ditto.
286 2000-01-27 Paul D. Smith <psmith@gnu.org>
288 * test_driver.pl (toplevel): Don't try to run test scripts which
289 are really directories.
291 2000-01-23 Paul D. Smith <psmith@gnu.org>
293 * scripts/features/include: Remove a check; the fix caused more
294 problems than the error, so I removed it and removed the test for
297 2000-01-11 Paul D. Smith <psmith@gnu.org>
299 * scripts/functions/call: Add a test for PR/1517 and PR/1527: make
300 sure $(call ...) doesn't eval its arguments and that you can
301 invoke foreach from it without looping forever.
303 1999-12-15 Paul D. Smith <psmith@gnu.org>
305 * scripts/targets/INTERMEDIATE: Add a test for PR/1423: make sure
306 .INTERMEDIATE settings on files don't disable them as implicit
307 intermediate possibilities.
309 1999-12-01 Paul D. Smith <psmith@gnu.org>
311 * scripts/features/double_colon: Add a test for PR/1476: Try
312 double-colon rules as non-goal targets and during parallel builds
313 to make sure they're handled serially.
315 1999-11-17 Paul D. Smith <psmith@gnu.org>
317 * scripts/functions/if: Add a test for PR/1429: put some text
318 after an if-statement to make sure it works.
320 * scripts/features/targetvars: Add a test for PR/1380: handling +=
321 in target-specific variable definitions correctly.
323 1999-10-15 Paul D. Smith <psmith@gnu.org>
325 * scripts/variables/MAKEFILES: This was really broken: it didn't
326 test anything at all, really. Rewrote it, plus added a test for
329 1999-10-13 Paul D. Smith <psmith@gnu.org>
331 * scripts/options/dash-n: Add a test for PR/1379: "-n doesn't
332 behave properly when used with recursive targets".
334 1999-10-08 Paul D. Smith <psmith@gnu.org>
336 * scripts/features/targetvars: Add a check for PR/1378:
337 "Target-specific vars don't inherit correctly"
339 1999-09-29 Paul D. Smith <psmith@gnu.org>
341 * test_driver.pl (get_osname): Change $fancy_file_names to
342 $short_filenames and reverse the logic.
343 (run_each_test): Change test of non-existent $port_host to use
344 $short_filenames--problem reported by Eli Zaretskii.
346 1999-09-23 Paul D. Smith <psmith@gnu.org>
348 * scripts/features/parallelism: Add a check to ensure that the
349 jobserver works when we re-invoke. Also cleaned up the tests a
350 little, reducing the number of rules we use so the test won't need
351 as many "sleep" commands.
353 1999-09-16 Paul D. Smith <psmith@gnu.org>
355 * scripts/features/reinvoke: Remove invocations of "touch" in
356 makefiles. See the comments on the touch function rewrite below.
357 Note that UNIX touch behaves the same way if the file already
358 exists: it sets the time to the _local_ time. We don't want
359 this. This is probably a good tip for makefile writers in
360 general, actually... where practical.
361 * scripts/options/dash-l: Ditto.
362 * scripts/options/dash-n: Ditto.
364 * test_driver.pl (run_each_test): In retrospect, I don't like the
365 .lN/.bN/.dN postfix required by DOS. So, for non-DOS systems I
366 changed it back to use .log, .base, and .diff.
368 * run_make_tests.pl (set_more_defaults): Move the check for the
369 make pathname to here from set_defaults (that's too early since it
370 happens before the command line processing).
371 Create a new variable $port_type, calculated from $osname, to
372 specify what kind of system we're running on. We should integrate
373 the VOS stuff here, too.
374 (valid_option): Comment out the workdir/-work stuff so people
375 won't be fooled into thinking it works... someone needs to fix
378 * scripts/functions/origin: Use $port_type instead of $osname.
379 * scripts/functions/foreach: Ditto.
380 * scripts/features/default_names: Ditto.
382 1999-09-15 Paul D. Smith <psmith@gnu.org>
384 * test_driver.pl (touch): Rewrite this function. Previously it
385 used to use utime() to hard-set the time based on the current
386 local clock, or, if the file didn't exist, it merely created it.
387 This mirrors exactly what real UNIX touch does, but it fails badly
388 on networked filesystems where the FS server clock is skewed from
389 the local clock: normally modifying a file causes it to get a mod
390 time based on the _server's_ clock. Hard-setting it based on the
391 _local_ clock causes gratuitous errors and makes the tests
392 unreliable except on local filesystems. The new function will
393 simply modify the file, allowing the filesystem to set the mod
396 * scripts/features/parallelism: The second test output could
397 change depending on how fast some scripts completed; use "sleep"
398 to force the order we want.
400 * test_driver.pl (toplevel): A bug in Perl 5.000 to Perl 5.004
401 means that "%ENV = ();" doesn't do the right thing. This worked
402 in Perl 4 and was fixed in Perl 5.004_01, but use a loop to delete
403 the environment rather than require specific versions.
405 * run_make_tests.pl (set_more_defaults): Don't use Perl 5 s///
406 modifier "s", so the tests will run with Perl 4.
407 (set_more_defaults): Set $pure_log to empty if there's no -logfile
408 option in PURIFYOPTIONS.
409 (setup_for_test): Don't remove any logs unless $pure_log is set.
411 1999-09-15 Eli Zaretskii <eliz@is.elta.co.il>
413 * scripts/features/reinvoke: Put the SHELL definition in the right
416 1999-09-15 Paul D. Smith <psmith@gnu.org>
418 ChangeLog file for the test suite created.