xmake.lua 1.1 KB

12345678910111213141516171819202122232425
  1. package("rsm-autotoml")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/Ryan-rsm-McKenzie/AutoTOML")
  4. set_description("toml++ wrapper for basic node types")
  5. set_license("MIT")
  6. add_urls("https://github.com/Ryan-rsm-McKenzie/AutoTOML.git")
  7. add_versions("2020.12.29", "10db32f275479a5af15793358e9e9e84079d13b3")
  8. add_deps("toml++")
  9. on_install(function (package)
  10. io.replace("include/AutoTOML.hpp", "string_t = toml::string", "string_t = std::string", {plain = true})
  11. io.replace("include/AutoTOML.hpp", "~ISetting() = 0 {}", "~ISetting() = default;", {plain = true})
  12. io.replace("include/AutoTOML.hpp", "node.as<", "node.template as<", {plain = true})
  13. os.cp("include/AutoTOML.hpp", package:installdir("include"))
  14. end)
  15. on_test(function (package)
  16. assert(package:check_cxxsnippets({test = [[
  17. void test() {
  18. static AutoTOML::bSetting test{ "section", "key", true };
  19. }
  20. ]]}, {configs = {languages = "c++17"}, includes = "AutoTOML.hpp"}))
  21. end)