xmake.lua 1.5 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package("xtensor-blas")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/xtensor-stack/xtensor-blas/")
  4. set_description("BLAS extension to xtensor")
  5. set_license("BSD-3-Clause")
  6. add_urls("https://github.com/xtensor-stack/xtensor-blas/archive/refs/tags/$(version).tar.gz",
  7. "https://github.com/xtensor-stack/xtensor-blas.git")
  8. add_versions("0.19.1", "c77cc4e2297ebd22d0d1c6e8d0a6cf0975176afa8cb99dbfd5fb2be625a0248f")
  9. add_versions("0.20.0", "272f5d99bb7511a616bfe41b13a000e63de46420f0b32a25fa4fb935b462c7ff")
  10. add_configs("vendor", {description = "Set BLAS vendor.", default = "openblas", type = "string", values = {"mkl", "openblas"}})
  11. add_deps("cmake")
  12. add_deps("xtensor")
  13. on_load("windows", "linux", function (package)
  14. package:add("deps", package:config("vendor"))
  15. end)
  16. on_install("windows", "linux", function (package)
  17. import("package.tools.cmake").install(package)
  18. end)
  19. on_test(function (package)
  20. assert(package:check_cxxsnippets({test = [[
  21. #include <xtensor/xarray.hpp>
  22. #include <xtensor-blas/xlinalg.hpp>
  23. void test() {
  24. xt::xarray<double> t1arg_0 = {{0, 1, 2},
  25. {3, 4, 5},
  26. {6, 7, 8}};
  27. auto t1res = xt::linalg::matrix_power(t1arg_0, 2);
  28. }
  29. ]]}, {configs = {languages = "c++14"}}))
  30. end)