aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSelva Nair2023-02-07 19:59:25 -0500
committerGert Doering2023-02-10 22:02:18 +0100
commite3ad1fc4230fb3a08b484e76ce0a31f2479d3c8f (patch)
treee8020bb0d229fb449e8bc4c5a17ce4cd386f647a /tests
parente80720ef9399d7a4e3469cf1004d064643e0f4dd (diff)
downloadopenvpn-e3ad1fc4230fb3a08b484e76ce0a31f2479d3c8f.zip
openvpn-e3ad1fc4230fb3a08b484e76ce0a31f2479d3c8f.tar.gz
Build unit tests in mingw Windows build
- Minor changes to the build system to include some dependencies for Windows build - test_tls_crypt not built as it will pull in win32.c and its dependencies - If cross-compiling, "make check" will only build the tests but not run any. Copy to Windows and run manually. Executables are in <buid-dir>/tests/unit_tests/openvpn/.libs/ and these depend on cmocka.dll in addition to openssl libs that some tests link to. Building with mingw on Windows should run the tests (untested). v2: networking_testdriver was mistakenly enabled to run, while originally it was only set to build. Corrected. v3: exclude check_engine_keys.sh when cross-compiling As suggested by Arne Schwabe <arne@rfc2549.org> Signed-off-by: Selva Nair <selva.nair@gmail.com> Acked-by: Arne Schwabe <arne@rfc2549.org> Message-Id: <20230208005925.393200-1-selva.nair@gmail.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg26188.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
Diffstat (limited to 'tests')
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/unit_tests/engine-key/Makefile.am2
-rw-r--r--tests/unit_tests/example_test/Makefile.am2
-rw-r--r--tests/unit_tests/openvpn/Makefile.am28
4 files changed, 29 insertions, 5 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 87dd7e1..a46f257 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -14,10 +14,12 @@ MAINTAINERCLEANFILES = \
SUBDIRS = unit_tests
+if !WIN32
test_scripts = t_client.sh t_lpback.sh t_cltsrv.sh
if HAVE_SITNL
test_scripts += t_net.sh
endif
+endif
TESTS_ENVIRONMENT = top_srcdir="$(top_srcdir)"
TESTS = $(test_scripts)
diff --git a/tests/unit_tests/engine-key/Makefile.am b/tests/unit_tests/engine-key/Makefile.am
index 2462225..0c28885 100644
--- a/tests/unit_tests/engine-key/Makefile.am
+++ b/tests/unit_tests/engine-key/Makefile.am
@@ -12,7 +12,9 @@ TESTS_ENVIRONMENT = srcdir="$(abs_srcdir)"; \
top_srcdir="$(top_srcdir)"; \
export srcdir builddir top_builddir top_srcdir;
+if !CROSS_COMPILING
TESTS = check_engine_keys.sh
+endif
check_engine_keys.sh: $(conffiles)
CLEANFILES = \
diff --git a/tests/unit_tests/example_test/Makefile.am b/tests/unit_tests/example_test/Makefile.am
index 04a5ad3..24eb0ba 100644
--- a/tests/unit_tests/example_test/Makefile.am
+++ b/tests/unit_tests/example_test/Makefile.am
@@ -2,7 +2,9 @@ AUTOMAKE_OPTIONS = foreign
check_PROGRAMS = example_testdriver example2_testdriver
+if !CROSS_COMPILING
TESTS = $(check_PROGRAMS)
+endif
example_testdriver_CFLAGS = @TEST_CFLAGS@
example_testdriver_LDFLAGS = @TEST_LDFLAGS@
diff --git a/tests/unit_tests/openvpn/Makefile.am b/tests/unit_tests/openvpn/Makefile.am
index 7720a85..8d2386e 100644
--- a/tests/unit_tests/openvpn/Makefile.am
+++ b/tests/unit_tests/openvpn/Makefile.am
@@ -7,14 +7,22 @@ test_binaries += argv_testdriver buffer_testdriver
endif
test_binaries += crypto_testdriver packet_id_testdriver auth_token_testdriver ncp_testdriver misc_testdriver \
- pkt_testdriver
+ pkt_testdriver
if HAVE_LD_WRAP_SUPPORT
+if !WIN32
test_binaries += tls_crypt_testdriver
endif
+endif
test_binaries += provider_testdriver
+if WIN32
+LDADD = -lws2_32
+endif
+
+if !CROSS_COMPILING
TESTS = $(test_binaries)
+endif
check_PROGRAMS = $(test_binaries)
if HAVE_SITNL
@@ -31,12 +39,14 @@ argv_testdriver_SOURCES = test_argv.c mock_msg.c mock_msg.h \
mock_get_random.c \
$(openvpn_srcdir)/platform.c \
$(openvpn_srcdir)/buffer.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/argv.c
buffer_testdriver_CFLAGS = @TEST_CFLAGS@ -I$(openvpn_srcdir) -I$(compat_srcdir)
buffer_testdriver_LDFLAGS = @TEST_LDFLAGS@ -L$(openvpn_srcdir) -Wl,--wrap=parse_line
buffer_testdriver_SOURCES = test_buffer.c mock_msg.c mock_msg.h \
mock_get_random.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/platform.c
crypto_testdriver_CFLAGS = @TEST_CFLAGS@ \
@@ -51,6 +61,7 @@ crypto_testdriver_SOURCES = test_crypto.c mock_msg.c mock_msg.h \
$(openvpn_srcdir)/packet_id.c \
$(openvpn_srcdir)/platform.c \
$(openvpn_srcdir)/mtu.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/mss.c
packet_id_testdriver_CFLAGS = @TEST_CFLAGS@ \
@@ -63,14 +74,14 @@ packet_id_testdriver_SOURCES = test_packet_id.c mock_msg.c mock_msg.h \
$(openvpn_srcdir)/packet_id.c \
$(openvpn_srcdir)/platform.c \
$(openvpn_srcdir)/reliable.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/session_id.c
-
pkt_testdriver_CFLAGS = @TEST_CFLAGS@ \
-I$(openvpn_includedir) -I$(compat_srcdir) -I$(openvpn_srcdir)
pkt_testdriver_LDFLAGS = @TEST_LDFLAGS@
pkt_testdriver_SOURCES = test_pkt.c mock_msg.c mock_msg.h \
-$(openvpn_srcdir)/argv.c \
+ $(openvpn_srcdir)/argv.c \
$(openvpn_srcdir)/base64.c \
$(openvpn_srcdir)/buffer.c \
$(openvpn_srcdir)/crypto.c \
@@ -84,9 +95,10 @@ $(openvpn_srcdir)/argv.c \
$(openvpn_srcdir)/run_command.c \
$(openvpn_srcdir)/session_id.c \
$(openvpn_srcdir)/ssl_pkt.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/tls_crypt.c
-
+if !WIN32
tls_crypt_testdriver_CFLAGS = @TEST_CFLAGS@ \
-I$(openvpn_includedir) -I$(compat_srcdir) -I$(openvpn_srcdir)
tls_crypt_testdriver_LDFLAGS = @TEST_LDFLAGS@ \
@@ -106,6 +118,7 @@ tls_crypt_testdriver_SOURCES = test_tls_crypt.c mock_msg.c mock_msg.h \
$(openvpn_srcdir)/packet_id.c \
$(openvpn_srcdir)/platform.c \
$(openvpn_srcdir)/run_command.c
+endif
if HAVE_SITNL
networking_testdriver_CFLAGS = @TEST_CFLAGS@ \
@@ -136,6 +149,7 @@ provider_testdriver_SOURCES = test_provider.c mock_msg.c \
$(openvpn_srcdir)/buffer.c \
$(openvpn_srcdir)/base64.c \
mock_get_random.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/platform.c
auth_token_testdriver_CFLAGS = @TEST_CFLAGS@ \
@@ -152,6 +166,7 @@ auth_token_testdriver_SOURCES = test_auth_token.c mock_msg.c \
$(openvpn_srcdir)/otime.c \
$(openvpn_srcdir)/packet_id.c \
$(openvpn_srcdir)/platform.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/base64.c
@@ -169,6 +184,8 @@ ncp_testdriver_SOURCES = test_ncp.c mock_msg.c \
$(openvpn_srcdir)/otime.c \
$(openvpn_srcdir)/packet_id.c \
$(openvpn_srcdir)/platform.c \
+ $(openvpn_srcdir)/win32-util.c \
+ $(compat_srcdir)/compat-strsep.c \
$(openvpn_srcdir)/ssl_util.c
misc_testdriver_CFLAGS = @TEST_CFLAGS@ \
@@ -177,8 +194,9 @@ misc_testdriver_CFLAGS = @TEST_CFLAGS@ \
misc_testdriver_LDFLAGS = @TEST_LDFLAGS@
misc_testdriver_SOURCES = test_misc.c mock_msg.c \
- mock_get_random.c \
+ mock_get_random.c \
$(openvpn_srcdir)/buffer.c \
$(openvpn_srcdir)/options_util.c \
$(openvpn_srcdir)/ssl_util.c \
+ $(openvpn_srcdir)/win32-util.c \
$(openvpn_srcdir)/platform.c