mirror of https://github.com/OpenVPN/openvpn-gui
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.5 KiB
68 lines
1.5 KiB
cmake_minimum_required(VERSION 3.10) |
|
|
|
project(openvpn-gui C) |
|
|
|
add_executable(${PROJECT_NAME} WIN32 |
|
access.c |
|
echo.c |
|
env_set.c |
|
localization.c |
|
main.c |
|
manage.c |
|
misc.c |
|
openvpn.c |
|
openvpn_config.c |
|
options.c |
|
passphrase.c |
|
proxy.c |
|
registry.c |
|
save_pass.c |
|
scripts.c |
|
service.c |
|
tray.c |
|
viewlog.c |
|
as.c |
|
res/openvpn-gui-res.rc) |
|
|
|
find_package(OpenSSL REQUIRED) |
|
|
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DDEBUG") |
|
|
|
target_link_libraries(${PROJECT_NAME} |
|
OpenSSL::SSL |
|
Wtsapi32.lib |
|
Netapi32.lib |
|
ws2_32.lib |
|
Winhttp.lib |
|
Secur32.lib |
|
Comctl32.lib |
|
Crypt32.lib |
|
Shlwapi.lib |
|
Advapi32.lib |
|
Shell32.lib |
|
Gdi32.lib |
|
Comdlg32.lib |
|
Ole32.lib |
|
Wininet.lib) |
|
|
|
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) |
|
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO") |
|
set(CMAKE_RC_FLAGS "/D \"HAVE_CONFIG_H\" /D \"_MSC_VER\"") |
|
|
|
function(get_version_from_configure regex_arg ret) |
|
file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/configure.ac" VERSION_STR REGEX ${regex_arg}) |
|
string(REGEX MATCH ${regex_arg} VERSION_STR "${VERSION_STR}") |
|
set("${ret}" ${CMAKE_MATCH_1} PARENT_SCOPE) |
|
endfunction() |
|
|
|
get_version_from_configure("_GUI_VERSION_MAJOR\\], \\[([0-9]+)\\]" GUI_VERSION_MAJOR) |
|
get_version_from_configure("_GUI_VERSION_MINOR\\], \\[([0-9]+)\\]" GUI_VERSION_MINOR) |
|
|
|
configure_file(config-msvc.h.in config.h) |
|
|
|
target_compile_definitions(${PROJECT_NAME} PRIVATE |
|
_UNICODE |
|
UNICODE |
|
WIN32_LEAN_AND_MEAN |
|
HAVE_CONFIG_H)
|
|
|