summaryrefslogtreecommitdiffstats
path: root/build2/test/rule.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Add support for alternative build file/directory naming schemeBoris Kolpackov2019-03-071-5/+8
| | | | | | | | Now the build/*.build, buildfile, and .buildignore filesystem entries in a project can alternatively (but consistently) be called build2/*.build2, build2file, and .build2ignore. See a note at the beginning of the Project Structure section in the manual for details (motivation, restrictions, etc).
* Update copyright yearKaren Arutyunov2019-01-161-1/+1
|
* Only search for external tools (compilers, linkers, etc) in PATHBoris Kolpackov2018-11-051-1/+1
| | | | | | | Specifically, omit the current executable's directory on Windows since there is no reason for them to be found there automagically and this can lead to surprising behavior (for example, our MinGW GCC being used instead of the user's even though the user's is in PATH before ours).
* Create .buildignore file in testscript root working directoryKaren Arutyunov2018-09-051-4/+10
|
* Rename .test/test{} to .testscript/testscript{}Boris Kolpackov2018-09-041-2/+2
|
* Implement support for excluded and ad hoc prerequisitesBoris Kolpackov2018-06-281-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
* Update copyright yearKaren Arutyunov2018-05-191-1/+1
|
* Implement forwarded configurations and backlinkingBoris Kolpackov2018-04-261-4/+28
|
* Add support for detecting dependency cyclesBoris Kolpackov2018-02-161-6/+6
|
* Fix group link-up raceBoris Kolpackov2018-02-161-1/+1
|
* Fix broken test (and few other things)Boris Kolpackov2018-02-091-2/+2
|
* Update/cleanup comment documentation for inner/outer operation semanticsBoris Kolpackov2018-02-081-5/+5
|
* Add support for update-for-{test,install} operation aliasesBoris Kolpackov2018-02-071-1/+1
|
* Initial work for default update outer operationBoris Kolpackov2018-02-071-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.
* Fix test and install rules to handle see-through groups correctlyBoris Kolpackov2018-02-051-40/+31
|
* Work around VC issueBoris Kolpackov2018-02-031-5/+5
|
* Get rid of action rule override semanticsBoris Kolpackov2018-02-031-372/+344
| | | | | Instead we now have two more or less separate match states for outer and inner parts of an action.
* Trace non-zero process exit codeBoris Kolpackov2017-12-171-10/+1
| | | | Also convert to using operator<<(ostream,process_exit).
* Pass --text option for diff utility on WindowsKaren Arutyunov2017-10-301-0/+8
|
* Reimplement pkg-config generation with more conservative approach for nowBoris Kolpackov2017-08-011-3/+3
|
* Cleanup testscript runner diagnosticsBoris Kolpackov2017-05-021-2/+5
|
* Add hxx extension for headersKaren Arutyunov2017-05-011-10/+10
|
* Pass target to prerequisite searchBoris Kolpackov2017-04-271-3/+3
|
* Diagnostics printing minor optimizationKaren Arutyunov2017-04-261-6/+3
|
* Cleanup error messagesBoris Kolpackov2017-04-261-4/+4
|
* Print diff failure reasonKaren Arutyunov2017-04-261-5/+27
|
* Adapt to process_error changeKaren Arutyunov2017-04-101-1/+1
|
* Redo handling of unhandled exceptions in async executionBoris Kolpackov2017-04-011-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.
* Fix diagnostics interleaving charactersKaren Arutyunov2017-03-241-1/+2
|
* Suppress clang warningsKaren Arutyunov2017-03-191-1/+1
|
* Catch and dump unhandled exceptions in async task functionsBoris Kolpackov2017-03-171-0/+6
| | | | The problem with relying on noexcept for this is that there is no stack.
* Improve testscript execution diagnosticsBoris Kolpackov2017-03-171-24/+39
|
* Add support for config.test.output variableKaren Arutyunov2017-03-151-4/+11
|
* Implement parallel testscript execution for single targetBoris Kolpackov2017-03-151-9/+72
|
* Iterate over group members in test rule only if resolvableBoris Kolpackov2017-03-061-2/+11
|
* Fix target name printing in diagnosticsBoris Kolpackov2017-03-041-1/+1
|
* Fix test and dist for generated input/outputBoris Kolpackov2017-03-031-3/+6
|
* Implement parallel matchBoris Kolpackov2017-03-021-29/+21
|
* Implement parallel error propagation, keep_going modeBoris Kolpackov2017-02-131-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.
* Do some naming cleanupsBoris Kolpackov2017-02-131-1/+1
|
* Implement parallel operation executionBoris Kolpackov2017-02-131-9/+4
|
* Use target:as<> instead of static_cast for target castingBoris Kolpackov2017-02-131-2/+2
|
* Pass const target& to recipesBoris Kolpackov2017-02-131-14/+18
|
* Pass const scope& where modification should not happenBoris Kolpackov2017-02-131-1/+1
|
* Add notion of phase, enforceBoris Kolpackov2017-02-131-1/+5
|
* Add model mutex, make var_pool const by defaultBoris Kolpackov2017-02-131-17/+17
|
* Only pass diff --strip-trailing-cr if running on WindowsBoris Kolpackov2017-01-181-1/+6
| | | | | Since we cannot assume diff on other platforms has this option. Also need to do likewise in the testscript runner.
* Implement support for narrowing down tests (config.test)Boris Kolpackov2017-01-121-105/+194
|
* Make use of operator<<(ostream, exception)Karen Arutyunov2017-01-091-1/+1
|
* Implement test.target variableBoris Kolpackov2017-01-091-1/+4
| | | | The plan is to use it for the portable path conversions.