fix: msvc cmake config
This commit is contained in:
parent
6407d59572
commit
3e29668eb5
|
|
@ -9,17 +9,13 @@ set(CMAKE_CXX_EXTENSIONS OFF)
|
||||||
#set(CMAKE_AUTOUIC ON)
|
#set(CMAKE_AUTOUIC ON)
|
||||||
set(PROJECT_OUTPUT_DIR ${CMAKE_SOURCE_DIR}/bin)
|
set(PROJECT_OUTPUT_DIR ${CMAKE_SOURCE_DIR}/bin)
|
||||||
set(PROJECT_LIB_DIR ${CMAKE_SOURCE_DIR}/lib)
|
set(PROJECT_LIB_DIR ${CMAKE_SOURCE_DIR}/lib)
|
||||||
#set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
|
|
||||||
#set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/lib)
|
|
||||||
#set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/lib)
|
|
||||||
|
|
||||||
|
|
||||||
if (CMAKE_CXX_COMPILER_ID MATCHES GNU OR CMAKE_CXX_COMPILER_ID MATCHES Clang)
|
if (CMAKE_CXX_COMPILER_ID MATCHES GNU OR CMAKE_CXX_COMPILER_ID MATCHES Clang)
|
||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_OUTPUT_DIR}/${CMAKE_BUILD_TYPE})
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_OUTPUT_DIR}/${CMAKE_BUILD_TYPE})
|
||||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR}/${CMAKE_BUILD_TYPE})
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR}/${CMAKE_BUILD_TYPE})
|
||||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR}/${CMAKE_BUILD_TYPE})
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR}/${CMAKE_BUILD_TYPE})
|
||||||
elseif(CMAKE_CXX_COMPILER_ID MATCHES MSVC)
|
elseif(CMAKE_CXX_COMPILER_ID MATCHES MSVC)
|
||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PORJECT_OUTPUT_DIR})
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_OUTPUT_DIR})
|
||||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR})
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR})
|
||||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR})
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_LIB_DIR})
|
||||||
endif()
|
endif()
|
||||||
|
|
@ -43,19 +39,18 @@ add_executable(${PROJECT_NAME} ${HEADER_HPP} ${SOURCE_CPP})
|
||||||
#target_link_libraries({PROJECT_NAME} PUBLIC Qt5::Core Qt5::Widget)
|
#target_link_libraries({PROJECT_NAME} PUBLIC Qt5::Core Qt5::Widget)
|
||||||
target_include_directories(${PROJECT_NAME} PUBLIC include 3rd)
|
target_include_directories(${PROJECT_NAME} PUBLIC include 3rd)
|
||||||
|
|
||||||
# check mode
|
|
||||||
|
|
||||||
if (MSVC)
|
if (MSVC)
|
||||||
add_compile_options($<$<CXX_COMPLIER_ID:MSVC>:/utf-8)
|
add_compile_options($<$<CXX_COMPLIER_ID:MSVC>:/utf-8)
|
||||||
|
|
||||||
# 配置调试路径
|
# 配置调试路径
|
||||||
set_target_properties(MyApp PROPERTIES
|
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||||
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/bin"
|
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/bin"
|
||||||
)
|
)
|
||||||
|
|
||||||
# qt application main
|
# qt application main
|
||||||
target_link_options(MyApp PRIVATE "/SUBSYSTEM:WINDONWS")
|
#target_link_options(${PROJECT_NAME} PRIVATE "/SUBSYSTEM:WINDOWS")
|
||||||
target_link_options(${PROJECT_NAME} PRIVATE "/ENTRY:mainCRTStartup")
|
#target_link_options(${PROJECT_NAME} PRIVATE "/ENTRY:mainCRTStartup")
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "/MDd /Zi /Ob0 /Od /RTC1")
|
set(CMAKE_CXX_FLAGS_DEBUG "/MDd /Zi /Ob0 /Od /RTC1")
|
||||||
set(CMAKE_CXX_FLAGS_RELEASE "/MD /O2 /Ob2 /DNDEBUG")
|
set(CMAKE_CXX_FLAGS_RELEASE "/MD /O2 /Ob2 /DNDEBUG")
|
||||||
add_compile_options(/utf-8 /source-charset:utf-8 /execution-charset:utf-8)
|
add_compile_options(/utf-8 /source-charset:utf-8 /execution-charset:utf-8)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue