@@ -6,9 +6,6 @@ project(websocket_proxy
66 VERSION ${BUILD_VERSION}
77 LANGUAGES CXX)
88
9- file (COPY "${CMAKE_CURRENT_SOURCE_DIR} /include" DESTINATION "${CMAKE_CURRENT_BINARY_DIR} " )
10- configure_file (src/version .h.in include /version .h)
11-
129set (CMAKE_CXX_STANDARD 20)
1310
1411if (NOT CMAKE_BUILD_TYPE )
@@ -23,6 +20,10 @@ if (CMAKE_BUILD_TYPE MATCHES Release)
2320 add_definitions (-DNDEBUG)
2421endif ()
2522
23+ set (RELEASE_DIR "${CMAKE_CURRENT_BINARY_DIR} /release" )
24+ file (COPY "${CMAKE_CURRENT_SOURCE_DIR} /include" DESTINATION "${RELEASE_DIR} " )
25+ configure_file (src/version .h.in release/include /websocket_proxy/version .h)
26+
2627find_package (boost_beast REQUIRED CONFIG)
2728find_package (OpenSSL REQUIRED)
2829find_package (spdlog REQUIRED CONFIG)
@@ -43,13 +44,18 @@ set(SOURCES
4344)
4445
4546add_executable (websocket_proxy ${SOURCES} )
46- target_include_directories (websocket_proxy PUBLIC include ${slick_queue_SOURCE_DIR} /include ${spdlog_SOURCE_DIR} ${CMAKE_BINARY_DIR} )
47+ target_include_directories (websocket_proxy PUBLIC include ${slick_queue_SOURCE_DIR} /include ${spdlog_SOURCE_DIR} ${RELEASE_DIR} / include )
4748target_link_libraries (websocket_proxy PRIVATE spdlog::spdlog_header_only Boost::asio Boost::beast OpenSSL::SSL OpenSSL::Crypto)
49+ target_precompile_headers(websocket_proxy PRIVATE src/pch.hpp)
4850
4951if (MSVC )
5052 add_definitions (-D_WIN32_WINNT=0x0A00)
5153 set (CMAKE_SUPPRESS_REGENERATION true ) # supress zero_check
54+ set_target_properties (websocket_proxy PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR} /bin" )
55+ set_target_properties (websocket_proxy PROPERTIES RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_BINARY_DIR} /bin/Debug" )
56+ set_target_properties (websocket_proxy PROPERTIES RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_BINARY_DIR} /bin/Release" )
57+ set_target_properties (websocket_proxy PROPERTIES LINK_INCREMENTAL ON )
5258 target_compile_definitions (websocket_proxy PUBLIC _UNICODE) # set CharacterSet to unicode
5359 target_compile_options (websocket_proxy PRIVATE "/bigobj" )
5460 set_target_properties (websocket_proxy PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>" )
55- endif ()
61+ endif ()
0 commit comments