support mscv statically linked CRT (#2118)

* support mscv mt

* prevent modification of flag
pull/2154/head
Chen Xin 2023-05-31 15:44:47 +08:00 committed by GitHub
parent a886f694c8
commit 872d826e3c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 1 deletions

View File

@ -34,6 +34,7 @@ option(MMDEPLOY_BUILD_EXAMPLES "build examples" OFF)
option(MMDEPLOY_SPDLOG_EXTERNAL "use external spdlog" OFF)
option(MMDEPLOY_ZIP_MODEL "support SDK model in zip format" OFF)
option(MMDEPLOY_COVERAGE "build SDK for coverage" OFF)
option(MMDEPLOY_USE_MSCV_STATIC "statically linked CRT" OFF)
option(MMDEPLOY_ELENA_FUSION "use elena to fuse preprocess" OFF)
set(MMDEPLOY_TARGET_DEVICES "cpu" CACHE STRING "target devices to support")
@ -78,6 +79,12 @@ endif ()
if (MSVC)
add_compile_options($<$<COMPILE_LANGUAGE:CXX>:/diagnostics:classic>)
add_compile_options($<$<COMPILE_LANGUAGE:CXX>:/wd4251>)
if (MMDEPLOY_USE_MSCV_STATIC)
foreach(lang C CXX)
string(REPLACE /MD /MT CMAKE_${lang}_FLAGS_DEBUG "${CMAKE_${lang}_FLAGS_DEBUG}")
string(REPLACE /MD /MT CMAKE_${lang}_FLAGS_RELEASE "${CMAKE_${lang}_FLAGS_RELEASE}")
endforeach()
endif ()
endif ()
if(APPLE)

View File

@ -103,3 +103,8 @@ if (NOT MSVC)
set(CMAKE_CUDA_STANDARD 14)
endif ()
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} ${_NVCC_FLAGS}")
if (MSVC AND MMDEPLOY_USE_MSCV_STATIC)
string(REPLACE -MD -MT CMAKE_CUDA_FLAGS_DEBUG "${CMAKE_CUDA_FLAGS_DEBUG}")
string(REPLACE -MD -MT CMAKE_CUDA_FLAGS_RELEASE "${CMAKE_CUDA_FLAGS_RELEASE}")
endif ()

View File

@ -1,7 +1,7 @@
if (NOT MSVC)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
endif ()
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
# build ONNXRUNTIME ops
if ("ort" IN_LIST MMDEPLOY_TARGET_BACKENDS)