mirror of
https://github.com/amnezia-vpn/openvpn3.git
synced 2026-05-17 08:26:28 +03:00
In preparation of ovpn-dco support, split dco transport client into two parts: - generic dco support in dcocli.hpp - kovpn-specific code in kovpncli.hpp Add build directory (used by VS Code) to .gitignore Use #pragma once instead of #ifndef/#define/#endif Signed-off-by: Lev Stipakov <lev@openvpn.net>
39 lines
1.2 KiB
CMake
39 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.5)
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
|
|
include(findcoredeps)
|
|
|
|
option(CLI_NULLTUN "Build ovpncli variant with null tun" OFF)
|
|
option(CLI_KOVPN "Build ovpncli variant with kovpn kernel moduke support" OFF)
|
|
|
|
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_KOVPN})
|
|
add_executable(ovpnclikovpn cli.cpp)
|
|
add_core_dependencies(ovpnclikovpn)
|
|
|
|
target_compile_definitions(ovpnclikovpn PRIVATE -DENABLE_KOVPN)
|
|
|
|
include(kovpn)
|
|
add_kovpn_dependency(ovpnclikovpn)
|
|
target_include_directories(ovpnclikovpn PRIVATE ${KOVPN_SOURCE})
|
|
endif()
|
|
|
|
if (WIN32)
|
|
# for macos, agent-enabled client requires common and is built by scripts there
|
|
add_executable(ovpncliagent cli.cpp)
|
|
add_core_dependencies(ovpncliagent)
|
|
add_json_library(ovpncliagent)
|
|
target_compile_definitions(ovpncliagent PRIVATE -DOPENVPN_COMMAND_AGENT -DOVPNAGENT_DISABLE_PATH_CHECK)
|
|
endif ()
|