Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2019-07-05 | Move config, dist, test, and install modules into library | Karen Arutyunov | 1 | -14/+9 | |
2019-07-02 | Add workaround for data race in libstdc++'s locale(const locale&, Facet*) ↵ | Karen Arutyunov | 1 | -1/+1 | |
constructor | |||||
2019-07-02 | Minor improvements | Boris Kolpackov | 1 | -0/+4 | |
2019-07-01 | Split build system into library and driver | Boris Kolpackov | 1 | -20/+27 | |
2019-06-24 | Constrain access to options to build system driver main() only | Boris Kolpackov | 1 | -44/+70 | |
2019-06-03 | Adapt to renaming traits alias to traits_type for basic_path, basic_url, and ↵ | Karen Arutyunov | 1 | -1/+1 | |
string_table class templates | |||||
2019-05-28 | Print backtrace to stderr when terminating due to unhandled exception | Karen Arutyunov | 1 | -3/+21 | |
2019-03-14 | Add support for multiple variable overrides | Boris Kolpackov | 1 | -23/+6 | |
Now we can do: $ b config.cxx.coptions=-O3 config.cxx.coptions=-O0 Or even: $ b config.cxx.coptions=-O3 config.cxx.coptions+=-g | |||||
2019-03-07 | Move bunch of root scope-only data members to root_extra | Boris Kolpackov | 1 | -4/+5 | |
2019-03-07 | Add support for alternative build file/directory naming scheme | Boris Kolpackov | 1 | -21/+68 | |
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). | |||||
2019-01-16 | Update copyright year | Karen Arutyunov | 1 | -2/+2 | |
2019-01-14 | Diagnose target names with multiple trailing slashes as invalid | Boris Kolpackov | 1 | -1/+1 | |
2018-11-28 | Add --[no-]mtime-check options to control this behavior at runtime | Boris Kolpackov | 1 | -1/+4 | |
By default the checks are enabled only for the staged toolchain. | |||||
2018-11-27 | Add --dump <phase> option, omit state dumping from verbosity level 6 | Boris Kolpackov | 1 | -7/+28 | |
2018-11-14 | Fallback to loading outer buildfile if there isn't one in src_base | Boris Kolpackov | 1 | -21/+74 | |
This covers the case where the target is defined in the outer buildfile which is common with non-intrusive project conversions where everything is built from a single root buildfile. | |||||
2018-11-09 | Add support for relative to base scope command line variable overrides | Boris Kolpackov | 1 | -32/+49 | |
Currently, if we say: $ b dir/ ./foo=bar The scope the foo=bar is set on is relative to CWD, not dir/. While this may seem wrong at first, this is the least surprising behavior when we take into account that there can be multiple dir/'s. Sometimes, however, we do want the override directory to be treated relative to (every) target's base scope that we are building. To support this we are extending the '.' and '..' special directory names (which are still resolved relative to CWD) with '...', which means "relative to the base scope of every target in the buildspec". For example: $ b dir/ .../foo=bar Is equivalent to: $ b dir/ dir/foo=bar And: $ b liba/ libb/ .../tests/foo=bar Is equivalent to: $ b liba/ libb/ liba/tests/foo=bar libb/tests/foo=bar | |||||
2018-08-07 | Add support for default extension specification, trailing dot escaping | Boris Kolpackov | 1 | -6/+8 | |
For example: cxx{*}: extension = cxx cxx{foo} # foo.cxx cxx{foo.test} # foo.test (probably what we want...) cxx{foo.test...} # foo.test.cxx (... is this) cxx{foo..} # foo. cxx{foo....} # foo.. cxx{foo.....} # error (must come in escape pair) | |||||
2018-07-25 | Exclude cli and bash modules from bootstrap build | Boris Kolpackov | 1 | -3/+6 | |
2018-07-20 | Implement bash module | Boris Kolpackov | 1 | -0/+4 | |
2018-07-16 | Implement in module | Boris Kolpackov | 1 | -3/+10 | |
Given test.in containing something along these lines: foo = $foo$ Now we can do: using in file{test}: in{test.in} file{test}: foo = FOO The alternative variable substitution symbol can be specified with the in.symbol variable and lax (instead of the default strict) mode with in.substitution. For example: file{test}: in.symbol = '@' file{test}: in.substitution = lax | |||||
2018-06-15 | Use portable environment variable manipulation functions | Karen Arutyunov | 1 | -8/+6 | |
2018-05-19 | Update copyright year | Karen Arutyunov | 1 | -2/+2 | |
2018-05-16 | Fix uncaught invalid_path exception | Karen Arutyunov | 1 | -1/+1 | |
2018-05-14 | Tolerate misconfigured src_root in info and disfigure meta-operations | Boris Kolpackov | 1 | -25/+46 | |
2018-04-30 | Don't print scheduler statistics at verbosity level 2, add --stat instead | Boris Kolpackov | 1 | -2/+3 | |
2018-04-28 | Expose meta-operation in build.meta_operation variable | Boris Kolpackov | 1 | -0/+5 | |
2018-04-27 | Add support for build hooks | Boris Kolpackov | 1 | -12/+20 | |
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-26 | Implement forwarded configurations and backlinking | Boris Kolpackov | 1 | -25/+54 | |
2018-03-24 | Fix bug in '--' handling | Boris Kolpackov | 1 | -4/+2 | |
2018-02-21 | Add progress to dist meta-operation | Boris Kolpackov | 1 | -6/+6 | |
2018-02-12 | Add default capping of stack size for all POSIX platforms, --max-stack | Boris Kolpackov | 1 | -1/+7 | |
2018-02-12 | Make sure operation failure diagnostics is printed for pre/post-operations | Boris Kolpackov | 1 | -6/+9 | |
2018-02-09 | Fix GCC's "maybe used uninitialized" warning | Boris Kolpackov | 1 | -3/+3 | |
2018-02-08 | Fix meta-operation logic some more | Boris Kolpackov | 1 | -3/+4 | |
2018-02-08 | Fix bug in operation aliasing logic | Boris Kolpackov | 1 | -4/+7 | |
2018-02-08 | Fix regression in meta-operation lifting logic | Boris Kolpackov | 1 | -20/+18 | |
2018-02-07 | Add support for update-for-{test,install} operation aliases | Boris Kolpackov | 1 | -32/+47 | |
2018-02-01 | Diagnose out_base inside src_base | Boris Kolpackov | 1 | -0/+8 | |
2018-01-17 | Add workaround for data race in libstdc++'s ctype<char>::narrow() | Karen Arutyunov | 1 | -0/+20 | |
2017-12-19 | Remove unused variable | Karen Arutyunov | 1 | -2/+0 | |
2017-12-17 | Fix few issues with structured result output | Boris Kolpackov | 1 | -3/+5 | |
2017-12-16 | Split stream verbosity into components (path, extension) | Boris Kolpackov | 1 | -6/+7 | |
Use to make sure structured result output always contains absolute target path. | |||||
2017-12-16 | Add support for structured result output (--structured-result) | Boris Kolpackov | 1 | -21/+94 | |
2017-12-04 | Implement better cross-hinting between c-family modules | Boris Kolpackov | 1 | -0/+1 | |
2017-11-29 | Reimplement module sidebuilding using an ad hoc subproject | Boris Kolpackov | 1 | -9/+10 | |
2017-10-03 | Adapt to modularization of libbutl | Karen Arutyunov | 1 | -2/+2 | |
2017-09-25 | Get rid of pkgconfig module | Karen Arutyunov | 1 | -4/+0 | |
2017-09-07 | Implement {c,cxx}.guess modules | Boris Kolpackov | 1 | -0/+2 | |
These can be loaded before {c,cxx} to guess the compiler. Based on this information we can then choose the standard, experimental features, etc. For example: using cxx.guess if ($cxx.id == 'clang') cxx.features.modules = false cxx.std = experimental using cxx | |||||
2017-09-03 | Minor diagnostics tweaks | Boris Kolpackov | 1 | -4/+6 | |
2017-09-03 | Cleanup project src/out_root/base discovery logic | Boris Kolpackov | 1 | -117/+55 | |
Specifically, we no longer support specifying the out_base explicitly and assuming work is src_base. |