diff --git a/test/ovpncli/CMakeLists.txt b/test/ovpncli/CMakeLists.txt index 8dac9b5e..b8a42080 100644 --- a/test/ovpncli/CMakeLists.txt +++ b/test/ovpncli/CMakeLists.txt @@ -6,8 +6,25 @@ set(CMAKE_CXX_STANDARD 14) set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../cmake;${CMAKE_MODULE_PATH}") include(findcoredeps) +option(CLI_NULLTUN "Build ovpncli variant with null tun" OFF) +option(CLI_DCO "Build ovpncli variant with Data Channel Offload (DCO) feature" OFF) -add_executable(ovpncli - cli.cpp) +set(KOVPN_SOURCE "${CORE_DIR}/../kovpn" CACHE PATH "ovpn-dco kernel module source tree") + +add_executable(ovpncli cli.cpp) add_core_dependencies(ovpncli) + +if (${CLI_NULLTUN}) + add_executable(ovpnclinull cli.cpp) + add_core_dependencies(ovpnclinull) + target_compile_definitions(ovpnclinull PRIVATE -DOPENVPN_FORCE_TUN_NULL) +endif () + + +if (${CLI_DCO}) + add_executable(ovpnclidco cli.cpp) + add_core_dependencies(ovpnclidco) + target_include_directories(ovpnclidco PRIVATE ${KOVPN_SOURCE}) + target_compile_definitions(ovpnclidco PRIVATE -DENABLE_DCO) +endif ()