aboutsummaryrefslogtreecommitdiff
path: root/build/cxx
AgeCommit message (Collapse)AuthorFilesLines
2015-04-26Cleanup cxx.link ruleBoris Kolpackov1-15/+1
2015-04-26Rework resolved prerequisite targets storageBoris Kolpackov1-145/+56
2015-04-24Take one on library linkingBoris Kolpackov1-30/+138
2015-04-24Implement lib/liba/libso{} target group, shared/static library buildBoris Kolpackov3-169/+195
2015-04-20Merge config.cxx.* variables into cxx.* when loading cxx moduleBoris Kolpackov2-14/+13
2015-04-20Automatically decide when to print relative/absolute pathsBoris Kolpackov2-4/+4
2015-04-17Improve diagnosticsBoris Kolpackov1-1/+2
2015-04-17Add support for target groups, use to handle obj/obja/objso object targetsBoris Kolpackov2-96/+149
2015-04-15New variables architectureBoris Kolpackov2-26/+16
Now operator[] is only used for lookup.
2015-04-15Initial library supportBoris Kolpackov1-36/+66
2015-04-13Add separate type to represent directory pathsBoris Kolpackov2-6/+6
2015-04-08Inherit list_value directly from namesBoris Kolpackov1-1/+1
2015-04-08Distinguish between undefined and null variablesBoris Kolpackov1-22/+38
2015-04-08Clarify commentBoris Kolpackov1-2/+2
2015-04-08Get rid of need to store scope in variable valueBoris Kolpackov1-5/+5
2015-04-07Provide more convenient access to root scopeBoris Kolpackov1-26/+30
2015-04-02Handle "nothing to be done" case for disfigureBoris Kolpackov1-1/+1
2015-04-01Warn about configured/command line value mismatchBoris Kolpackov1-1/+11
Also store configured but unspecified values
2015-04-01Implement initial C++ configuration supportBoris Kolpackov3-26/+261
2015-03-27Rework dependency state dump supportBoris Kolpackov1-4/+4
We now have a combined (scopes, variables, and targets) dump.
2015-03-25Configure/disfigure src_root saving/removing support; fsdir{} injectionBoris Kolpackov1-8/+19
We can now build out-of-tree.
2015-03-12Implement clean operationBoris Kolpackov2-29/+71
2015-03-10Further operation implementationBoris Kolpackov2-26/+26
2015-03-04Move roots and bases to appropriate scopesBoris Kolpackov1-6/+23
2015-03-02Clean up clang warningsBoris Kolpackov1-3/+3
2015-02-23Rename "select" to "apply"Boris Kolpackov2-5/+5
2015-02-23Redo rule match/build logicBoris Kolpackov2-160/+147
Now the rule is fully responsible for searching, matching, and building of prerequisites.
2015-02-20Rename 'directory' to 'dir' in target, prerequisiteBoris Kolpackov1-6/+6
2015-02-20Rework extension handling logicBoris Kolpackov1-0/+4
We no longer support hxx{vector.}. Rather, the target type can decide, e.g., based on a config variable, whether to append an extension. Also, in the future we may support a syntax to specify that this is a complete name, e.g., hxx{'vector'}.
2015-01-20Diagnostic infrastructure revampBoris Kolpackov1-42/+34
2015-01-16Implement rule chaining for cxx::linkBoris Kolpackov4-54/+195
2015-01-15Implement rule ambiguity detectionBoris Kolpackov2-4/+4
Also establish the infrastructure for rule hinting
2015-01-14Track file extension in target, prerequisiteBoris Kolpackov1-3/+24
2015-01-08Implement tracing supportBoris Kolpackov1-10/+46
Also use to-relative path translation in diagnostics.
2014-12-18Initial support for loading dependency info from buildfilesBoris Kolpackov4-48/+108
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
2014-12-11Improve diagnostics and error handlingBoris Kolpackov2-26/+31
g++-4.9 -std=c++14 -g -I.. -o bd bd.cxx target.cxx native.cxx rule.cxx cxx/rule.cxx cxx/target.cxx process.cxx timestamp.cxx path.cxx
2014-12-11Initial implementation of dependency injection (g++ -M output)Boris Kolpackov2-3/+150
2014-12-10Add rulesBoris Kolpackov4-0/+372
g++-4.9 -std=c++11 -g -I.. -o bd bd.cxx target.cxx native.cxx rule.cxx cxx/rule.cxx cxx/target.cxx process.cxx timestamp.cxx path.cxx