set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)")\r
\r
# ----------------------------------------------------------------------------\r
+# Use statically or dynamically linked CRT?\r
+# Default: dynamic\r
+# ----------------------------------------------------------------------------\r
+if(MSVC AND NOT BUILD_SHARED_LIBS)\r
+ option (BUILD_WITH_STATIC_CRT "Enables use of staticaly linked CRT" OFF)\r
+endif()\r
+ \r
+if(MSVC)\r
+ if(BUILD_WITH_STATIC_CRT)\r
+ foreach(flag_var\r
+ CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE\r
+ CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO\r
+ CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE\r
+ CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)\r
+ if(${flag_var} MATCHES "/MD")\r
+ string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")\r
+ endif(${flag_var} MATCHES "/MD")\r
+\r
+ if(${flag_var} MATCHES "/MDd")\r
+ string(REGEX REPLACE "/MDd" "/MTd" ${flag_var} "${${flag_var}}")\r
+ endif(${flag_var} MATCHES "/MDd") \r
+ endforeach(flag_var)\r
+ \r
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:atlthunk.lib /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:msvcrtd.lib")\r
+ \r
+ set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmt.lib")\r
+ set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmtd.lib")\r
+ \r
+ else(BUILD_WITH_STATIC_CRT)\r
+ foreach(flag_var\r
+ CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE\r
+ CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO\r
+ CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE\r
+ CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)\r
+ if(${flag_var} MATCHES "/MT")\r
+ string(REGEX REPLACE "/MT" "/MD" ${flag_var} "${${flag_var}}")\r
+ endif(${flag_var} MATCHES "/MT")\r
+\r
+ if(${flag_var} MATCHES "/MTd")\r
+ string(REGEX REPLACE "/MTd" "/MDd" ${flag_var} "${${flag_var}}")\r
+ endif(${flag_var} MATCHES "/MTd") \r
+ endforeach(flag_var)\r
+\r
+ endif(BUILD_WITH_STATIC_CRT)\r
+endif(MSVC)\r
+\r
+\r
+\r
+# ----------------------------------------------------------------------------\r
# Variables for cvconfig.h.cmake\r
# ----------------------------------------------------------------------------\r
set(PACKAGE "opencv")\r