Additional consequences:
* Makes the test system work correctly even should it ever be run with files stored on different file systems with different supported minimal path modification timestamp resolutions, e.g. NTFS (<1 ms) & FAT (2 sec).
* When requesting a new file to be written with a large enough file modification timestamp, any missing folders created in the process are created with large enough modification timestamp as well.
* Source paths with modification timestamps set too far in the future will now be reported as test environment errors instead of causing the test system to wait for some possibly long (all internal sleeps now limited to 5 seconds).
[SVN r79830]
Related changes:
* BoostBuild.Tester & TestCmd.TestCmd interfaces now accept external process parameters as a list of strings, thus avoiding problems with parsing arguments containing spaces.
* Avoided a potential process hang in case an external process being run prints out enough output to fill up the OS's pipe buffer (OS would pause the process until someone read the data from the pipe but the testing framework would not do this until the process in question had terminated).
[SVN r79448]
builtins.{c,h}
Support for the REBUILDS rule
remove unused variable
rules.h
make.c
Support for the REBUILDS rule
make1.c
Support for the REBUILDS rule
Support for recording timing information
Restructured a case statement because it was masking a bug I
introduced.
execcmd.h
execnt.c
execunix.c
Support for recording timing information
Also removed NT-specific stuff from execunix
expand.c
Removed tabs from critical comment
Added tab-width variable setting comment for emacs.
v2/test
rebuilds.py, timedata.py, test_all.py
Tests for REBUILDS and timing.
[SVN r27334]