Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2016-01-05 | Rename build directory/namespace to build2 | Boris Kolpackov | 1 | -312/+0 | |
2015-12-12 | Implement installation of prerequisite shared libraries | Boris Kolpackov | 1 | -2/+16 | |
2015-12-03 | Fix reverse lookup of extension to target type in C++ dep extraction | Boris Kolpackov | 1 | -0/+14 | |
2015-12-02 | Implement optional module loading | Boris Kolpackov | 1 | -6/+15 | |
The syntax is: using? cli Now each module use results in two bool variables: <module>.loaded and <module>.configured. Also implement variable visibility (the above two variables are limited to project). | |||||
2015-12-01 | Use 'extension' variable to resolve extension for file{} | Boris Kolpackov | 1 | -2/+13 | |
We now also check target type/pattern-specific variables. So the new usage is: cli{*}: extension = cli | |||||
2015-12-01 | Implement support for definition target type aliases | Boris Kolpackov | 1 | -2/+4 | |
For example: define cli=file Currently, the semantics is that of a real alias with only name differences that are used for display. See tests/define/buildfile for more use cases. | |||||
2015-08-31 | Rework scoping logic | Boris Kolpackov | 1 | -15/+48 | |
Now the src directory is entered into the scope map and points to the same scope as out. This means that targets that are in src, not out (e.g., source files) will "see" rules, variables, etc. This becomes important when we try, for example, to install a source file (say, a header) from src: we need the rule as well as the install.* variables. | |||||
2015-08-24 | New variable architecture | Boris Kolpackov | 1 | -18/+18 | |
2015-08-14 | Rework meta/operation registration | Boris Kolpackov | 1 | -2/+2 | |
We now have global tables for meta/operation. Plus each can then be enabled on the per-project basis. | |||||
2015-07-29 | Initial support for target type/pattern-specific variables | Boris Kolpackov | 1 | -0/+4 | |
2015-07-14 | Add notion of strong/weak amalgamation, make strong new clean boundary | Boris Kolpackov | 1 | -1/+28 | |
2015-07-08 | Implement automatic amalgamation discovery | Boris Kolpackov | 1 | -8/+2 | |
2015-07-07 | Rework module architecture | Boris Kolpackov | 1 | -4/+37 | |
Now the target type and rule maps are in scopes (builtins -- in global scope). We also now have the map of loaded modules in the root scope of each project. | |||||
2015-06-18 | Move path and filesystem from build2 to libbutl | Boris Kolpackov | 1 | -6/+5 | |
2015-05-25 | Store pointer to map key rather than iterator | Boris Kolpackov | 1 | -5/+3 | |
Clang's libc++ complains about a map iterator instantiation that has an incomplete value. At the same time, it appears that references (and thus pointers) to map elements are also stable. | |||||
2015-05-11 | Correct copyright | Boris Kolpackov | 1 | -1/+1 | |
2015-04-28 | Remove sourcing triggers support for now | Boris Kolpackov | 1 | -17/+0 | |
2015-04-26 | Rework resolved prerequisite targets storage | Boris Kolpackov | 1 | -1/+1 | |
2015-04-20 | Merge config.cxx.* variables into cxx.* when loading cxx module | Boris Kolpackov | 1 | -7/+13 | |
2015-04-15 | New variables architecture | Boris Kolpackov | 1 | -11/+41 | |
Now operator[] is only used for lookup. | |||||
2015-04-15 | Initial library support | Boris Kolpackov | 1 | -3/+6 | |
2015-04-13 | Add separate type to represent directory paths | Boris Kolpackov | 1 | -11/+22 | |
2015-04-13 | Add initial import support | Boris Kolpackov | 1 | -0/+16 | |
2015-04-07 | Initial support for amalgamation/subprojects | Boris Kolpackov | 1 | -3/+7 | |
For now both need to be manually specified in src bootstrap. At this stage main() loads any outer root scopes while include loads any inner. | |||||
2015-04-07 | Provide more convenient access to root scope | Boris Kolpackov | 1 | -16/+20 | |
2015-03-31 | Rename root_scope to global_scope | Boris Kolpackov | 1 | -5/+5 | |
To avoid confusion with project's root scopes. | |||||
2015-03-25 | Configure/disfigure src_root saving/removing support; fsdir{} injection | Boris Kolpackov | 1 | -7/+8 | |
We can now build out-of-tree. | |||||
2015-03-24 | Make meta-operations control build loop; add disfigure skeleton | Boris Kolpackov | 1 | -1/+6 | |
2015-03-20 | New consolidated load/match/build loop | Boris Kolpackov | 1 | -1/+7 | |
2015-03-18 | Implement complete root/base detection, basic module support | Boris Kolpackov | 1 | -1/+18 | |
This is the initial groundwork for the configuration support. | |||||
2015-03-09 | Add support for skipping already loaded/included buildfiles at top level | Boris Kolpackov | 1 | -0/+8 | |
The idea is that a buildfile shall be included/loaded only once for any given out_root. | |||||
2015-03-04 | Move roots and bases to appropriate scopes | Boris Kolpackov | 1 | -5/+5 | |
2015-02-27 | Variable assignment, appending support | Boris Kolpackov | 1 | -3/+12 | |
2015-02-26 | Support for scope parents, initial variable support | Boris Kolpackov | 1 | -9/+22 | |
2015-02-24 | Use prefix_map for scopes, establish root scope | Boris Kolpackov | 1 | -4/+3 | |
2014-12-18 | Initial support for loading dependency info from buildfiles | Boris Kolpackov | 1 | -0/+59 | |
Also a new iteration on the overall architecture. Now, for the first time, build can read the buildfile and build itself. g++-4.9 -std=c++14 -g -I.. -o bd bd.cxx algorithm.cxx scope.cxx parser.cxx lexer.cxx target.cxx prerequisite.cxx rule.cxx native.cxx cxx/target.cxx cxx/rule.cxx process.cxx timestamp.cxx path.cxx g++-4.9 -std=c++14 -g -I../../.. -o driver driver.cxx ../../../build/lexer.cxx g++-4.9 -std=c++14 -g -I../../.. -o driver driver.cxx ../../../build/lexer.cxx ../../../build/parser.cxx ../../../build/scope.cxx ../../../build/target.cxx ../../../build/native.cxx ../../../build/prerequisite.cxx ../../../build/path.cxx ../../../build/timestamp.cxx |