Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2023-06-12 | Hack around GCC 13 -Wdangling-reference false positives | Boris Kolpackov | 1 | -6/+6 | |
See GCC bugs 107532, 110213. | |||||
2023-05-09 | Add support for dumping build system state in JSON format (GH issue #182) | Boris Kolpackov | 1 | -1/+3 | |
Specifically: 1. New --dump-format option. Valid values are `buildfile` and `json-v0.1`. 2. The --dump option now recognizes two additional values: `match-pre` and `match-post` to dump the state of pre/post-operations. The `match` value now only triggers dumping of the main operation. | |||||
2023-03-02 | Replace deprecated std::aligned_storage with alignas | Boris Kolpackov | 1 | -3/+4 | |
Based on patch by Matthew Krupcale. | |||||
2022-12-15 | Add noexcept to move constructors and move assignment operators | Karen Arutyunov | 1 | -3/+9 | |
2022-12-14 | Improve empty simple value to empty list of names reduction heuristics | Boris Kolpackov | 1 | -10/+18 | |
Specifically, do not reduce typed RHS empty simple values for prepend/append and additionally for assignment provided LHS is typed and is a container. | |||||
2022-11-30 | Reserve targets, variables to avoid rehashing | Boris Kolpackov | 1 | -0/+19 | |
2022-10-13 | Work around Clang 6, 7 codegen issues | Boris Kolpackov | 1 | -1/+0 | |
2022-10-13 | Fix couple of corner cases in public/private variable model | Boris Kolpackov | 1 | -2/+2 | |
2022-10-13 | Add visibility, overridable variable attributes | Boris Kolpackov | 1 | -0/+3 | |
2022-10-13 | Switch to public/private variables model | Boris Kolpackov | 1 | -2/+9 | |
Now unqualified variables are project-private and can be typified. | |||||
2022-10-11 | Factor variable patterns out of variable_pool into separate variable_patterns | Boris Kolpackov | 1 | -67/+131 | |
We have patterns only for the public variables pool. | |||||
2022-10-10 | Preparatory work for public/private variable distinction | Boris Kolpackov | 1 | -32/+107 | |
We still always use the public var_pool from context but where required, all access now goes through scope::var_pool(). | |||||
2022-10-10 | Use term shared instead of global for scope, var pool, etc | Boris Kolpackov | 1 | -18/+20 | |
2022-07-07 | Use new cmdline type for canned command lines in {Build,Test}script | Boris Kolpackov | 1 | -0/+29 | |
2022-07-05 | Recognize special .for_install variable suffix in library user metadata | Boris Kolpackov | 1 | -1/+16 | |
2022-06-03 | Reset value::extra on variable_map value change/version increment | Boris Kolpackov | 1 | -4/+15 | |
The reset on each modification semantics is used to implement the default value distinction as currently done in the config module but later probably will be done for ?= and $origin(). | |||||
2022-06-03 | Add another variable_map::insert() overload | Boris Kolpackov | 1 | -0/+6 | |
2022-05-23 | Add ability to iterate over variable pool | Boris Kolpackov | 1 | -7/+14 | |
2022-05-22 | Add support for variable patterns in config.config.disfigure | Boris Kolpackov | 1 | -0/+3 | |
2022-03-29 | Add variable_map::lookup_namespace(string) overload | Boris Kolpackov | 1 | -0/+10 | |
2021-09-28 | Adapt to libbutl headers extension change from .mxx to .hxx | Karen Arutyunov | 1 | -2/+2 | |
2021-09-02 | Don't consider aliasing in variable override lookup | Boris Kolpackov | 1 | -3/+5 | |
2021-07-23 | Remove duplicate friend declaration to make GCC 4.9 happy | Boris Kolpackov | 1 | -2/+0 | |
2021-07-23 | Reserve variable names/components that start with underscore to build2 core | Boris Kolpackov | 1 | -10/+13 | |
2021-06-21 | Add support for automatic generation of symbol exporting .def file | Boris Kolpackov | 1 | -2/+1 | |
2021-05-28 | Add support for regex-based target type/pattern specific variables | Boris Kolpackov | 1 | -4/+60 | |
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 | 1 | -0/+2 | |
Also improve conversion diagnostic. | |||||
2021-05-28 | Tie loose ends in target type/pattern-specific matching | Boris Kolpackov | 1 | -1/+1 | |
2021-05-28 | Make notion of name pattern explicit, fix various related loose ends | Boris Kolpackov | 1 | -2/+2 | |
2021-04-20 | Detect environment changes in ad hoc recipes | Boris Kolpackov | 1 | -2/+2 | |
2021-04-04 | Add base functionality for hermetic build configurationshermetic | Boris Kolpackov | 1 | -7/+12 | |
2021-02-09 | Minor simplification | Boris Kolpackov | 1 | -1/+1 | |
2021-01-30 | Add std::{map, multimap} to types.hxx | Boris Kolpackov | 1 | -11/+10 | |
Seeing that std::map is becoming a common Buildfile variable type. | |||||
2021-01-28 | Make std::map prepend (=+) overriding (like insert_or_assign()) | Boris Kolpackov | 1 | -5/+19 | |
2021-01-22 | Add support for optional pair halves in variable values | Boris Kolpackov | 1 | -31/+91 | |
2020-11-11 | Make value_traits<bool>::convert() non-modifying | Boris Kolpackov | 1 | -1/+4 | |
2020-08-24 | Add copying version of convert<T>(value) | Boris Kolpackov | 1 | -0/+6 | |
2020-08-12 | Add int64 and int64s variable types | Boris Kolpackov | 1 | -2/+34 | |
2020-08-11 | Add another variable_pool::insert() overload | Boris Kolpackov | 1 | -0/+9 | |
2020-06-09 | Make metadata variable prefix mandatory | Boris Kolpackov | 1 | -1/+4 | |
While we could automatically set it if the target is imported, there is nothing we can do if the target is used in the same project. So to avoid confusion we make it mandatory. | |||||
2020-06-03 | Fix $process.run() to properly handle proces_path_ex | Karen Arutyunov | 1 | -4/+10 | |
2020-06-03 | Get rid of remaining typedef's | Boris Kolpackov | 1 | -1/+1 | |
2020-06-02 | Add process_path_ex with program stable name and checksum | Boris Kolpackov | 1 | -2/+22 | |
2020-04-30 | Verify path set by {src,out}-root.build files is absolute | Boris Kolpackov | 1 | -2/+2 | |
2020-04-27 | Add support for untyped assignment to value | Boris Kolpackov | 1 | -1/+3 | |
2020-03-31 | Switch to project variable visibility by default | Boris Kolpackov | 1 | -26/+22 | |
2020-03-19 | Tweak lookup_config() semantics some more | Boris Kolpackov | 1 | -4/+8 | |
2020-03-18 | Cleanup variable type/visibility/overridability logic | Boris Kolpackov | 1 | -8/+18 | |
2020-03-18 | Add $visibility(<variable>) function for querying variable visibility | Boris Kolpackov | 1 | -2/+8 | |
2020-03-17 | Rename all find*(variable) to lookup*(variable) | Boris Kolpackov | 1 | -10/+12 | |
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. |