diff --git a/nnvm/CMakeLists.txt b/nnvm/CMakeLists.txt
index 3747be06aa56ef1ce28a6ea6f887e27c5a4b5c99..2926073eb03f8f685847574dd5929d4d2b52ab43 100644
--- a/nnvm/CMakeLists.txt
+++ b/nnvm/CMakeLists.txt
@@ -31,18 +31,21 @@ add_definitions(-DNNVM_EXPORTS)
 # Build a shared lib (libnnvm.so) by default
 option(BUILD_SHARED_NNVM "Build a shared nnvm lib" ON)
 option(BUILD_STATIC_NNVM "Build a static nnvm lib" OFF)
+option(USE_MSVC_MT "Build with MT" OFF)
 
 # compile
 if(MSVC)
   add_definitions(-DDMLC_USE_CXX11)
   add_definitions(-DDMLC_STRICT_CXX11)
-  foreach(flag_var
+  if (USE_MSVC_MT)
+    foreach(flag_var
         CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
         CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
-    if(${flag_var} MATCHES "/MD")
-      string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
-    endif(${flag_var} MATCHES "/MD")
-  endforeach(flag_var)
+      if(${flag_var} MATCHES "/MD")
+	    string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
+      endif(${flag_var} MATCHES "/MD")
+    endforeach(flag_var)
+  endif()
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc")
   find_library(TVM_LIB tvm
 			   HINTS ${CMAKE_CURRENT_SOURCE_DIR}/../tvm/build/Release