diff options
author | dec05eba <dec05eba@protonmail.com> | 2017-12-10 04:05:20 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2017-12-10 04:06:02 +0100 |
commit | 99570d3fa5abf548d4e8e5e479d82ee66898b602 (patch) | |
tree | d52ac6662d51baccde2983639de0ffda3acc9578 /backend/ninja/Ninja.hpp | |
parent | 1d3e221a7a20bfd03517e3ae1e35e4a309a69b6a (diff) |
Add support for recursive global lib dependencies
Diffstat (limited to 'backend/ninja/Ninja.hpp')
-rw-r--r-- | backend/ninja/Ninja.hpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/backend/ninja/Ninja.hpp b/backend/ninja/Ninja.hpp index 9ca6ace..71b12a5 100644 --- a/backend/ninja/Ninja.hpp +++ b/backend/ninja/Ninja.hpp @@ -3,8 +3,10 @@ #include "../../include/Dependency.hpp" #include "../../include/Result.hpp" +#include "../../include/Linker.hpp" #include <vector> #include <string> +#include <functional> namespace backend @@ -22,11 +24,11 @@ namespace backend Ninja(LibraryType libraryType = LibraryType::EXECUTABLE); void addSourceFile(const char *filepath); - sibs::Result<bool> createBuildFile(const std::string &packageName, const std::vector<sibs::Dependency> &dependencies, const char *savePath); + sibs::Result<bool> createBuildFile(const std::string &packageName, const std::vector<sibs::Dependency> &dependencies, const char *savePath, sibs::LinkerFlagCallbackFunc linkerFlagCallbackFunc = nullptr); sibs::Result<bool> build(const char *buildFilePath); private: bool containsSourceFile(const char *filepath) const; - sibs::Result<std::string> getLinkerFlags(const std::vector<sibs::Dependency> &dependencies) const; + sibs::Result<std::string> getLinkerFlags(const std::vector<sibs::Dependency> &dependencies, sibs::LinkerFlagCallbackFunc linkerFlagCallbackFunc) const; private: std::vector<std::string> sourceFiles; LibraryType libraryType; |