diff options
-rw-r--r-- | include/ninja/Ninja.hpp | 3 | ||||
-rw-r--r-- | src/Ninja.cpp | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/include/ninja/Ninja.hpp b/include/ninja/Ninja.hpp index 3fed138..095c959 100644 --- a/include/ninja/Ninja.hpp +++ b/include/ninja/Ninja.hpp @@ -69,7 +69,7 @@ namespace ninja const std::string value; }; - class NinjaBuild; + struct NinjaBuild; // Functions throw NinjaException on failure class NinjaRule @@ -94,6 +94,7 @@ namespace ninja const std::string out; const std::vector<ninja::NinjaArgValue> additionalArgs; const std::vector<NinjaBuild*> dependsOnBuilds; + bool alwaysRun; }; // Functions throw NinjaException on failure diff --git a/src/Ninja.cpp b/src/Ninja.cpp index 5470d2b..09df2c1 100644 --- a/src/Ninja.cpp +++ b/src/Ninja.cpp @@ -214,6 +214,8 @@ namespace ninja result += "\n\n"; } + result += "build always: phony\n\n"; + for(const NinjaBuild *build : builds) { result += "build "; @@ -232,6 +234,9 @@ namespace ninja } } + if(build->alwaysRun) + result += " | always"; + for(const NinjaArgValue &additionalArg : build->additionalArgs) { result += "\n "; |