|
|
|
package("npcap_sdk")
|
|
|
|
set_homepage("https://npcap.com/")
|
|
|
|
set_description("Npcap is the Nmap Project's packet capture (and sending) library for Microsoft Windows.")
|
|
|
|
|
|
|
|
set_urls("https://npcap.com/dist/npcap-sdk-$(version).zip")
|
|
|
|
|
|
|
|
add_versions("1.13", "dad1f2bf1b02b787be08ca4862f99e39a876c1f274bac4ac0cedc9bbc58f94fd")
|
|
|
|
add_versions("1.12", "24c4862723f61d28048a24e10eb31d2269b2152a5762410dd1caffc041871337")
|
|
|
|
|
|
|
|
set_policy("package.precompiled", false)
|
|
|
|
|
|
|
|
on_install("windows", "mingw", "msys", function (package)
|
|
|
|
if package:is_plat("mingw") and package:version():eq("1.13") then
|
|
|
|
io.replace("Include/Packet32.h", "_Post_invalid_", "", {plain = true})
|
|
|
|
end
|
|
|
|
|
|
|
|
os.cp("Include/*", package:installdir("include"))
|
|
|
|
if package:is_arch("arm64") then
|
|
|
|
os.cp("Lib/ARM64/*", package:installdir("lib"))
|
|
|
|
elseif package:is_arch("x86") or package:is_arch("i386") then
|
|
|
|
os.cp("Lib/*.lib", package:installdir("lib"))
|
|
|
|
else
|
|
|
|
os.cp("Lib/x64/*.lib", package:installdir("lib"))
|
|
|
|
end
|
|
|
|
end)
|
|
|
|
|
|
|
|
on_test(function (package)
|
|
|
|
assert(package:has_cfuncs("PacketGetVersion", {includes = "Packet32.h"}))
|
|
|
|
end)
|