1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-12-26 18:19:53 +03:00

CMake: specify "WIN32" for targets that have WinMain()

When "VPN_EXE" is defined, Mayaqua.h defines WinMain(), which handles arguments in a special way.

This commit passes "WIN32" to add_executable(), so that WinMain() is used as entry point instead of main().

The use of main() instead of WinMain() was causing service mode not to work due to the "/service" argument being discarded.
This commit is contained in:
Davide Beatrici 2020-07-25 23:13:38 +02:00
parent 0133682eb3
commit 3732447571
3 changed files with 33 additions and 27 deletions

View File

@ -1,16 +1,9 @@
set(COMPONENT_NAME "Bridge")
set(COMPONENT_INTERNAL_NAME "vpnbridge")
add_executable(vpnbridge vpnbridge.c)
set_target_properties(vpnbridge
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
if(WIN32)
add_executable(vpnbridge WIN32 vpnbridge.c)
set_target_properties(vpnbridge
PROPERTIES
PDB_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
@ -21,8 +14,17 @@ if(WIN32)
configure_file("${TOP_DIRECTORY}/src/BuildFiles/VerScript/ver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
target_sources(vpnbridge PRIVATE "vpnbridge.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
else()
add_executable(vpnbridge vpnbridge.c)
endif()
set_target_properties(vpnbridge
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
target_link_libraries(vpnbridge cedar mayaqua)
if(UNIX)

View File

@ -1,16 +1,9 @@
set(COMPONENT_NAME "Client")
set(COMPONENT_INTERNAL_NAME "vpnclient")
add_executable(vpnclient vpncsvc.c vpncsvc.h)
set_target_properties(vpnclient
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
if(WIN32)
add_executable(vpnclient WIN32 vpncsvc.c vpncsvc.h)
set_target_properties(vpnclient
PROPERTIES
PDB_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
@ -21,8 +14,17 @@ if(WIN32)
configure_file("${TOP_DIRECTORY}/src/BuildFiles/VerScript/ver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
target_sources(vpnclient PRIVATE "vpnclient.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
else()
add_executable(vpnclient vpncsvc.c vpncsvc.h)
endif()
set_target_properties(vpnclient
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
target_link_libraries(vpnclient cedar mayaqua)
if(UNIX)

View File

@ -1,16 +1,9 @@
set(COMPONENT_NAME "Server")
set(COMPONENT_INTERNAL_NAME "vpnserver")
add_executable(vpnserver vpnserver.c)
set_target_properties(vpnserver
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
if(WIN32)
add_executable(vpnserver WIN32 vpnserver.c)
set_target_properties(vpnserver
PROPERTIES
PDB_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
@ -21,8 +14,17 @@ if(WIN32)
configure_file("${TOP_DIRECTORY}/src/BuildFiles/VerScript/ver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
target_sources(vpnserver PRIVATE "vpnserver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
else()
add_executable(vpnserver vpnserver.c)
endif()
set_target_properties(vpnserver
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
target_link_libraries(vpnserver cedar mayaqua)
if(UNIX)