#pragma once #include #include #include namespace cmkr::cmake { struct Bin { std::string name; std::string type; std::vector sources; std::vector include_dirs; std::vector features; std::vector defines; std::vector link_libs; }; struct CMake { std::string cmake_version = "3.14"; std::string bin_dir = "bin"; std::string generator; std::vector subdirs; std::vector cppflags; std::vector cflags; std::vector linkflags; std::vector gen_args; std::vector build_args; std::string proj_name; std::string proj_version; std::map packages; std::map> contents; std::vector binaries; CMake(const std::string &path, bool build); }; } // namespace cmkr::cmake