xmake.lua 1.5 KB

123456789101112131415161718192021222324252627282930313233
  1. package("tinygltf")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/syoyo/tinygltf/")
  4. set_description("Header only C++11 tiny glTF 2.0 library")
  5. set_license("MIT")
  6. add_urls("https://github.com/syoyo/tinygltf/archive/refs/tags/$(version).tar.gz",
  7. "https://github.com/syoyo/tinygltf.git")
  8. add_versions("v2.8.21", "e567257d7addde58b0a483832cbaa5dd8f15e5bcaee6f023831e215d1a2c0502")
  9. add_versions("v2.5.0", "5d85bd556b60b1b69527189293cfa4902957d67fabb8582b6532f23a5ef27ec1")
  10. add_versions("v2.6.3", "f61e4a501baa7fbf31b18ea0f6815a59204ad0de281f7b04f0168f6bbd17c340")
  11. add_versions("v2.8.9", "cfff42b9246e1e24d36ec4ae94a22d5f4b0a1c63c796babb5c2a13fe66aed5e9")
  12. add_versions("v2.8.13", "72c3e5affa8389442582e4cf67426376e2dff418e998e19822260f4bf58b74b8")
  13. add_deps("cmake", "nlohmann_json", "stb")
  14. on_install(function (package)
  15. local configs = {
  16. "-DTINYGLTF_BUILD_LOADER_EXAMPLE=OFF",
  17. "-DTINYGLTF_HEADER_ONLY=ON"
  18. }
  19. table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release"))
  20. table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))
  21. import("package.tools.cmake").install(package, configs)
  22. end)
  23. on_test(function (package)
  24. assert(package:check_cxxsnippets({test = [[
  25. void test() {
  26. tinygltf::TinyGLTF loader;
  27. }
  28. ]]}, {configs = {languages = "c++14"}, includes = "tiny_gltf.h"}))
  29. end)