Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2016-08-17 | Allow expansion of undefined/NULL namespace variables | Boris Kolpackov | 1 | -2/+4 | |
This restriction is not proving to get in the way. | |||||
2016-08-10 | Add ignore case support for find_option() | Karen Arutyunov | 1 | -2/+1 | |
2016-08-05 | Implement out-qualified target syntax for setting target-specific vars | Boris Kolpackov | 1 | -17/+54 | |
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-08-05 | Merge 'value' and 'pairs' lexer_mode, call it 'value' | Boris Kolpackov | 1 | -24/+24 | |
We only really used pairs. | |||||
2016-08-02 | Optimize out path::normalize() calls | Boris Kolpackov | 1 | -7/+24 | |
2016-07-28 | Adjust to new path implementation, use to support reversibility | Boris Kolpackov | 1 | -34/+21 | |
2016-07-25 | Only do "effective escaping" (['"\$(]) on the command line | Boris Kolpackov | 1 | -1/+4 | |
This will make things more convenient on Windows provided we use "sane" paths (no spaces, no (), etc). | |||||
2016-07-23 | Adapt to fdstream extension | Karen Arutyunov | 1 | -17/+6 | |
2016-07-21 | Add support for single line if-blocks | Boris Kolpackov | 1 | -23/+50 | |
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 | Switch to dynamic empty() implementation in variable value | Boris Kolpackov | 1 | -16/+20 | |
The current model fell apart when we modified values directly. | |||||
2016-07-20 | Implement support for <, >, <=, >= in eval context | Boris Kolpackov | 1 | -16/+60 | |
Now can write: if ($build.version > 30000) | |||||
2016-07-16 | Add support for prepend/append in target type/pattern-specific vars | Boris Kolpackov | 1 | -12/+84 | |
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-06-27 | Add config.bin.target var/hint, use to decide libso{} install mode | Boris Kolpackov | 1 | -2/+2 | |
Normally the user doesn't need to specify config.bin.target explicitly since the cxx module will hint it. We now also have the whole set of target's components: bin.target.{cpu,vendor,system,version,class} | |||||
2016-06-26 | Minor module interface cleanups | Boris Kolpackov | 1 | -1/+1 | |
2016-06-26 | Add notion of ad hoc group, use to handle DLL/import library | Boris Kolpackov | 1 | -46/+1 | |
2016-06-18 | Port to MinGW | Karen Arutyunov | 1 | -7/+20 | |
2016-06-03 | Treat trailing backslash as directory indicator | Boris Kolpackov | 1 | -13/+36 | |
Note that with this change we broke reversibility for such names, i.e., 'foo\' name will be reversed to 'foo/'. | |||||
2016-04-23 | Revert back to using root scope in src_out()/out_src() | Boris Kolpackov | 1 | -1/+1 | |
Relaxing it to base was not wise since we can have "sideways" prerequisites (those from parallel directories such as brep's ../web/*). | |||||
2016-04-19 | Redesign src/out scoping | Boris Kolpackov | 1 | -19/+54 | |
We no longer enter paths from the src tree into scope map. Instead, targets from the src tree now include their out tree directory (in essence their "configuration"). This is then used to find a target's scope. See the comment in class target for details. The result of this change is that we can now again build multiple configurations (out trees) for same project at once. | |||||
2016-04-18 | Add support for using value attributes in eval context | Boris Kolpackov | 1 | -174/+271 | |
For example: if ($x == [null]) Or: if ([uint64] 01 == [uint64] 1) | |||||
2016-04-11 | New configuration logic, iteration 1 | Boris Kolpackov | 1 | -3/+2 | |
2016-04-09 | Add abs_dir_path type, auto-complete if initialized from names | Boris Kolpackov | 1 | -10/+11 | |
2016-04-05 | Add support for scope/target-qualified variable expansion | Boris Kolpackov | 1 | -91/+160 | |
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-05 | Make name::pair char again | Boris Kolpackov | 1 | -2/+12 | |
The plan is to represent scope/target-qualified variables as ':'-style pairs. | |||||
2016-04-04 | Implement value typing, null support via value attributes | Boris Kolpackov | 1 | -128/+306 | |
For example: v = [null] v = [string] abc v += ABC # abcABC | |||||
2016-04-02 | Implement variable typing (via attributes) | Boris Kolpackov | 1 | -19/+77 | |
Now we can do: [string] str = foo | |||||
2016-04-02 | Add attribute syntax infrastructure | Boris Kolpackov | 1 | -25/+141 | |
2016-04-01 | Allow specifying scope in target type/pattern-specific variable assignment | Boris Kolpackov | 1 | -38/+43 | |
For example: tests/exe{*}: test = true | |||||
2016-03-31 | Set part of variable override implementation | Boris Kolpackov | 1 | -0/+14 | |
2016-03-30 | Minor parser interface rework | Boris Kolpackov | 1 | -12/+11 | |
2016-03-28 | New variable architecture | Boris Kolpackov | 1 | -15/+21 | |
2016-03-28 | Add support for pair representation reversibility | Boris Kolpackov | 1 | -1/+1 | |
2016-03-28 | Change pairs semantics from separated to unseparated | Boris Kolpackov | 1 | -14/+29 | |
Before we use to recognize 'x @ y' as a pair. Now it has to be written unseparated, as 'x@y'. See tests/pairs for details on the new semantics. | |||||
2016-03-28 | Enable @-delimited pairs mode everywhere | Boris Kolpackov | 1 | -41/+102 | |
2016-02-29 | Rename level[1-6]() to l[1-6]() | Boris Kolpackov | 1 | -9/+9 | |
2016-02-12 | <types>/<utility> scheme cleanup | Boris Kolpackov | 1 | -6/+0 | |
2016-01-24 | Differentiate extension printing according to stream verbosity | Boris Kolpackov | 1 | -3/+2 | |
2016-01-24 | If base target type doesn't use extensions, don't use them in derived | Boris Kolpackov | 1 | -2/+6 | |
2016-01-24 | Fix bug in dynamically derived target types | Boris Kolpackov | 1 | -1/+8 | |
2016-01-23 | Cleanup absolute/relative path diagnostics by introducing stream verbosity | Boris Kolpackov | 1 | -13/+13 | |
2016-01-21 | Add support for ==, != in eval context | Boris Kolpackov | 1 | -3/+42 | |
2016-01-21 | Rename equal token to assign, etc | Boris Kolpackov | 1 | -16/+10 | |
2016-01-09 | Update copyright year | Boris Kolpackov | 1 | -1/+1 | |
2016-01-05 | Rename build directory/namespace to build2 | Boris Kolpackov | 1 | -0/+2206 | |