xmake.lua 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. package("gz-math")
  2. set_homepage("https://gazebosim.org/libs/math")
  3. set_description("General purpose math library for robot applications.")
  4. set_license("Apache-2.0")
  5. add_urls("https://github.com/gazebosim/gz-math/archive/refs/tags/gz-math9_$(version).tar.gz")
  6. add_urls("https://github.com/gazebosim/gz-math.git", {alias = "git"})
  7. add_versions("9.0.0", "e1eacfc2bf6b875ec270b6323cfaa8dfe043c9aaff9ceb8f87ff46e1cde9474a")
  8. add_versions("git:9.0.0", "gz-math9_9.0.0")
  9. add_includedirs("include", "include/gz/math9")
  10. add_deps("cmake", "gz-cmake 5.x")
  11. add_deps("eigen", "gz-utils 4.x")
  12. on_install(function (package)
  13. if not package:config("shared") then
  14. package:add("defines", "GZ_MATH_STATIC_DEFINE")
  15. end
  16. local configs = {"-DBUILD_TESTING=OFF", "-DSKIP_PYBIND11=ON"}
  17. table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:is_debug() and "Debug" or "Release"))
  18. table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))
  19. import("package.tools.cmake").install(package, configs)
  20. end)
  21. on_test(function (package)
  22. assert(package:check_cxxsnippets({test = [[
  23. void test() {
  24. gz::math::Color a = gz::math::Color(0.3f, 0.4f, 0.5f);
  25. }
  26. ]]}, {configs = {languages = "c++17"}, includes = "gz/math/Color.hh"}))
  27. end)