aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPierre Wendling <pierre.wendling.4@gmail.com>2023-08-06 15:08:28 -0400
committerPierre Wendling <pierre.wendling.4@gmail.com>2023-08-19 12:16:15 -0400
commit31391735689077c238623591655753160168ad38 (patch)
treed0293f02a00a606c080783e2572b0f1a93830284 /tests
parenta89cd65980153ef60b42cb26d3bef949751f87f1 (diff)
downloadportable-31391735689077c238623591655753160168ad38.tar.gz
portable-31391735689077c238623591655753160168ad38.tar.bz2
portable-31391735689077c238623591655753160168ad38.zip
CI: Test consuming the exported CMake configs.
Diffstat (limited to 'tests')
-rw-r--r--tests/cmake/CMakeLists.txt37
-rw-r--r--tests/cmake/crypto.c7
-rw-r--r--tests/cmake/ssl.c6
-rw-r--r--tests/cmake/tls.c6
4 files changed, 56 insertions, 0 deletions
diff --git a/tests/cmake/CMakeLists.txt b/tests/cmake/CMakeLists.txt
new file mode 100644
index 0000000..956fbfd
--- /dev/null
+++ b/tests/cmake/CMakeLists.txt
@@ -0,0 +1,37 @@
1cmake_minimum_required(VERSION 3.5)
2
3project(LibreSSL_Consumer LANGUAGES C)
4
5find_package(
6 LibreSSL
7 CONFIG
8 REQUIRED
9 COMPONENTS Crypto SSL TLS
10)
11
12set(RESULTS_TO_CHECK
13 "LIBRESSL_VERSION"
14 "LIBRESSL_FOUND"
15 "LIBRESSL_INCLUDE_DIR"
16 "LIBRESSL_LIBRARIES"
17 "LIBRESSL_CRYPTO_LIBRARY"
18 "LIBRESSL_SSL_LIBRARY"
19 "LIBRESSL_TLS_LIBRARY"
20)
21
22foreach(RESULT_VAR IN LISTS RESULTS_TO_CHECK)
23 if(${RESULT_VAR})
24 message(STATUS "${RESULT_VAR}: ${${RESULT_VAR}}")
25 else()
26 message(FATAL_ERROR "${RESULT_VAR} was not set by the package.")
27 endif()
28endforeach()
29
30add_executable(crypto crypto.c)
31target_link_libraries(crypto PRIVATE LibreSSL::Crypto)
32
33add_executable(ssl ssl.c)
34target_link_libraries(ssl PRIVATE LibreSSL::SSL)
35
36add_executable(tls tls.c)
37target_link_libraries(tls PRIVATE LibreSSL::TLS)
diff --git a/tests/cmake/crypto.c b/tests/cmake/crypto.c
new file mode 100644
index 0000000..3838180
--- /dev/null
+++ b/tests/cmake/crypto.c
@@ -0,0 +1,7 @@
1#include <openssl/crypto.h>
2
3int main(void) {
4 OPENSSL_init_crypto(0, NULL);
5 OPENSSL_cleanup();
6 return 0;
7}
diff --git a/tests/cmake/ssl.c b/tests/cmake/ssl.c
new file mode 100644
index 0000000..2123d6a
--- /dev/null
+++ b/tests/cmake/ssl.c
@@ -0,0 +1,6 @@
1#include <openssl/ssl.h>
2
3int main(void) {
4 SSL_library_init();
5 return 0;
6}
diff --git a/tests/cmake/tls.c b/tests/cmake/tls.c
new file mode 100644
index 0000000..1493ab0
--- /dev/null
+++ b/tests/cmake/tls.c
@@ -0,0 +1,6 @@
1#include <tls.h>
2
3int main(void) {
4 tls_init();
5 return 0;
6}