aboutsummaryrefslogtreecommitdiff
path: root/build/cxx/target.cxx
AgeCommit message (Collapse)AuthorFilesLines
2015-12-03Use 'extension' variable for cxx target types, .*xx extensions by defaultBoris Kolpackov1-12/+14
One can also do: define cpp: cxx cpp{*}: extension = cpp cpp{foo}: # foo.cpp
2015-12-02Redo extension derivation for file{}, doc{}, and cli{}Boris Kolpackov1-6/+6
We now first check the 'extension' variable, then use the default.
2015-12-01Reimplement define as dynamic derivation rather than aliasBoris Kolpackov1-18/+6
New syntax: define cli: file The rationale is we need to be able to assign the file extension (using type/pattern-specific variables). And if it is an alias, we will assign it to the original target type. Note that we could still support aliases if we need to. Will need to bring back the id member in target_type that would normally point to itself but for an alias would point to the origin.
2015-12-01Implement support for definition target type aliasesBoris Kolpackov1-6/+12
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-07-01Cleanup group "see through" designBoris Kolpackov1-6/+12
2015-06-24First take on the cli module plus necessary infrastructureBoris Kolpackov1-0/+12
2015-05-22Avoid relying on static initialization orderBoris Kolpackov1-6/+6
2015-05-11Correct copyrightBoris Kolpackov1-1/+1
2015-02-23Redo rule match/build logicBoris Kolpackov1-12/+48
Now the rule is fully responsible for searching, matching, and building of prerequisites.
2015-01-16Implement rule chaining for cxx::linkBoris Kolpackov1-0/+6
2014-12-18Initial support for loading dependency info from buildfilesBoris Kolpackov1-5/+10
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-10Add rulesBoris Kolpackov1-0/+20
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