Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2021-05-28 | Add support for regex-based target type/pattern specific variables | Boris Kolpackov | 1 | -0/+127 | |
This is in addition to the already supported path-based target type/pattern specific variables. For example: hxx{*}: x = y # path-based hxx{~/.*/}: x = y # regex-based | |||||
2021-05-28 | Ban conversion of patterns to values | Boris Kolpackov | 3 | -2/+5 | |
Also improve conversion diagnostic. | |||||
2021-04-21 | Add buildscript depdb builtin 'env' command | Karen Arutyunov | 1 | -0/+62 | |
2021-04-20 | Disable bunch of bogus GCC warnings | Boris Kolpackov | 1 | -0/+2 | |
2021-03-22 | Fix tests to work for compressed file cache entries | Boris Kolpackov | 1 | -1/+1 | |
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-02-11 | Improve module name to file name matching logic | Boris Kolpackov | 1 | -0/+3 | |
2021-02-11 | Update header unit tests | Boris Kolpackov | 1 | -4/+4 | |
2021-01-12 | Diagnose typed and project-qualified empty names | Boris Kolpackov | 1 | -1/+0 | |
2020-12-14 | Make use of export testscript builtin | Karen Arutyunov | 1 | -5/+7 | |
2020-12-14 | Make export script builtin tests more robust | Karen Arutyunov | 1 | -0/+5 | |
2020-12-11 | Add export script pseudo-builtin | Karen Arutyunov | 3 | -4/+170 | |
2020-12-11 | Copy parent scope's test program list in runner's entry() function rather ↵ | Karen Arutyunov | 1 | -3/+29 | |
than in scope's constructor | |||||
2020-12-11 | Fix set pseudo-builtin to reset special variables when required | Karen Arutyunov | 1 | -0/+9 | |
2020-12-11 | Prefix pseudo-builtin diagnostincs messages with their names | Karen Arutyunov | 3 | -12/+12 | |
2020-12-08 | Redo $normalize(true) as separate $actualize() | Karen Arutyunov | 1 | -9/+12 | |
2020-12-08 | Add support for config.test.runner | Karen Arutyunov | 3 | -2/+107 | |
2020-12-08 | Fix buildscript assertion failure on redirecting command stderr to stdout | Karen Arutyunov | 1 | -0/+23 | |
2020-12-02 | Add support for buildscript depdb preamble | Karen Arutyunov | 2 | -19/+304 | |
2020-11-30 | Start adapting module mapper to latest GCC protocol | Boris Kolpackov | 2 | -0/+10 | |
2020-11-19 | Remove target files on ad hoc rule update buildscript error | Karen Arutyunov | 1 | -13/+60 | |
2020-11-19 | Fix set buildscript builtin crash on Windows | Karen Arutyunov | 1 | -1/+8 | |
2020-11-17 | Generalize dot escaping in target name rules | Boris Kolpackov | 1 | -20/+223 | |
Now triple dot and escape sequence can appear almost anywhere in the target name (see target::split_name() for details). | |||||
2020-11-06 | Fix mistreating test operation timeout as test timeout in some case | Karen Arutyunov | 1 | -4/+8 | |
2020-11-06 | Add support for test timeouts | Karen Arutyunov | 9 | -22/+888 | |
2020-09-28 | Add $string.trim() function | Boris Kolpackov | 1 | -0/+7 | |
2020-08-03 | Fix buildscript diagnostics so diff output is always in unified format | Karen Arutyunov | 1 | -0/+22 | |
Also make sure diff refers program stdout as 'stdout' rather than '-' in the test rule diagnostics. | |||||
2020-07-18 | Add $regex.find_match() and $regex.find_search() functions | Karen Arutyunov | 1 | -0/+84 | |
2020-07-16 | Save original compiler path/mode in {c,cxx}.config.path/mode | Boris Kolpackov | 4 | -4/+4 | |
It turns out that when propagating {c,cxx}.config in tests we don't want to propagate any options (such as *.std) that have been folded into our project's mode. | |||||
2020-07-06 | Adjust variable block applicability in dependency chains | Boris Kolpackov | 2 | -0/+95 | |
Before the block used to apply to the set of prerequisites before the last `:`. This turned out to be counterintuitive and not very useful since prerequisite-specific variables are a lot less common than target specific. And it doesn't fit with ad hoc recipes. The new rule is if the chain ends with `:`, then the block applies to the last set of prerequisites. Otherwise, it applies to the last set of targets. For example: ./: exe{test}: cxx{main} { test = true # Applies to the exe{test} target. } ./: exe{test}: libue{test}: { bin.whole = false # Applies to the libue{test} prerequisite. } This is actually consistent with both non-chain and non-block cases. Consider: exe{test}: cxx{main} { test = true } exe{test}: libue{test}: { bin.whole = false } exe{test}: libue{test}: bin.whole = false The only exception we now have in this overall approach of "if the dependency declaration ends with a colon, then what follows is for a prerequisite" is for the first semicolon: exe{test}: { test = true } exe{test}: test = true But that's probably intuitive enough since there cannot be a prerequisite without a target. | |||||
2020-06-24 | Stop forcing modules support in tests | Boris Kolpackov | 1 | -15/+0 | |
2020-06-19 | Adapt mv builtin tests to terminology change | Karen Arutyunov | 1 | -1/+1 | |
2020-06-18 | Add env script pseudo-builtin | Karen Arutyunov | 4 | -143/+159 | |
Also disable C++ recipe tests when cross-testing. | |||||
2020-06-16 | Add metadata for exe{b}, including whether it is statically-linked | Boris Kolpackov | 3 | -1/+11 | |
Use this information to omit ad hoc C++ recipe tests is testing statically- linked build system. | |||||
2020-06-12 | Fix invalid regex in C++ recipe tests | Boris Kolpackov | 1 | -2/+2 | |
2020-06-11 | Add tests for ad hoc C++ recipes | Boris Kolpackov | 3 | -9/+168 | |
2020-06-10 | Add ad hoc recipe if-else, switch tests (and fix bug) | Boris Kolpackov | 1 | -0/+149 | |
2020-06-08 | Add buildscript recipe tests | Karen Arutyunov | 2 | -0/+100 | |
2020-06-08 | Cleanup script command failure diagnostics | Karen Arutyunov | 4 | -3/+12 | |
2020-06-05 | Add depdb buildscript builtin | Karen Arutyunov | 1 | -0/+1 | |
2020-06-05 | Add ability to specify ad hoc recipe actions | Boris Kolpackov | 1 | -38/+70 | |
We are reusing the buildspec syntax for that. | |||||
2020-06-04 | Properly handle diag directive in build script parser | Karen Arutyunov | 1 | -3/+4 | |
2020-06-03 | Allow process path values and targets as buildscript program names | Karen Arutyunov | 1 | -39/+297 | |
Also deduce the recipe name. | |||||
2020-06-03 | Add versioning for ad hoc C++ recipes | Boris Kolpackov | 1 | -2/+2 | |
This will allow us to deal with backward-incompatible changes to cxx_rule interface and semantics. | |||||
2020-05-27 | Add support for value subscript after expansions | Boris Kolpackov | 2 | -1/+98 | |
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 | 8 | -39/+538 | |
2020-05-01 | Fix outstanding issue with directive vs assignment differentiation | Boris Kolpackov | 1 | -0/+23 | |
Specifically, now the following does the right thing: print +foo | |||||
2020-04-03 | Skip unmatched lines in $regex.replace_lines() if format_no_copy flag is ↵ | Karen Arutyunov | 1 | -0/+20 | |
specified | |||||
2020-03-31 | Handle duplicate config directives for same variable | Boris Kolpackov | 1 | -1/+9 | |