aboutsummaryrefslogtreecommitdiff
path: root/build2/b.cxx
AgeCommit message (Collapse)AuthorFilesLines
2016-07-23Adapt to fdstream extensionKaren Arutyunov1-0/+3
2016-07-22Change default var override from 'projects and subprojects' to amalgamationBoris Kolpackov1-3/+33
The 'projects and subprojects' semantics resulted in some counter-intuitive behavior. For example, in a project with tests/ as a subproject if one builds one of the tests directly with a non-global override (say C++ compiler), then the main project would be built without the overrides. I this light, overriding in the whole amalgamation seems like the right thing to do. The old behavior can still be obtained with scope qualification, for example: b ./:foo=bar
2016-07-20Move ar/ranlib to bin.ar sub-module, load in cxx unless shared-only buildBoris Kolpackov1-0/+1
This way we don't load/configure what we don't need.
2016-07-12Get src_root value if we have already bootstrapped this projectBoris Kolpackov1-0/+2
This fixes a core dump in out-of-source 'clean update' run.
2016-07-11Add bin.rc module (resource compiler)Boris Kolpackov1-0/+1
2016-07-11Add bin.ld sub-moduleBoris Kolpackov1-0/+1
2016-07-08Move filesystem-related functions from context to new filesystem filesBoris Kolpackov1-1/+1
2016-07-01Port to MSVCKaren Arutyunov1-4/+0
2016-06-27Add config.bin.target var/hint, use to decide libso{} install modeBoris Kolpackov1-1/+1
Normally the user doesn't need to specify config.bin.target explicitly since the cxx module will hint it. We now also have the whole set of target's components: bin.target.{cpu,vendor,system,version,class}
2016-06-27Get rid of extern "C" in module boot()/init()Boris Kolpackov1-12/+10
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-18Port to MinGWKaren Arutyunov1-16/+1
2016-04-23Revert back to using root scope in src_out()/out_src()Boris Kolpackov1-1/+1
Relaxing it to base was not wise since we can have "sideways" prerequisites (those from parallel directories such as brep's ../web/*).
2016-04-19Redesign src/out scopingBoris Kolpackov1-1/+7
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-11Simplify unconfigured module interfaceBoris Kolpackov1-1/+1
2016-04-05Implement --buildfile option, overrides default buildfile, supports '-'Boris Kolpackov1-2/+3
2016-04-04Implement value typing, null support via value attributesBoris Kolpackov1-1/+1
For example: v = [null] v = [string] abc v += ABC # abcABC
2016-04-01Get part of variable override implementationBoris Kolpackov1-7/+0
2016-03-31Set part of variable override implementationBoris Kolpackov1-63/+117
2016-03-29Reset build state for each meta-operationBoris Kolpackov1-138/+144
2016-03-28Add variable cast from lookupBoris Kolpackov1-1/+1
2016-03-28New variable architectureBoris Kolpackov1-43/+48
2016-03-28Enable @-delimited pairs mode everywhereBoris Kolpackov1-1/+1
2016-03-11Implement --config-{guess,sub} optionsBoris Kolpackov1-1/+0
2016-02-29Rename level[1-6]() to l[1-6]()Boris Kolpackov1-25/+23
2016-02-12<types>/<utility> scheme cleanupBoris Kolpackov1-4/+2
2016-02-12Support specifying options/variables/buildspec in any orderBoris Kolpackov1-49/+102
2016-01-30Use pager to show usageBoris Kolpackov1-11/+24
2016-01-30Add option documentation, reorganize thingsBoris Kolpackov1-1/+1
2016-01-23Cleanup absolute/relative path diagnostics by introducing stream verbosityBoris Kolpackov1-3/+4
2016-01-23Change target_key::ext from pointer to pointer to reference to pointerBoris Kolpackov1-1/+1
Probably can also do for the rest of the target_key members.
2016-01-21Rename equal token to assign, etcBoris Kolpackov1-3/+3
2016-01-09Update copyright yearBoris Kolpackov1-2/+2
2016-01-05Rename build directory/namespace to build2Boris Kolpackov1-0/+855