p11-kit: add package (#6490)
* libtasn1: add support for additional platforms * p11-kit: add package * p11-kit: add license --------- Co-authored-by: star9029 <hengxings783@gmail.com>pull/6493/head
parent
0137f5ea49
commit
1938273e10
2 changed files with 51 additions and 2 deletions
@ -0,0 +1,44 @@ |
|||||||
|
package("p11-kit") |
||||||
|
set_homepage("https://p11-glue.github.io/p11-glue/p11-kit.html") |
||||||
|
set_description("Provides a way to load and enumerate PKCS#11 modules.") |
||||||
|
set_license("BSD-3-Clause") |
||||||
|
|
||||||
|
add_urls("https://github.com/p11-glue/p11-kit/releases/download/$(version)/p11-kit-$(version).tar.xz", |
||||||
|
"https://github.com/p11-glue/p11-kit.git") |
||||||
|
|
||||||
|
add_versions("0.25.5", "04d0a86450cdb1be018f26af6699857171a188ac6d5b8c90786a60854e1198e5") |
||||||
|
|
||||||
|
if is_plat("mingw") and is_subhost("msys") then |
||||||
|
add_extsources("pacman::p11-kit") |
||||||
|
elseif is_plat("linux") then |
||||||
|
add_extsources("pacman::libp11-kit", "apt::libp11-kit-dev") |
||||||
|
elseif is_plat("macosx") then |
||||||
|
add_extsources("brew::p11-kit") |
||||||
|
end |
||||||
|
|
||||||
|
add_deps("meson", "ninja") |
||||||
|
add_deps("libffi", "libtasn1") |
||||||
|
|
||||||
|
on_load(function (package) |
||||||
|
if package:is_cross() then |
||||||
|
package:add("deps", "libtasn1~host", {host = true, private = true}) |
||||||
|
else |
||||||
|
package:addenv("PATH", "bin") |
||||||
|
end |
||||||
|
end) |
||||||
|
|
||||||
|
on_install("linux", "mingw", "macosx", "iphoneos", "bsd", "cross", function (package) |
||||||
|
local configs = {"-Dsystemd=disabled", "-Dbash_completion=disabled", "-Dtest=false"} |
||||||
|
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static")) |
||||||
|
import("package.tools.meson").install(package, configs) |
||||||
|
os.trymv(package:installdir("include", "p11-kit-1", "*"), package:installdir("include")) |
||||||
|
end) |
||||||
|
|
||||||
|
on_test(function (package) |
||||||
|
assert(package:check_csnippets({test = [[ |
||||||
|
void test(CK_FUNCTION_LIST_PTR_PTR modules) { |
||||||
|
p11_kit_modules_finalize(modules); |
||||||
|
p11_kit_modules_release(modules); |
||||||
|
} |
||||||
|
]]}, {includes = "p11-kit/p11-kit.h"})) |
||||||
|
end) |
Loading…
Reference in new issue