aboutsummaryrefslogtreecommitdiff
path: root/build2/config/operation.cxx
AgeCommit message (Collapse)AuthorFilesLines
2018-05-14Tolerate misconfigured src_root in info and disfigure meta-operationsBoris Kolpackov1-0/+2
2018-04-27Add support for build hooksBoris Kolpackov1-1/+4
The following buildfiles are loaded (if present) at appropriate times from the out_root subdirectories of a project: build/bootstrap/pre-*.build # before loading bootstrap.build build/bootstrap/post-*.build # after loading bootstrap.build build/root/pre-*.build # before loading root.build build/root/post-*.build # after loading root.build
2018-04-26Implement forwarded configurations and backlinkingBoris Kolpackov1-79/+281
2018-04-24Minor code reuse improvementBoris Kolpackov1-39/+2
2018-03-12Adjust disfigure diagnosticsBoris Kolpackov1-4/+9
2018-02-21Add progress to dist meta-operationBoris Kolpackov1-7/+6
2018-02-12Make sure operation failure diagnostics is printed for pre/post-operationsBoris Kolpackov1-5/+8
2018-02-08Work around VC static initialization order issueBoris Kolpackov1-6/+10
2018-02-07Add support for update-for-{test,install} operation aliasesBoris Kolpackov1-1/+1
2017-12-17Fix few issues with structured result outputBoris Kolpackov1-2/+2
2017-12-16Add support for structured result output (--structured-result)Boris Kolpackov1-4/+4
2017-12-13Implement info meta operationBoris Kolpackov1-3/+3
This meta operation can be used to print basic information (name, version, source/output roots, etc) for one or more projects.
2017-11-29Reimplement module sidebuilding using an ad hoc subprojectBoris Kolpackov1-148/+31
2017-05-13Fix VC15 warnings (/W3)Karen Arutyunov1-1/+1
2017-05-01Add hxx extension for headersKaren Arutyunov1-12/+12
2017-03-17Disable amalgamation in configurations created by create meta-operationBoris Kolpackov1-0/+5
2017-03-17Implement create meta-operationBoris Kolpackov1-1/+282
2017-03-16Add support for passing parameters to (meta-) operationsBoris Kolpackov1-23/+26
2017-03-14Implement implied buildfile supportBoris Kolpackov1-0/+1
In essence, if the buildfile is: ./: */ Then it can be omitted entirely (provided there is at least one subdirectory).
2017-03-02Implement parallel matchBoris Kolpackov1-10/+7
2017-02-13Implement parallel error propagation, keep_going modeBoris Kolpackov1-0/+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-13Implement parallel operation executionBoris Kolpackov1-2/+2
2017-02-13Implement target_set locking, including extension updateBoris Kolpackov1-1/+1
2017-02-13Pass const scope& where modification should not happenBoris Kolpackov1-33/+62
2017-02-13Add notion of phase, enforceBoris Kolpackov1-0/+3
2017-02-13Add scheduling calls to operation's match()Boris Kolpackov1-18/+13
2017-02-13Add model mutex, make var_pool const by defaultBoris Kolpackov1-11/+26
2017-01-23Add bunch of missing const'sBoris Kolpackov1-2/+2
2017-01-23Implement automatic loading of directory buildfilesBoris Kolpackov1-0/+1
Now instead of explicitly writing: d = foo/ bar/ ./: $d include $d We can (usually) just write: ./: foo/ bar/
2017-01-19Get rid of extension_poolBoris Kolpackov1-1/+1
2017-01-09Make use of operator<<(ostream, exception)Karen Arutyunov1-2/+2
2017-01-05Update copyright yearBoris Kolpackov1-1/+1
2016-11-30Add support for typed/untyped concatenated expansionBoris Kolpackov1-1/+1
2016-09-15Add io_error alias for std::ios_base::failureKaren Arutyunov1-2/+2
2016-09-04Adjust configure/disfigure verbosityBoris Kolpackov1-9/+8
2016-08-30Add support for target visibility, use for dist, test, installBoris Kolpackov1-2/+2
This means we can no longer write: install = false Now it should be: *: install = false
2016-08-30Add support for config.build file versioningBoris Kolpackov1-5/+5
2016-08-23Don't write trailing spaces in case of empty values in config.buildBoris Kolpackov1-2/+11
2016-08-12Add support for ordering modules in config.buildBoris Kolpackov1-4/+3
2016-07-30Construct paths to use canonical directory separatorsBoris Kolpackov1-2/+0
Hardcoding separators as in "build/root.build" is now a big no-no.
2016-07-29Fix duplicate config.build variable issueBoris Kolpackov1-8/+3
2016-07-28Adjust to new path implementation, use to support reversibilityBoris Kolpackov1-1/+1
2016-07-25Fix surprising config override behavior now that they are amalgamation-wideBoris Kolpackov1-2/+24
2016-07-25Fix module separating blank line logicBoris Kolpackov1-4/+10
2016-07-23Adapt to fdstream extensionKaren Arutyunov1-15/+10
2016-07-21Save config vars in order specified rather than alphabeticallyBoris Kolpackov1-148/+122
This way we can group them semantically which results in easier to understand config.build output.
2016-07-21Fix bug in save_commented logicBoris Kolpackov1-2/+2
2016-07-21Save default/hinted ar/ld/rc values as commented outBoris Kolpackov1-2/+16
This way, when we, for example, change the C++ compiler (which hinted these values), they will be automatically adjusted as well.
2016-07-08Move filesystem-related functions from context to new filesystem filesBoris Kolpackov1-2/+1
2016-07-08Implement limited rpath emulation for WindowsBoris Kolpackov1-2/+2