aboutsummaryrefslogtreecommitdiff
path: root/build/rule.cxx
AgeCommit message (Collapse)AuthorFilesLines
2015-09-08Rework diagnostics verbosity, add quiet mode/optionBoris Kolpackov1-3/+3
2015-08-29New configure meta-operation implementationBoris Kolpackov1-0/+4
Now we search and match (but do not execute) a rule for every operation supported by the project.
2015-08-27Dist module/meta-operation initial implementationBoris Kolpackov1-9/+5
2015-08-13Rework postponed logicBoris Kolpackov1-20/+10
Specifically, now postponed is only used by the execution mode logic and rules should not return it directly.
2015-08-03Fix few bugsBoris Kolpackov1-2/+7
2015-07-31Essential install module functionalityBoris Kolpackov1-4/+10
2015-07-24Add support for generated test input/outputBoris Kolpackov1-9/+6
2015-07-22Fix postponed re-examination logicBoris Kolpackov1-1/+5
Now postponed takes precedence over changed.
2015-07-21Test module genesisBoris Kolpackov1-0/+6
2015-07-21Add alias{} target type, use as base for dir{}Boris Kolpackov1-3/+3
2015-07-14Add notion of strong/weak amalgamation, make strong new clean boundaryBoris Kolpackov1-27/+5
2015-07-13Implement subproject importBoris Kolpackov1-2/+2
2015-07-07Rework module architectureBoris Kolpackov1-2/+1
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-07-01Clean up group state, mtime designBoris Kolpackov1-5/+16
2015-07-01Cleanup group "see through" designBoris Kolpackov1-23/+16
2015-06-30Group "see through" iteration, take 1Boris Kolpackov1-9/+9
2015-06-26Part two of dependency injection with auto-generation supportBoris Kolpackov1-5/+6
2015-06-24First take on the cli module plus necessary infrastructureBoris Kolpackov1-11/+2
2015-06-18Move path and filesystem from build2 to libbutlBoris Kolpackov1-2/+3
2015-05-11Correct copyrightBoris Kolpackov1-1/+1
2015-04-26Rework resolved prerequisite targets storageBoris Kolpackov1-7/+5
2015-04-24Implement lib/liba/libso{} target group, shared/static library buildBoris Kolpackov1-3/+3
2015-04-20Automatically decide when to print relative/absolute pathsBoris Kolpackov1-4/+3
2015-04-17Add support for target groups, use to handle obj/obja/objso object targetsBoris Kolpackov1-6/+7
2015-04-15Initial library supportBoris Kolpackov1-16/+5
2015-04-02Implement translation of meta/operations to natural languageBoris Kolpackov1-2/+2
2015-03-25Configure/disfigure src_root saving/removing support; fsdir{} injectionBoris Kolpackov1-67/+32
We can now build out-of-tree.
2015-03-20New consolidated load/match/build loopBoris Kolpackov1-1/+1
2015-03-13Add support for "first" and "last" execution modesBoris Kolpackov1-7/+1
2015-03-13Add postponed recipe execution supportBoris Kolpackov1-5/+10
2015-03-12Implement clean operationBoris Kolpackov1-57/+190
2015-03-10Further operation implementationBoris Kolpackov1-21/+22
2015-02-24Sort out diagnostics for mkdirBoris Kolpackov1-11/+10
2015-02-24Add fsdir{} for creating directoriesBoris Kolpackov1-0/+59
2015-02-23Rename "select" to "apply"Boris Kolpackov1-2/+2
2015-02-23Redo rule match/build logicBoris Kolpackov1-38/+32
Now the rule is fully responsible for searching, matching, and building of prerequisites.
2015-02-20Rename 'directory' to 'dir' in target, prerequisiteBoris Kolpackov1-1/+1
2015-02-19Add support for sourcing/including buildfiles, print, dir{} aliasBoris Kolpackov1-4/+32
2015-01-20Diagnostic infrastructure revampBoris Kolpackov1-7/+8
2015-01-16Implement rule chaining for cxx::linkBoris Kolpackov1-6/+28
2015-01-15Implement rule ambiguity detectionBoris Kolpackov1-1/+1
Also establish the infrastructure for rule hinting
2014-12-18Initial support for loading dependency info from buildfilesBoris Kolpackov1-5/+12
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/+72
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