package An official xmake package repository https://xrepo.xmake.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

41 lines
2.3 KiB

package("fizz")
set_homepage("https://github.com/facebookincubator/fizz")
set_description("C++14 implementation of the TLS-1.3 standard ")
set_license("BSD")
add_urls("https://github.com/facebookincubator/fizz/releases/download/v$(version).00/fizz-v$(version).00.zip",
"https://github.com/facebookincubator/fizz.git")
add_versions("2024.02.26", "fa389dca0c49e14e83e089f07f896bf616757b3c70723ddfac7be2e3fd1f312f")
add_versions("2024.03.04", "1a7da63780ae1bbcc00f9a317911e814a49f84e4d9009254328ea0a5e121817f")
add_versions("2024.03.11", "96693000954ed352eae4df3113ef6b1c8b2237100a83b8987dcf067ecfe8c2e8")
add_versions("2024.03.18", "f46799dda118ec5a35cf7533e00daf25e7b2d7c58f00b80ba6c0388b19190c6f")
add_versions("2024.03.25", "bcf9c551719bc86318a77e2b13769d52679642b98728e645900485d7a90c0f8b")
add_versions("2024.04.01", "caf2cf1ba8f6db66abbadf382fb3e0667888567c4ac0d8f74ec92e1fb27c3727")
add_versions("2024.06.10", "dabc77e2238383fb37c19327af8ab864ba030d32e98f49b23008075a7afb6e19")
add_versions("2024.06.17", "46e9d1b782a51b2c063390dc1161f26f2c77ef7a94ff8ccc4bdc272697cad8bb")
add_versions("2024.06.24", "b5fd5fb3fe1cf20519ea91d6a0127505596f8c74c82cde9d54ea6ae92df86a50")
add_deps("cmake", "folly", "libsodium", "liboqs")
on_install("linux", "macosx", function (package)
os.cd("fizz")
local configs = {"-DBUILD_TESTS=OFF",
"-DBUILD_EXAMPLES=OFF",
"-DCMAKE_CXX_STANDARD=17",
"-DFIZZ_HAVE_OQS=TRUE"}
table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release"))
table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))
import("package.tools.cmake").install(package, configs)
end)
on_test(function (package)
assert(package:check_cxxsnippets({test = [[
#include "fizz/experimental/crypto/exchange/OQSKeyExchange.h"
void test() {
auto clientKex = fizz::OQSClientKeyExchange(OQS_KEM_alg_kyber_768);
auto serverKex = fizz::OQSServerKeyExchange(OQS_KEM_alg_kyber_768);
clientKex.generateKeyPair();
serverKex.generateKeyPair();
}
]]}, {configs = {languages = "c++17"}}))
end)