#ifndef SIBS_GLOBALLIB_HPP #define SIBS_GLOBALLIB_HPP #include "Result.hpp" #include "Linker.hpp" #include "Dependency.hpp" #include "Conf.hpp" namespace sibs { class GlobalLib { public: enum DependencyError { DEPENDENCY_NOT_FOUND = 10, DEPENDENCY_VERSION_NO_MATCH = 20 }; static Result validatePackageExists(const std::string &globalLibRootDir, const std::string &name); static Result getLibsLinkerFlags(const SibsConfig &parentConfig, const std::string &globalLibRootDir, const std::string &name, const std::string &version, LinkerFlagCallbackFunc staticLinkerFlagCallbackFunc, LinkerFlagCallbackFunc dynamicLinkerFlagCallbackFunc); static Result downloadDependency(const Dependency &dependency); }; } #endif //SIBS_GLOBALLIB_HPP