1d4afb5ceSopenharmony_ciproject(lws-crypto-cose-key C)
2d4afb5ceSopenharmony_cicmake_minimum_required(VERSION 2.8.12)
3d4afb5ceSopenharmony_cifind_package(libwebsockets CONFIG REQUIRED)
4d4afb5ceSopenharmony_cilist(APPEND CMAKE_MODULE_PATH ${LWS_CMAKE_DIR})
5d4afb5ceSopenharmony_ciinclude(CheckCSourceCompiles)
6d4afb5ceSopenharmony_ciinclude(LwsCheckRequirements)
7d4afb5ceSopenharmony_ci
8d4afb5ceSopenharmony_ciset(SAMP lws-crypto-cose-key)
9d4afb5ceSopenharmony_ciset(SRCS main.c)
10d4afb5ceSopenharmony_ci
11d4afb5ceSopenharmony_ciset(requirements 1)
12d4afb5ceSopenharmony_cirequire_lws_config(LWS_WITH_COSE 1 requirements)
13d4afb5ceSopenharmony_ci
14d4afb5ceSopenharmony_ciif (requirements)
15d4afb5ceSopenharmony_ci
16d4afb5ceSopenharmony_ci	add_executable(${SAMP} ${SRCS})
17d4afb5ceSopenharmony_ci	
18d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-1
19d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --stdin set1.cks )
20d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-2
21d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --kty EC2 --curve P-256 --kid ctest-256 --stdout ctest-ec-256.key)
22d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-3
23d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --kty EC2 --curve P-384 --kid ctest-384 --stdout ctest-ec-384.key)
24d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-4
25d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --kty EC2 --curve P-521 --kid ctest-512 --stdout ctest-ec-512.key)
26d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-5
27d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --kty SYMMETRIC --bits 256 --stdout ctest-sym-256.key)
28d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-6
29d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --kty RSA --bits 2048 --stdout ctest-rsa-2048.key)
30d4afb5ceSopenharmony_ci	add_test(NAME crypto-cose-key-7
31d4afb5ceSopenharmony_ci		 COMMAND lws-crypto-cose-key --stdin ctest-rsa-2048.key)
32d4afb5ceSopenharmony_ci
33d4afb5ceSopenharmony_ci	set_tests_properties(crypto-cose-key-1
34d4afb5ceSopenharmony_ci			     crypto-cose-key-2
35d4afb5ceSopenharmony_ci			     crypto-cose-key-3
36d4afb5ceSopenharmony_ci			     crypto-cose-key-4
37d4afb5ceSopenharmony_ci			     crypto-cose-key-5
38d4afb5ceSopenharmony_ci			     crypto-cose-key-6
39d4afb5ceSopenharmony_ci			     crypto-cose-key-7
40d4afb5ceSopenharmony_ci			     PROPERTIES
41d4afb5ceSopenharmony_ci		     		WORKING_DIRECTORY
42d4afb5ceSopenharmony_ci		     			${CMAKE_SOURCE_DIR}/minimal-examples/crypto/minimal-crypto-cose-key
43d4afb5ceSopenharmony_ci		     		TIMEOUT 5)
44d4afb5ceSopenharmony_ci		     		
45d4afb5ceSopenharmony_ci	set_tests_properties(crypto-cose-key-7
46d4afb5ceSopenharmony_ci			     PROPERTIES
47d4afb5ceSopenharmony_ci		     		DEPENDS crypto-cose-key-6)
48d4afb5ceSopenharmony_ci
49d4afb5ceSopenharmony_ci	if (websockets_shared)
50d4afb5ceSopenharmony_ci		target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS})
51d4afb5ceSopenharmony_ci		add_dependencies(${SAMP} websockets_shared)
52d4afb5ceSopenharmony_ci	else()
53d4afb5ceSopenharmony_ci		target_link_libraries(${SAMP} websockets ${LIBWEBSOCKETS_DEP_LIBS})
54d4afb5ceSopenharmony_ci	endif()
55d4afb5ceSopenharmony_ciendif()
56