aboutsummaryrefslogtreecommitdiff
path: root/build2/test/rule.cxx
AgeCommit message (Collapse)AuthorFilesLines
2018-09-04Rename .test/test{} to .testscript/testscript{}Boris Kolpackov1-2/+2
2018-06-28Implement support for excluded and ad hoc prerequisitesBoris Kolpackov1-0/+6
The inclusion/exclusion is controlled via the 'include' prerequisite-specific variable. Valid values are: false - exclude true - include adhoc - include but treat as an ad hoc input For example: lib{foo}: cxx{win32-utility}: include = ($cxx.targe.class == 'windows') exe{bar}: libs{plugin}: include = adhoc
2018-05-19Update copyright yearKaren Arutyunov1-1/+1
2018-04-26Implement forwarded configurations and backlinkingBoris Kolpackov1-4/+28
2018-02-16Add support for detecting dependency cyclesBoris Kolpackov1-6/+6
2018-02-16Fix group link-up raceBoris Kolpackov1-1/+1
2018-02-09Fix broken test (and few other things)Boris Kolpackov1-2/+2
2018-02-08Update/cleanup comment documentation for inner/outer operation semanticsBoris Kolpackov1-5/+5
2018-02-07Add support for update-for-{test,install} operation aliasesBoris Kolpackov1-1/+1
2018-02-07Initial work for default update outer operationBoris Kolpackov1-27/+56
While update still uses the old "all update rules update all their prerequisites" assumption, test and install have been fixed not to rely on this.
2018-02-05Fix test and install rules to handle see-through groups correctlyBoris Kolpackov1-40/+31
2018-02-03Work around VC issueBoris Kolpackov1-5/+5
2018-02-03Get rid of action rule override semanticsBoris Kolpackov1-372/+344
Instead we now have two more or less separate match states for outer and inner parts of an action.
2017-12-17Trace non-zero process exit codeBoris Kolpackov1-10/+1
Also convert to using operator<<(ostream,process_exit).
2017-10-30Pass --text option for diff utility on WindowsKaren Arutyunov1-0/+8
2017-08-01Reimplement pkg-config generation with more conservative approach for nowBoris Kolpackov1-3/+3
2017-05-02Cleanup testscript runner diagnosticsBoris Kolpackov1-2/+5
2017-05-01Add hxx extension for headersKaren Arutyunov1-10/+10
2017-04-27Pass target to prerequisite searchBoris Kolpackov1-3/+3
2017-04-26Diagnostics printing minor optimizationKaren Arutyunov1-6/+3
2017-04-26Cleanup error messagesBoris Kolpackov1-4/+4
2017-04-26Print diff failure reasonKaren Arutyunov1-5/+27
2017-04-10Adapt to process_error changeKaren Arutyunov1-1/+1
2017-04-01Redo handling of unhandled exceptions in async executionBoris Kolpackov1-9/+2
Here is the problem: noexcept looses the call stack. That is, unlike an unhandled exception, if noexcept is tripped, then you won't see the place where it was thrown. In this new implementation we now have noexcept only on the task thunk. And the task is called via a thunk only in case of async execution. This means that if we are executing serially (-j 1), then this will be an unhandled exception, not noexcept. Hopefully will be a bit easier to debug.
2017-03-24Fix diagnostics interleaving charactersKaren Arutyunov1-1/+2
2017-03-19Suppress clang warningsKaren Arutyunov1-1/+1
2017-03-17Catch and dump unhandled exceptions in async task functionsBoris Kolpackov1-0/+6
The problem with relying on noexcept for this is that there is no stack.
2017-03-17Improve testscript execution diagnosticsBoris Kolpackov1-24/+39
2017-03-15Add support for config.test.output variableKaren Arutyunov1-4/+11
2017-03-15Implement parallel testscript execution for single targetBoris Kolpackov1-9/+72
2017-03-06Iterate over group members in test rule only if resolvableBoris Kolpackov1-2/+11
2017-03-04Fix target name printing in diagnosticsBoris Kolpackov1-1/+1
2017-03-03Fix test and dist for generated input/outputBoris Kolpackov1-3/+6
2017-03-02Implement parallel matchBoris Kolpackov1-29/+21
2017-02-13Implement parallel error propagation, keep_going modeBoris Kolpackov1-2/+2
Keep going is the default but there is now the -s|--serial-stop that makes the driver run serially and stop at first error. Also fix some lockups, other minor improvements/features.
2017-02-13Do some naming cleanupsBoris Kolpackov1-1/+1
2017-02-13Implement parallel operation executionBoris Kolpackov1-9/+4
2017-02-13Use target:as<> instead of static_cast for target castingBoris Kolpackov1-2/+2
2017-02-13Pass const target& to recipesBoris Kolpackov1-14/+18
2017-02-13Pass const scope& where modification should not happenBoris Kolpackov1-1/+1
2017-02-13Add notion of phase, enforceBoris Kolpackov1-1/+5
2017-02-13Add model mutex, make var_pool const by defaultBoris Kolpackov1-17/+17
2017-01-18Only pass diff --strip-trailing-cr if running on WindowsBoris Kolpackov1-1/+6
Since we cannot assume diff on other platforms has this option. Also need to do likewise in the testscript runner.
2017-01-12Implement support for narrowing down tests (config.test)Boris Kolpackov1-105/+194
2017-01-09Make use of operator<<(ostream, exception)Karen Arutyunov1-1/+1
2017-01-09Implement test.target variableBoris Kolpackov1-1/+4
The plan is to use it for the portable path conversions.
2017-01-05Update copyright yearBoris Kolpackov1-1/+1
2016-12-17Don't try to test out-of-project prerequisitesBoris Kolpackov1-32/+42
2016-12-16Add support for passing target name to testscript via test variableBoris Kolpackov1-5/+6
Such a targets is automatically resolved and converted to path.
2016-12-14Rename concurrent_runner to default_runnerBoris Kolpackov1-1/+1