aboutsummaryrefslogtreecommitdiff
path: root/build2/dist
AgeCommit message (Collapse)AuthorFilesLines
2017-08-05Cosmetic changeBoris Kolpackov1-2/+2
2017-06-06Adapt to libbutl::process interface changeKaren Arutyunov1-1/+1
2017-05-01Add hxx extension for headersKaren Arutyunov9-70/+70
2017-04-27Pass target to prerequisite searchBoris Kolpackov1-1/+1
2017-04-26Implement version moduleBoris Kolpackov4-30/+148
2017-04-10Adapt to process_error changeKaren Arutyunov1-3/+3
2017-03-16Add support for passing parameters to (meta-) operationsBoris Kolpackov1-15/+22
2017-03-06Iterate over group members in test rule only if resolvableBoris Kolpackov1-11/+4
2017-03-03Fix test and dist for generated input/outputBoris Kolpackov1-5/+18
2017-03-03Fix cli distribution via groupBoris Kolpackov3-4/+12
2017-03-02Implement parallel matchBoris Kolpackov3-62/+39
2017-02-13Implement parallel error propagation, keep_going modeBoris Kolpackov1-0/+1
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-1/+1
2017-02-13Pass const scope& where modification should not happenBoris Kolpackov1-3/+3
2017-02-13Implement pattern-based variable typing, tighten variable type updateBoris Kolpackov1-1/+1
2017-02-13Add notion of phase, enforceBoris Kolpackov1-20/+24
2017-02-13Add scheduling calls to operation's match()Boris Kolpackov1-49/+53
2017-02-13Add model mutex, make var_pool const by defaultBoris Kolpackov4-28/+39
2017-01-24Add default constructors to *_rule classes to make older clang happyKaren Arutyunov1-0/+2
2017-01-23Make rules const throughoutBoris Kolpackov1-1/+1
2017-01-23Add bunch of missing const'sBoris Kolpackov2-2/+2
2017-01-19Get rid of extension_poolBoris Kolpackov1-1/+1
2017-01-19Get rid of project_name_poolBoris Kolpackov1-1/+1
With small string optimizations this is most likely a hindrance rather that an optimization.
2017-01-12Implement support for narrowing down tests (config.test)Boris Kolpackov1-8/+8
2017-01-09Make use of operator<<(ostream, exception)Karen Arutyunov1-3/+3
2017-01-05Update copyright yearBoris Kolpackov6-6/+6
2016-12-17Add support for specifying individual paths of imported targetsBoris Kolpackov1-2/+1
The new config.import.* variable format is: config.import.<proj>.<name>[.<type>] For example: b config.import.build2.b=/opt/build2/bin/b b config.import.build2.b.exe=b-boot
2016-11-04Cleanup match_result messBoris Kolpackov2-5/+5
2016-11-04Various design/implementation cleanupsBoris Kolpackov1-1/+1
2016-09-17Audit all print_process()/process ctor for path_search()Karen Arutyunov2-18/+20
2016-09-13Fix crashing on unhandled system_error thrown by file_exists()Karen Arutyunov1-4/+4
2016-09-01Add support for specifying directory in config.dist.archivesBoris Kolpackov2-10/+37
2016-08-30Add support for target visibility, use for dist, test, installBoris Kolpackov1-2/+5
This means we can no longer write: install = false Now it should be: *: install = false
2016-08-30Remove backwards-compatibility kludgesBoris Kolpackov1-10/+5
2016-08-30Add support for config.build file versioningBoris Kolpackov1-9/+5
2016-08-29Implement initial support for library versioningBoris Kolpackov1-1/+1
Currently we only support platform-independent versions that get appended to the library name. The magic incantation is this: lib{foo}: bin.lib.version = @-1.2 This will produce libfoo-1.2.so, libfoo-1.2.dll, etc. In the future we will support things like this: lib{foo}: bin.lib.version = linux@1.2.3 freebsd@1.2 windows@1.2
2016-08-22Improve diagnosticsBoris Kolpackov1-1/+3
2016-08-12Rename module to initBoris Kolpackov2-6/+6
2016-08-12Add support for ordering modules in config.buildBoris Kolpackov1-0/+6
2016-07-30Construct paths to use canonical directory separatorsBoris Kolpackov1-4/+4
Hardcoding separators as in "build/root.build" is now a big no-no.
2016-07-28Adjust to new path implementation, use to support reversibilityBoris Kolpackov1-1/+1
2016-07-08Move filesystem-related functions from context to new filesystem filesBoris Kolpackov1-0/+1
2016-06-27Get rid of extern "C" in module boot()/init()Boris Kolpackov2-20/+20
We will have a separate (extern "C") register() function that will return the pointers to these two. This way we can still throw exceptions from boot() and init().
2016-06-26Add support for passing configuration hints via module init()Boris Kolpackov2-3/+11
2016-06-26Add notion of ad hoc group, use to handle DLL/import libraryBoris Kolpackov1-1/+3
2016-04-19Redesign src/out scopingBoris Kolpackov1-17/+24
We no longer enter paths from the src tree into scope map. Instead, targets from the src tree now include their out tree directory (in essence their "configuration"). This is then used to find a target's scope. See the comment in class target for details. The result of this change is that we can now again build multiple configurations (out trees) for same project at once.
2016-04-12Mark non-BC changes for futureBoris Kolpackov1-5/+3
2016-04-11New configuration logic, iteration 1Boris Kolpackov3-22/+21
2016-03-31Clean up variable lookup interfacesBoris Kolpackov1-4/+4
2016-03-31Set part of variable override implementationBoris Kolpackov1-8/+10