diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index 0be7f80919..4cbac7107d 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -118,6 +118,7 @@ if (MSVC) SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc") #Disable 4100 globally. Too many this kind errors in protobuf SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4100") + SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS} /GL") else() if(onnxruntime_BUILD_FOR_NATIVE_MACHINE) string(APPEND CMAKE_CXX_FLAGS_RELEASE " -march=native -mtune=native") @@ -340,11 +341,12 @@ if (WIN32) # set linker flags to minimize the binary size. if (MSVC) - foreach(type EXE SHARED) - set(CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO} /OPT:REF") + foreach(type EXE SHARED) + set(CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO} /OPT:REF,ICF,LBR") set(CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO} /INCREMENTAL:NO") + set(CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_${type}_LINKER_FLAGS_RELWITHDEBINFO} /LTCG") endforeach() - endif() + endif() else() add_definitions(-DPLATFORM_POSIX) # Enable warning in Linux