xmake.lua 1.2 KB

12345678910111213141516171819202122232425262728
  1. package("libidn2")
  2. set_homepage("https://www.gnu.org/software/libidn/")
  3. set_description("Libidn2 is an implementation of the IDNA2008 + TR46 specifications.")
  4. set_license("LGPL-3.0")
  5. add_urls("https://ftpmirror.gnu.org/gnu/libidn/libidn2-$(version).tar.gz",
  6. "https://ftp.gnu.org/gnu/libidn/libidn2-$(version).tar.gz")
  7. add_versions("2.3.2", "76940cd4e778e8093579a9d195b25fff5e936e9dc6242068528b437a76764f91")
  8. add_deps("libunistring")
  9. if is_plat("linux") then
  10. add_extsources("apt::libidn2-dev", "pacman::libidn2")
  11. end
  12. on_install("macosx", "linux", function (package)
  13. local configs = {"--disable-dependency-tracking"}
  14. table.insert(configs, "--enable-shared=" .. (package:config("shared") and "yes" or "no"))
  15. table.insert(configs, "--enable-static=" .. (package:config("shared") and "no" or "yes"))
  16. if package:config("pic") ~= false then
  17. table.insert(configs, "--with-pic")
  18. end
  19. import("package.tools.autoconf").install(package, configs, {packagedeps = {"libunistring"}})
  20. end)
  21. on_test(function (package)
  22. assert(package:has_cfuncs("idn2_to_ascii_8z", {includes = "idn2.h"}))
  23. end)