Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2022-04-06 | Add support for rule hints | Boris Kolpackov | 3 | -7/+7 | |
A rule hint is a target attribute, for example: [rule_hint=cxx] exe{hello}: c{hello} Rule hints can be used to resolve ambiguity when multiple rules match the same target as well as to override an unambiguous match. | |||||
2022-03-07 | Fix operation-specific variables logic for inner/outer operations | Boris Kolpackov | 1 | -1/+1 | |
2022-03-02 | Add update operation-specific variable with unmatch|match additional values | Boris Kolpackov | 1 | -0/+2 | |
Note that the unmatch (match but do not update) and match (update during match) values are only supported by certain rules (and potentially only for certain prerequisite types). Additionally: - All operation-specific variables are now checked for false as an override for the prerequisite-specific include value. In particular, this can now be used to disable a prerequisite for update, for example: ./: exe{test}: update = false - The cc::link_rule now supports the update=match value for headers and ad hoc prerequisites. In particular, this can be used to make sure all the library headers are updated before matching any of its (or dependent's) object files. | |||||
2022-02-21 | Factor process-wide initialization to init_process() function | Boris Kolpackov | 1 | -1/+1 | |
2022-02-16 | Invent quoting modes for to_stream(name) | Karen Arutyunov | 1 | -1/+1 | |
2022-02-11 | Remove unnecessary header inclusions | Boris Kolpackov | 1 | -0/+2 | |
2022-02-10 | Make few global types separately constructible/initializable | Boris Kolpackov | 1 | -1/+1 | |
2021-12-16 | Pass context to (meta-)operation hooks | Boris Kolpackov | 1 | -3/+6 | |
2021-10-14 | Disable re-parse of sole expansions in Buildscript | Boris Kolpackov | 1 | -1/+1 | |
2021-09-24 | Fortify tests against NDEBUG | Karen Arutyunov | 2 | -2/+6 | |
2021-06-21 | Add support for automatic generation of symbol exporting .def file | Boris Kolpackov | 2 | -5/+2 | |
2021-05-28 | Recognize quoting of first character in token | Boris Kolpackov | 1 | -3/+2 | |
Use this to relax the pattern inclusion/exclusion syntax to only require unquoted +/-. | |||||
2021-05-28 | Add pattern_mode::ignore and use in appropriate places | Boris Kolpackov | 1 | -1/+1 | |
2021-04-07 | Register environment variables for hermetic build configurations | Boris Kolpackov | 1 | -0/+6 | |
2021-03-18 | Add noop mode to file cache, add --file-cache option to select | Boris Kolpackov | 1 | -1/+1 | |
2021-03-16 | Define intermediate build results file cache interface | Boris Kolpackov | 1 | -1/+3 | |
2021-01-30 | Add std::{map, multimap} to types.hxx | Boris Kolpackov | 1 | -0/+1 | |
Seeing that std::map is becoming a common Buildfile variable type. | |||||
2020-12-15 | Cache more results of executing programs (compilers, etc) | Boris Kolpackov | 1 | -0/+2 | |
2020-12-11 | Add export script pseudo-builtin | Karen Arutyunov | 3 | -1/+16 | |
2020-12-11 | Copy parent scope's test program list in runner's entry() function rather ↵ | Karen Arutyunov | 3 | -30/+29 | |
than in scope's constructor | |||||
2020-12-11 | Fix set pseudo-builtin to reset special variables when required | Karen Arutyunov | 3 | -10/+19 | |
2020-12-11 | Prefix pseudo-builtin diagnostincs messages with their names | Karen Arutyunov | 1 | -5/+9 | |
2020-12-08 | Add support for config.test.runner | Karen Arutyunov | 9 | -14/+218 | |
2020-11-23 | Increase terminated process timeout from 1 to 2 sec before killing it on ↵ | Karen Arutyunov | 1 | -3/+3 | |
script pipeline termination | |||||
2020-11-06 | Fix mistreating test operation timeout as test timeout in some case | Karen Arutyunov | 1 | -1/+1 | |
2020-11-06 | Add support for test timeouts | Karen Arutyunov | 10 | -24/+511 | |
2020-10-20 | Add operation callback for adhoc rule match and apply | Boris Kolpackov | 1 | -1/+5 | |
2020-08-16 | Add ability to initialize bootstrapped modules after loading root.build | Boris Kolpackov | 1 | -3/+1 | |
2020-08-04 | Fix 'target.path() called out of scope' testscript error | Karen Arutyunov | 1 | -0/+7 | |
2020-08-03 | Fix buildscript diagnostics so diff output is always in unified format | Karen Arutyunov | 1 | -1/+16 | |
Also make sure diff refers program stdout as 'stdout' rather than '-' in the test rule diagnostics. | |||||
2020-07-13 | Add ability to extend rule interface in source-compatible manner | Boris Kolpackov | 1 | -1/+1 | |
2020-07-10 | Tweak rule names | Boris Kolpackov | 1 | -1/+1 | |
2020-07-09 | Make sure update-for-{test,install} works for files out of any project | Boris Kolpackov | 1 | -2/+12 | |
2020-07-09 | Relax prerequisite filtering semantics of aliases in test and install rules | Boris Kolpackov | 1 | -1/+9 | |
2020-06-20 | Fix assertion failure for unbound 'end' in testscript | Karen Arutyunov | 3 | -8/+36 | |
Issue #83. | |||||
2020-06-18 | Add env script pseudo-builtin | Karen Arutyunov | 1 | -0/+77 | |
Also disable C++ recipe tests when cross-testing. | |||||
2020-06-10 | Handle special variable names in base lexer via mode data | Boris Kolpackov | 2 | -27/+22 | |
2020-06-03 | Allow process path values and targets as buildscript program names | Karen Arutyunov | 1 | -1/+1 | |
Also deduce the recipe name. | |||||
2020-05-27 | Add support for value subscript after expansions | Boris Kolpackov | 1 | -8/+7 | |
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 | 26 | -8115/+412 | |
2020-05-27 | Fix unregistered .regex file cleanup error in testscript | Karen Arutyunov | 1 | -1/+5 | |
2020-05-22 | Get rid of now deprecated std::is_pod usage | Boris Kolpackov | 1 | -2/+4 | |
2020-03-31 | Switch to project variable visibility by default | Boris Kolpackov | 2 | -15/+12 | |
2020-03-17 | Rename all find*(variable) to lookup*(variable) | Boris Kolpackov | 3 | -21/+23 | |
Now we consistently use term "lookup" for variable value lookup. At some point we should also rename type lookup to binding and get rid of all the lookup_type aliases. | |||||
2020-03-17 | Rework config::{omitted,required,optional}() into unified config_lookup() | Boris Kolpackov | 1 | -3/+4 | |
2020-03-12 | Minor comment improvements | Boris Kolpackov | 1 | -1/+1 | |
2020-02-27 | Revert recent Clang optimization bug workaround as it doesn't help | Karen Arutyunov | 1 | -7/+3 | |
2020-02-26 | Try to work around Clang optimization bug | Karen Arutyunov | 1 | -3/+7 | |
2020-02-12 | Adapt to renaming butl::fdnull() to fdopen_null() | Karen Arutyunov | 1 | -2/+2 | |
2020-02-12 | Add builtins support for $process.run*() functions | Karen Arutyunov | 1 | -43/+10 | |