diff options
Diffstat (limited to 'src/libctor.h')
-rw-r--r-- | src/libctor.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/libctor.h b/src/libctor.h index 6903c6b..6026ffb 100644 --- a/src/libctor.h +++ b/src/libctor.h @@ -33,13 +33,27 @@ enum class OutputSystem Build, // Internal tool during cross-compilation }; +struct Source +{ + Source(const char* file) + : file(file) {} + Source(const std::string& file) + : file(file) {} + Source(const char* file, Language language) + : file(file), language(language) {} + Source(const std::string& file, Language language) + : file(file), language(language) {} + + std::string file; + Language language{Language::Auto}; +}; + struct BuildConfiguration { TargetType type{TargetType::Auto}; - Language language{Language::Auto}; OutputSystem system{OutputSystem::Host}; std::string target; - std::vector<std::string> sources; // source list + std::vector<Source> sources; // source list std::vector<std::string> depends; // internal dependencies std::vector<std::string> cxxflags; // flags for c++ compiler std::vector<std::string> cflags; // flags for c compiler |