Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-06-03 | Get rid of remaining typedef's | Boris Kolpackov | 4 | -5/+5 | |
2020-06-03 | Add versioning for ad hoc C++ recipes | Boris Kolpackov | 3 | -19/+58 | |
This will allow us to deal with backward-incompatible changes to cxx_rule interface and semantics. | |||||
2020-06-03 | Factor implementation-specific ad hoc recipe parsing to adhoc_*_rule | Boris Kolpackov | 5 | -93/+128 | |
2020-06-02 | Hash checksum metadata of exe prerequisites in ad hoc script rule | Boris Kolpackov | 1 | -16/+56 | |
2020-06-02 | Add $target.process_path() analogous to $target.path() | Boris Kolpackov | 3 | -3/+33 | |
2020-06-02 | Add process_path_ex with program stable name and checksum | Boris Kolpackov | 10 | -58/+305 | |
2020-06-01 | Fix buildscript unit test to compile | Boris Kolpackov | 1 | -1/+1 | |
2020-06-01 | Extend target metadata to include variable prefix, stable name | Boris Kolpackov | 4 | -31/+106 | |
2020-05-29 | Move low-verbosity command name from adhoc_script_rule to script | Boris Kolpackov | 6 | -17/+27 | |
2020-05-29 | Add support for is-else, switch in ad hoc recipes | Boris Kolpackov | 2 | -131/+278 | |
2020-05-28 | Allow calling certain search_existing() versions during load phase | Boris Kolpackov | 4 | -10/+9 | |
This is necessary for $target.path() implementation. | |||||
2020-05-28 | Regenerate options parsing code | Boris Kolpackov | 1 | -9/+10 | |
2020-05-27 | Add support for value subscript after expansions | Boris Kolpackov | 8 | -84/+210 | |
Value subscript is only recognized in evaluation contexts (due to ambiguity with wildcard patterns; consider: $x[123].txt) and should be unseparated from the previous token. For example: x = ($y[1]) x = (($f ? $y : $z)[1]) x = ($identity($y)[$z]) | |||||
2020-05-27 | Initial support for ad hoc recipes (still work in progress) | Boris Kolpackov | 113 | -8137/+15653 | |
2020-05-27 | Improve ternary diagnostics with info for wildcard pattern escape | Boris Kolpackov | 1 | -2/+13 | |
2020-05-27 | Suppress skip count diagnostics if no progress was requested | Boris Kolpackov | 1 | -2/+5 | |
2020-05-27 | Fix unregistered .regex file cleanup error in testscript | Karen Arutyunov | 1 | -1/+5 | |
2020-05-27 | Amalgamation cutoff support | Boris Kolpackov | 7 | -64/+198 | |
Now a project that disables amalgamation will not logically "see" an outer project even if it's physically inside its scope. | |||||
2020-05-27 | Use location_value in module_state | Boris Kolpackov | 2 | -4/+4 | |
2020-05-22 | Get rid of now deprecated std::is_pod usage | Boris Kolpackov | 2 | -9/+18 | |
2020-05-22 | Fix bug in previous commit | Boris Kolpackov | 1 | -1/+1 | |
2020-05-22 | Make template definition available in all translation units where used | Boris Kolpackov | 5 | -30/+40 | |
We were trying to be clever but GCC 10's IPA-SRA optimization didn't like it. | |||||
2020-05-01 | Fix outstanding issue with directive vs assignment differentiation | Boris Kolpackov | 3 | -16/+42 | |
Specifically, now the following does the right thing: print +foo | |||||
2020-04-30 | Verify path set by {src,out}-root.build files is absolute | Boris Kolpackov | 3 | -35/+55 | |
2020-04-30 | Rename target::member to target::adhoc_member | Boris Kolpackov | 8 | -26/+34 | |
2020-04-30 | Factor recipe to separate header/source files | Boris Kolpackov | 8 | -58/+86 | |
2020-04-27 | Get rid of warnings | Boris Kolpackov | 3 | -21/+32 | |
2020-04-27 | Rework tool importation along with cli module | Boris Kolpackov | 31 | -302/+1380 | |
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-04-27 | Add utility config::{assign,append}_config() functions | Boris Kolpackov | 1 | -1/+43 | |
2020-04-27 | Require explicit variable type in scope::{assign,append}() | Boris Kolpackov | 2 | -30/+44 | |
2020-04-27 | Make rule non-copyable | Boris Kolpackov | 1 | -0/+5 | |
2020-04-27 | Add support for untyped assignment to value | Boris Kolpackov | 2 | -1/+19 | |
2020-04-27 | Add another search_existing() overload | Boris Kolpackov | 2 | -0/+19 | |
2020-04-27 | Don't switch projects when switching scopes during bootstrap | Boris Kolpackov | 5 | -30/+47 | |
2020-04-27 | Add inject() for injecting additional dependencies during match | Boris Kolpackov | 2 | -0/+14 | |
2020-04-27 | Fix assertion failure when name extension pattern is used | Karen Arutyunov | 1 | -0/+4 | |
2020-04-16 | Fix crashing on unhandled io_error thrown by depdb::flush() | Karen Arutyunov | 1 | -0/+9 | |
2020-04-13 | Add ../share/pkgconfig/ search directory by default on Linux | Boris Kolpackov | 2 | -10/+20 | |
2020-04-11 | Pass LC_ALL=C when extracting locale-dependent information in bin module on ↵ | Karen Arutyunov | 2 | -10/+50 | |
POSIX | |||||
2020-04-08 | Allow configuration variables in unnamed projects | Boris Kolpackov | 2 | -13/+40 | |
While generally a bad idea, there are valid situations where this may happen, such as a standalone build of the tests subproject in test-installed. | |||||
2020-04-08 | Document project-specific configuration support | Boris Kolpackov | 2 | -2/+3 | |
2020-04-07 | Pass LC_ALL=C when extracting locale-dependent information on POSIX | Boris Kolpackov | 5 | -26/+117 | |
2020-04-03 | Tweak ~host configuration extraction regex | Boris Kolpackov | 1 | -4/+6 | |
2020-04-03 | Skip unmatched lines in $regex.replace_lines() if format_no_copy flag is ↵ | Karen Arutyunov | 1 | -3/+5 | |
specified | |||||
2020-04-02 | Fix ~host config to only contain cc and bin modules configuration | Boris Kolpackov | 5 | -14/+31 | |
Also add ~build2 that contains everything (except config.dist.*) to be used for build system modules. | |||||
2020-03-31 | Tweak variable patterns not to break overrides | Boris Kolpackov | 1 | -29/+32 | |
2020-03-31 | Fix bug in install_path() call (Windows-specific) | Boris Kolpackov | 1 | -2/+6 | |
2020-03-31 | Handle duplicate config directives for same variable | Boris Kolpackov | 2 | -2/+20 | |
2020-03-31 | Use find instead of insert for variable lookup in install_{path,mode}() | Boris Kolpackov | 1 | -2/+4 | |
2020-03-31 | Switch to project variable visibility by default | Boris Kolpackov | 19 | -248/+289 | |