Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-04-27 | Rework tool importation along with cli module | Boris Kolpackov | 1 | -262/+173 | |
Specifically, now config.<tool> (like config.cli) is handled by the import machinery (it is like a shorter alias for config.import.<tool>.<tool>.exe that we already had). And the cli module now uses that instead of custom logic. This also adds support for uniform tool metadata extraction that is handled by the import machinery. As a result, a tool that follows the "build2 way" can be imported with metadata by the buildfile and/or corresponding module without any tool-specific code or brittleness associated with parsing --version or similar outputs. See the cli tool/module for details. Finally, two new flavors of the import directive are now supported: import! triggers immediate importation skipping any rule-specific logic while import? is optional import (analogous to using?). Note that optional import is always immediate. There is also the import-specific metadata attribute which can be specified for these two import flavors in order to trigger metadata importation. For example: import? [metadata] cli = cli%exe{cli} if ($cli != [null]) info "cli version $($cli:cli.version)" | |||||
2020-03-31 | Switch to project variable visibility by default | Boris Kolpackov | 1 | -6/+4 | |
2020-03-17 | Rework config::{omitted,required,optional}() into unified config_lookup() | Boris Kolpackov | 1 | -19/+20 | |
2020-03-11 | Minor config variable lookup cleanups | Boris Kolpackov | 1 | -3/+3 | |
2020-02-07 | Drop copyright notice from source code | Karen Arutyunov | 1 | -1/+0 | |
2020-01-29 | Rename module_base to module, redo module boot/init argument passing | Boris Kolpackov | 1 | -7/+3 | |
2020-01-28 | Use scope::var_pool() | Boris Kolpackov | 1 | -7/+7 | |
2020-01-28 | Use scope::insert_rule() | Boris Kolpackov | 1 | -8/+6 | |
2020-01-27 | Improve module loading API | Boris Kolpackov | 1 | -1/+1 | |
2019-08-28 | Add build2_cli_load() | Karen Arutyunov | 1 | -0/+16 | |
2019-08-28 | Move cxx build system module to separate library | Karen Arutyunov | 1 | -1/+1 | |
2019-08-26 | Make target types project-wide | Boris Kolpackov | 1 | -5/+4 | |
2019-08-23 | Introduce notion of build context | Boris Kolpackov | 1 | -1/+1 | |
All non-const global state is now in class context and we can now have multiple independent builds going on at the same time. | |||||
2019-07-05 | Move config, dist, test, and install modules into library | Karen Arutyunov | 1 | -2/+2 | |
2019-07-01 | Split build system into library and driver | Boris Kolpackov | 1 | -4/+4 | |
2019-06-19 | Improve diagnostics | Boris Kolpackov | 1 | -3/+3 | |
2019-06-05 | Tweak generated header heuristics, add more diagnostics | Boris Kolpackov | 1 | -1/+1 | |
2019-01-16 | Update copyright year | Karen Arutyunov | 1 | -1/+1 | |
2018-11-05 | Only search for external tools (compilers, linkers, etc) in PATH | Boris Kolpackov | 1 | -1/+7 | |
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). | |||||
2018-10-19 | Suggest override variable (config.x) when tool is not found | Boris Kolpackov | 1 | -2/+4 | |
2018-07-30 | Fortify cli detection against "other" cli's (like Mono JIT compiler) | Boris Kolpackov | 1 | -12/+25 | |
2018-06-29 | Use depdb to track changes to cli compiler, options, etc | Boris Kolpackov | 1 | -6/+27 | |
2018-05-19 | Update copyright year | Karen Arutyunov | 1 | -1/+1 | |
2018-02-07 | Initial work for default update outer operation | Boris Kolpackov | 1 | -0/+2 | |
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. | |||||
2018-02-03 | Get rid of action rule override semantics | Boris Kolpackov | 1 | -5/+5 | |
Instead we now have two more or less separate match states for outer and inner parts of an action. | |||||
2017-12-17 | Trace non-zero process exit code | Boris Kolpackov | 1 | -1/+3 | |
Also convert to using operator<<(ostream,process_exit). | |||||
2017-12-16 | Improve process execution diagnostics by reusing run_*() API | Boris Kolpackov | 1 | -0/+2 | |
2017-05-01 | Add hxx extension for headers | Karen Arutyunov | 1 | -9/+9 | |
2017-04-10 | Adapt to process_error change | Karen Arutyunov | 1 | -1/+1 | |
2017-03-03 | Fix cli distribution via group | Boris Kolpackov | 1 | -14/+14 | |
2017-02-13 | Implement pattern-based variable typing, tighten variable type update | Boris Kolpackov | 1 | -3/+3 | |
2017-02-13 | Add model mutex, make var_pool const by default | Boris Kolpackov | 1 | -2/+2 | |
2017-01-23 | Make rules const throughout | Boris Kolpackov | 1 | -1/+1 | |
2017-01-09 | Make use of operator<<(ostream, exception) | Karen Arutyunov | 1 | -1/+1 | |
2017-01-05 | Update copyright year | Boris Kolpackov | 1 | -1/+1 | |
2016-11-23 | Add support for config.cli=false (leave unconfigured) | Boris Kolpackov | 1 | -19/+38 | |
2016-11-04 | Adopt to auto_fd introduced to libbutl fdstreams and process | Karen Arutyunov | 1 | -1/+1 | |
2016-09-15 | Add io_error alias for std::ios_base::failure | Karen Arutyunov | 1 | -1/+1 | |
2016-09-02 | Fix bug in cli module diagnostics | Boris Kolpackov | 1 | -1/+1 | |
2016-08-30 | Remove backwards-compatibility kludges | Boris Kolpackov | 1 | -14/+9 | |
2016-08-23 | Split cli module into cli.config and cli | Boris Kolpackov | 1 | -43/+77 | |
2016-08-22 | Cache process_path, use fallback search directory for binutils | Boris Kolpackov | 1 | -11/+23 | |
2016-08-12 | Rename module to init | Boris Kolpackov | 1 | -0/+265 | |