xmake.lua 1.1 KB

123456789101112131415161718192021222324252627
  1. package("tl_optional")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/TartanLlama/optional")
  4. set_description("C++11/14/17 std::optional with functional-style extensions and support for references.")
  5. set_license("CC0")
  6. set_urls("https://github.com/TartanLlama/optional/archive/refs/tags/$(version).zip",
  7. "https://github.com/TartanLlama/optional.git")
  8. add_versions("v1.1.0", "a336bb10f51945369c1dd6dc6d2a7086602ab9cab52c98a7a6224bfd782bc0c7")
  9. add_deps("cmake")
  10. on_install(function (package)
  11. local configs = {"-DOPTIONAL_BUILD_PACKAGE=OFF", "-DBUILD_TESTING=OFF"}
  12. table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:is_debug() and "Debug" or "Release"))
  13. import("package.tools.cmake").install(package, configs)
  14. end)
  15. on_test(function (package)
  16. assert(package:check_cxxsnippets({test = [[
  17. void test() {
  18. tl::optional<int> e1 = 42;
  19. }
  20. ]]}, {configs = {languages = "c++11"}, includes = {"tl/optional.hpp"}}))
  21. end)