Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2016-11-21 | Change build.driver/path variable to build.path/process_path | Boris Kolpackov | 4 | -4/+4 | |
2016-11-18 | Add function machinery, implement path.normalize() | Boris Kolpackov | 8 | -31/+54 | |
Note that multi-argument functions are not yet "callable" since there is no support for value packs. | |||||
2016-11-15 | Add cat, false and true builtins | Karen Arutyunov | 9 | -11/+86 | |
2016-11-08 | Add mkdir and touch builtins | Karen Arutyunov | 7 | -77/+316 | |
2016-11-04 | Fix Clang and VC warnings | Karen Arutyunov | 1 | -2/+5 | |
2016-11-04 | Implement missing testscript integration tests | Boris Kolpackov | 2 | -39/+49 | |
2016-11-04 | Make rmdir_r() to call entry_exists(path) rather than exists(dir_path) | Karen Arutyunov | 1 | -0/+8 | |
2016-11-04 | Add support for cleanup types to testscript runner | Karen Arutyunov | 1 | -41/+56 | |
2016-11-04 | Check if registered for cleanup path is in test scope working directory | Karen Arutyunov | 1 | -1/+27 | |
2016-11-04 | Add support for &dir/*** test path cleanup syntax | Karen Arutyunov | 1 | -9/+91 | |
2016-11-04 | Implement testscript working directory cleanup | Boris Kolpackov | 1 | -9/+29 | |
2016-11-04 | Update testscripts | Boris Kolpackov | 3 | -9/+23 | |
2016-11-04 | Add support of paths cleanups to testscript runner | Karen Arutyunov | 3 | -1/+28 | |
2016-11-04 | Add support of merge redirect to testscript runner | Karen Arutyunov | 3 | -9/+35 | |
2016-11-04 | Add support of file redirects to testscript runner | Karen Arutyunov | 2 | -3/+11 | |
2016-11-04 | Implement support for testscript scopes | Boris Kolpackov | 1 | -12/+16 | |
2016-11-04 | Add few testscript integration tests | Boris Kolpackov | 1 | -2/+34 | |
2016-11-04 | Add support of file redirects to testscript parser | Karen Arutyunov | 1 | -0/+2 | |
2016-11-04 | Support paths cleanup when test scope is left | Karen Arutyunov | 1 | -0/+4 | |
2016-11-04 | Fix printing no-newline here-doc and here-str | Karen Arutyunov | 2 | -19/+54 | |
2016-11-04 | Add support for setup/teardown commands | Boris Kolpackov | 4 | -1/+39 | |
2016-11-04 | Rename tests/test/script/ to tests/test/script/runner/ | Boris Kolpackov | 4 | -4/+11 | |
2016-11-04 | Change <! and >! syntaxt to <- and >- | Karen Arutyunov | 1 | -2/+2 | |
2016-11-04 | Add couple of testscript tests | Boris Kolpackov | 1 | -12/+16 | |
2016-11-04 | Add support for no-newline redirects in testscript | Boris Kolpackov | 1 | -0/+26 | |
The no-newline operators are '<:', '>:', '<<:', and '>>:'. | |||||
2016-11-04 | Implement concurrent_runner | Boris Kolpackov | 5 | -1/+133 | |
2016-11-04 | When assigning always ignore existing value type | Boris Kolpackov | 2 | -0/+5 | |
For example: x = [uint64] 1 x = a # Ok. | |||||
2016-11-04 | Cosmetic change | Boris Kolpackov | 1 | -1/+1 | |
2016-09-15 | Add io_error alias for std::ios_base::failure | Karen Arutyunov | 1 | -1/+1 | |
2016-08-30 | Add support for using '*' as target type in variable assignment | Boris Kolpackov | 1 | -0/+6 | |
So these three are equivalent: *: foo = 1 {*}: foo = 2 *{*}: foo = 3 | |||||
2016-08-26 | Add pkg-config support for import installed | Boris Kolpackov | 1 | -1/+3 | |
Redesign library importing/exporting while at it. | |||||
2016-08-23 | Update install.* variables in buildfiles | Boris Kolpackov | 2 | -2/+2 | |
2016-08-05 | Implement out-qualified target syntax for setting target-specific vars | Boris Kolpackov | 5 | -0/+11 | |
So now we can do: doc{INSTALL}@./: install = false Note that so far that's the only place where we support out-qualification. Grep for @@ OUT to see other places. | |||||
2016-07-28 | Adjust to new path implementation, use to support reversibility | Boris Kolpackov | 6 | -1/+80 | |
2016-07-22 | Change default var override from 'projects and subprojects' to amalgamation | Boris Kolpackov | 2 | -0/+11 | |
The 'projects and subprojects' semantics resulted in some counter-intuitive behavior. For example, in a project with tests/ as a subproject if one builds one of the tests directly with a non-global override (say C++ compiler), then the main project would be built without the overrides. I this light, overriding in the whole amalgamation seems like the right thing to do. The old behavior can still be obtained with scope qualification, for example: b ./:foo=bar | |||||
2016-07-21 | Add support for single line if-blocks | Boris Kolpackov | 2 | -2/+27 | |
So now we can do: if true print true else print false Instead having to do: if true { print true } else { print false } | |||||
2016-07-20 | Implement support for <, >, <=, >= in eval context | Boris Kolpackov | 4 | -0/+25 | |
Now can write: if ($build.version > 30000) | |||||
2016-07-16 | Add support for prepend/append in target type/pattern-specific vars | Boris Kolpackov | 4 | -0/+70 | |
Semantically, these are similar to variable overrides and are essentially treated as "templates" that are applied on lookup to the "stem" value that is specific to the target type/name. For example: x = [string] a file{f*}: x =+ b sub/: { file{*}: x += c print $(file{foo}:x) # abc print $(file{bar}:x) # ac } | |||||
2016-07-12 | Use ./ instead of just . to denote current directory in buildfiles | Boris Kolpackov | 9 | -10/+10 | |
2016-06-18 | Port to MinGW | Karen Arutyunov | 17 | -20/+75 | |
2016-04-22 | Fix test | Boris Kolpackov | 2 | -2/+2 | |
2016-04-21 | Fix legacy stuff in tests | Boris Kolpackov | 13 | -39/+12 | |
2016-04-21 | Implement short-circuiting to group state | Boris Kolpackov | 1 | -3/+3 | |
This is necessary to get rid of bogus restarts in inject_prerequisites() where it think a group member was updated since its state changed from unknown to (group's) changed. | |||||
2016-04-18 | Add support for using value attributes in eval context | Boris Kolpackov | 4 | -3/+28 | |
For example: if ($x == [null]) Or: if ([uint64] 01 == [uint64] 1) | |||||
2016-04-12 | Add support for scope-qualification of overrides, scope visibility | Boris Kolpackov | 1 | -2/+42 | |
2016-04-06 | Test and fix override logic | Boris Kolpackov | 7 | -0/+366 | |
2016-04-05 | Add support for scope/target-qualified variable expansion | Boris Kolpackov | 3 | -0/+42 | |
For example: print $(dir/:var) print $(file{target}:var) print $(dir/file{target}:var) Note that if the scope/target does not (yet) exists, it will be created. | |||||
2016-04-04 | Implement value typing, null support via value attributes | Boris Kolpackov | 5 | -4/+104 | |
For example: v = [null] v = [string] abc v += ABC # abcABC | |||||
2016-04-02 | Implement variable typing (via attributes) | Boris Kolpackov | 3 | -0/+26 | |
Now we can do: [string] str = foo | |||||
2016-04-02 | Add attribute syntax infrastructure | Boris Kolpackov | 10 | -10/+31 | |