xmake.lua 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. package("autodiff")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://autodiff.github.io")
  4. set_description("automatic differentiation made easier for C++")
  5. set_license("MIT")
  6. add_urls("https://github.com/autodiff/autodiff/archive/refs/tags/$(version).tar.gz",
  7. "https://github.com/autodiff/autodiff.git")
  8. add_versions("v1.1.2", "86f68aabdae1eed214bfbf0ddaa182c78ea1bb99e4df404efb7b94d30e06b744")
  9. add_versions("v1.0.3", "21b57ce60864857913cacb856c3973ae10f7539b6bb00bcc04f85b2f00db0ce2")
  10. add_deps("cmake", "eigen")
  11. on_install("windows", "linux", "macosx", "mingw", function (package)
  12. local configs =
  13. {
  14. "-DAUTODIFF_BUILD_TESTS=OFF",
  15. "-DAUTODIFF_BUILD_PYTHON=OFF",
  16. "-DAUTODIFF_BUILD_EXAMPLES=OFF",
  17. "-DAUTODIFF_BUILD_DOCS=OFF",
  18. }
  19. import("package.tools.cmake").install(package, configs)
  20. end)
  21. on_test(function (package)
  22. assert(package:check_cxxsnippets({test = [[
  23. #include <autodiff/forward/dual.hpp>
  24. using namespace autodiff;
  25. void test() {
  26. dual x = 1.0;
  27. }
  28. ]]}, {configs = {languages = "c++17"}}))
  29. end)