xmake.lua 1.1 KB

12345678910111213141516171819202122232425262728
  1. package("perlinnoise")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/Reputeless/PerlinNoise")
  4. set_description("Header-only Perlin noise library for modern C++ (C++17/C++20)")
  5. set_license("MIT")
  6. add_urls("https://github.com/Reputeless/PerlinNoise/archive/refs/tags/$(version).tar.gz",
  7. "https://github.com/Reputeless/PerlinNoise.git")
  8. add_versions("v3.0.0", "1fea1e7ebeb3c66b79d60c2c398aa83ccfadcef343bd396c0f0a684380e827fc")
  9. on_install(function (package)
  10. os.cp("PerlinNoise.hpp", package:installdir("include"))
  11. end)
  12. on_test(function (package)
  13. assert(package:check_cxxsnippets([[
  14. void test() {
  15. const siv::PerlinNoise::seed_type seed = 123456u;
  16. const siv::PerlinNoise perlin{ seed };
  17. for (int y = 0; y < 5; ++y) {
  18. for (int x = 0; x < 5; ++x) {
  19. const double noise = perlin.octave2D_01((x * 0.01), (y * 0.01), 4);
  20. }
  21. }
  22. }
  23. ]], {configs = {languages = "c++17"}, includes = "PerlinNoise.hpp"}))
  24. end)