add libidn2 (#770)

* add libidn2

* improve libiconv

* use packagedeps

* fix packagedeps
pull/775/head
Hoildkv 3 years ago committed by GitHub
parent ecb02534ae
commit 4c9e0ebbce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      packages/l/libiconv/xmake.lua
  2. 28
      packages/l/libidn2/xmake.lua
  3. 14
      packages/l/libunistring/xmake.lua

@ -16,6 +16,12 @@ package("libiconv")
"d09e4212040f5adf1faa5cf5a9a18f6f79d4cdce9affb05f2e75df2ea3b3d686")
end
on_fetch("macosx", "linux", function (package, opt)
if opt.system then
return package:find_package("system::iconv", {includes = "iconv.h"})
end
end)
on_load(function (package)
package:addenv("PATH", "bin")
end)

@ -0,0 +1,28 @@
package("libidn2")
set_homepage("https://www.gnu.org/software/libidn/")
set_description("Libidn2 is an implementation of the IDNA2008 + TR46 specifications.")
set_license("LGPL-3.0")
add_urls("https://ftp.gnu.org/gnu/libidn/libidn2-$(version).tar.gz",
"https://ftpmirror.gnu.org/libidn/libidn2-$(version).tar.gz")
add_versions("2.3.2", "76940cd4e778e8093579a9d195b25fff5e936e9dc6242068528b437a76764f91")
add_deps("libunistring")
if is_plat("linux") then
add_extsources("apt::libidn2-dev")
end
on_install("macosx", "linux", function (package)
local configs = {"--disable-dependency-tracking"}
table.insert(configs, "--enable-shared=" .. (package:config("shared") and "yes" or "no"))
table.insert(configs, "--enable-static=" .. (package:config("shared") and "no" or "yes"))
if package:config("pic") ~= false then
table.insert(configs, "--with-pic")
end
import("package.tools.autoconf").install(package, configs, {packagedeps = {"libunistring"}})
end)
on_test(function (package)
assert(package:has_cfuncs("idn2_to_ascii_8z", {includes = "idn2.h"}))
end)

@ -10,15 +10,13 @@ package("libunistring")
add_deps("libiconv")
on_install("linux", "macosx", function (package)
local configs = {"--disable-dependency-tracking", "--with-pic"}
if package:config("shared") then
table.insert(configs, "--enable-shared=yes")
table.insert(configs, "--enable-static=no")
else
table.insert(configs, "--enable-static=yes")
table.insert(configs, "--enable-shared=no")
local configs = {"--disable-dependency-tracking"}
table.insert(configs, "--enable-shared=" .. (package:config("shared") and "yes" or "no"))
table.insert(configs, "--enable-static=" .. (package:config("shared") and "no" or "yes"))
if package:config("pic") ~= false then
table.insert(configs, "--with-pic")
end
import("package.tools.autoconf").install(package, configs)
import("package.tools.autoconf").install(package, configs, {packagedeps = {"libiconv"}})
end)
on_test(function (package)

Loading…
Cancel
Save