xmake.lua 1.2 KB

123456789101112131415161718192021222324252627
  1. package("viennacl")
  2. set_homepage("http://viennacl.sourceforge.net/")
  3. set_description("ViennaCL is a free open-source linear algebra library for computations on many-core architectures (GPUs, MIC) and multi-core CPUs.")
  4. set_license("MIT")
  5. add_urls("https://sourceforge.net/projects/viennacl/files/$(version).zip", {version = function (version)
  6. return format("%s.%s.x/ViennaCL-%s", version:major(), version:minor(), version)
  7. end})
  8. add_versions("1.7.1", "1e9ffaa9d1dd22202cbd10ec8a8450184bceb41bbd90ebe2effd50be2015a7f6")
  9. add_deps("cmake")
  10. on_install("windows", "macosx", "linux", function (package)
  11. io.replace("CMakeLists.txt", "add_subdirectory", "#", {plain = true})
  12. import("package.tools.cmake").install(package)
  13. end)
  14. on_test(function (package)
  15. assert(package:check_cxxsnippets({test = [[
  16. void test() {
  17. viennacl::vector<float> vec1(4);
  18. viennacl::vector<float> vec2(4);
  19. float res = viennacl::linalg::inner_prod(vec1, vec2);
  20. }
  21. ]]}, {configs = {languages = "c++11"},
  22. includes = {"viennacl/vector.hpp", "viennacl/linalg/inner_prod.hpp"}}))
  23. end)