1
0
mirror of https://github.com/libssh2/libssh2.git synced 2025-08-01 11:26:53 +03:00

cmake: extend integration tests

- ci/GHA: add cmake integration tests for Windows.
- ci/GHA: test `add_subdirectory` with Libgcrypt.
- make them run faster with prefill, unity, Ninja, omitting curl tool.
- add support for any build configuration.
- add old-cmake support with auto-detection.
- auto-detect Ninja.
- run consumer test apps to see if they work.
  Also show the cryptography backend.
- add support for Windows.
- make it more verbose.
- re-add `ExternalProject` cmake consumer test. It's broken.
- tidy up terminology.

Cherry-picked from #1581

Closes #1589
This commit is contained in:
Viktor Szakats
2025-04-23 09:30:08 +02:00
parent ac80041852
commit 77df767784
4 changed files with 193 additions and 54 deletions

View File

@ -6,8 +6,34 @@
#include "libssh2.h"
#include <stdio.h>
int main(void)
int main(int argc, char **argv)
{
printf("libssh2_version(0): |%s|\n", libssh2_version(0));
const char *crypto_str;
(void)argc;
switch(libssh2_crypto_engine()) {
case libssh2_gcrypt:
crypto_str = "libgcrypt";
break;
case libssh2_mbedtls:
crypto_str = "mbedTLS";
break;
case libssh2_openssl:
crypto_str = "openssl compatible";
break;
case libssh2_os400qc3:
crypto_str = "OS400QC3";
break;
case libssh2_wincng:
crypto_str = "WinCNG";
break;
default:
crypto_str = "(unrecognized)";
}
printf("libssh2 test: |%s|%s|%s|\n", argv[0],
libssh2_version(0), crypto_str);
return 0;
}