aboutsummaryrefslogtreecommitdiff
path: root/build/parser.cxx
AgeCommit message (Collapse)AuthorFilesLines
2015-03-02Implement variable expansionBoris Kolpackov1-17/+178
2015-03-02Indicate whether token is separated from previous one by whitespacesBoris Kolpackov1-1/+1
2015-03-02Clean up clang warningsBoris Kolpackov1-7/+8
2015-02-27Variable assignment, appending supportBoris Kolpackov1-17/+101
2015-02-24Use prefix_map for scopes, establish root scopeBoris Kolpackov1-5/+20
2015-02-23Redo rule match/build logicBoris Kolpackov1-6/+6
Now the rule is fully responsible for searching, matching, and building of prerequisites.
2015-02-20Get rid of parse_ prefix in parser function namesBoris Kolpackov1-21/+21
2015-02-20Rework extension handling logicBoris Kolpackov1-6/+6
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-02-19Add support for sourcing/including buildfiles, print, dir{} aliasBoris Kolpackov1-91/+343
2015-01-20Diagnostic infrastructure revampBoris Kolpackov1-58/+29
2015-01-16Add support for directory prefixesBoris Kolpackov1-15/+53
For example: cxx{driver ../{foo bar}} cxx{driver} ../cxx{foo bar}
2015-01-16Implement rule chaining for cxx::linkBoris Kolpackov1-58/+5
2015-01-14Track file extension in target, prerequisiteBoris Kolpackov1-8/+76
2015-01-08Implement tracing supportBoris Kolpackov1-0/+1
Also use to-relative path translation in diagnostics.
2014-12-18Initial support for loading dependency info from buildfilesBoris Kolpackov1-19/+155
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-15Parse directory scopesBoris Kolpackov1-36/+119
2014-12-12Initial buildfile parser implementationBoris Kolpackov1-0/+167
g++-4.9 -std=c++14 -g -I../../.. -o driver driver.cxx ../../../build/lexer.cxx ../../../build/parser.cxx && ./driver