xmake.lua 1.0 KB

123456789101112131415161718192021222324
  1. package("stringbuilder")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/Isameru/stringbuilder")
  4. set_description("Fast, efficient and convenient alternative to std::stringstream and std::string concatenation.")
  5. set_license("MIT")
  6. add_urls("https://github.com/Isameru/stringbuilder.git")
  7. add_versions("2023.7.10", "ab772a6f0db237155d17a68c8f72b48383137872")
  8. on_install("!windows", function (package)
  9. io.replace("include/stringbuilder.h", "#pragma once", "#pragma once\n#include <ios>\n#include <stdexcept>", {plain = true})
  10. io.replace("include/stringbuilder.h", "#include <intrin.h>", "", {plain = true})
  11. os.cp("include", package:installdir())
  12. end)
  13. on_test(function (package)
  14. assert(package:check_cxxsnippets({test = [[
  15. #include <stringbuilder.h>
  16. void test() {
  17. auto sb = sbldr::stringbuilder<5>{};
  18. sb << "123";
  19. }
  20. ]]}, {configs = {languages = "c++17"}}))
  21. end)