xmake.lua 1.2 KB

1234567891011121314151617181920212223242526272829
  1. package("srell")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://akenotsuki.com/misc/srell")
  4. set_description("Unicode-aware regular expression template library for C++")
  5. set_license("BSD-2-Clause")
  6. add_urls("https://akenotsuki.com/misc/srell/srell$(version).zip", {version = function(version)
  7. return version:gsub("%.", "_")
  8. end})
  9. add_versions("4.019", "b4281825c529c7f63b61917782b33066a93cd40b55efbcac13c1ef615cd29835")
  10. add_versions("3.018", "0cb7587b3613085204ed847259cb46a54f7328aef90a0ce85a1eaa895a755ccf")
  11. on_install(function(package)
  12. os.cp("*.hpp", package:installdir("include"))
  13. end)
  14. on_test(function(package)
  15. assert(package:check_cxxsnippets({test = [[
  16. void test()
  17. {
  18. srell::regex e{ "\\d+[^-\\d]+" };
  19. srell::cmatch m;
  20. if (srell::regex_search("1234-5678-90ab-cdef", m, e)) {
  21. const std::string s(m[0].first, m[0].second);
  22. std::printf("result: %s\n", s.c_str());
  23. }
  24. }
  25. ]]}, {configs = {languages = "c++11"}, includes = "srell.hpp"}))
  26. end)