xmake.lua 1.6 KB

123456789101112131415161718192021222324252627282930313233
  1. package("libsais")
  2. set_homepage("https://github.com/IlyaGrebnov/libsais")
  3. set_description("libsais is a library for linear time suffix array, longest common prefix array and burrows wheeler transform construction based on induced sorting algorithm.")
  4. set_license("Apache-2.0")
  5. add_urls("https://github.com/IlyaGrebnov/libsais/archive/refs/tags/$(version).tar.gz",
  6. "https://github.com/IlyaGrebnov/libsais.git")
  7. add_versions("v2.8.1", "01852e93305fe197d8f2ffdc32a856e78d6796aa3f40708325084c55b450747a")
  8. add_versions("v2.8.0", "71f608d1e2a28652e66076f42becc3bbd3e0c8a21ba11a4de226a51459e894a9")
  9. add_versions("v2.7.5", "613c597b64fb096738d4084e0f2eb3b490aded7295cffc7fb23bdccc30097ebf")
  10. add_versions("v2.7.3", "45d37dc12975c4d40db786f322cd6dcfd9f56a8f23741205fcd0fca6ec0bf246")
  11. add_versions("v2.7.1", "5f459ad90cd007c30aaefb7d122bba2a4307ea02915c56381be4b331cca92545")
  12. on_install(function (package)
  13. local configs = {}
  14. io.writefile("xmake.lua", [[
  15. add_rules("mode.release", "mode.debug")
  16. target("libsais")
  17. set_kind("$(kind)")
  18. add_files("src/*.c")
  19. add_includedirs("include")
  20. add_headerfiles("include/(*.h)")
  21. add_headerfiles("src/(*.h)")
  22. ]])
  23. if package:config("shared") then
  24. configs.kind = "shared"
  25. end
  26. import("package.tools.xmake").install(package, configs)
  27. end)
  28. on_test(function (package)
  29. assert(package:has_cfuncs("libsais_create_ctx", {includes = "libsais.h"}))
  30. end)