xmake.lua 1.3 KB

1234567891011121314151617181920212223242526272829
  1. package("nanoflann")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/jlblancoc/nanoflann/")
  4. set_description("nanoflann: a C++11 header-only library for Nearest Neighbor (NN) search with KD-trees")
  5. set_license("BSD-2-Clause")
  6. add_urls("https://github.com/jlblancoc/nanoflann/archive/refs/tags/$(version).tar.gz",
  7. "https://github.com/jlblancoc/nanoflann.git")
  8. add_versions("v1.3.2", "e100b5fc8d72e9426a80312d852a62c05ddefd23f17cbb22ccd8b458b11d0bea")
  9. add_versions("v1.4.2", "97fce650eb644a359a767af526cab9ba31842e53790a7279887e1ae2fffe7319")
  10. add_versions("v1.5.0", "89aecfef1a956ccba7e40f24561846d064f309bc547cc184af7f4426e42f8e65")
  11. add_deps("cmake")
  12. on_install(function (package)
  13. import("package.tools.cmake").install(package, {"-DNANOFLANN_BUILD_EXAMPLES=OFF", "-DNANOFLANN_BUILD_TESTS=OFF"})
  14. end)
  15. on_test(function (package)
  16. assert(package:check_cxxsnippets({test = [[
  17. void test() {
  18. const size_t num_results = 1;
  19. size_t ret_index;
  20. float out_dist_sqr;
  21. nanoflann::KNNResultSet<float> resultSet(num_results);
  22. resultSet.init(&ret_index, &out_dist_sqr);
  23. }
  24. ]]}, {configs = {languages = "c++11"}, includes = "nanoflann.hpp"}))
  25. end)