diff --git a/CMakeLists.txt b/CMakeLists.txt
index 34363e4ab5f05025130b3d5a4c0ee99ef55b5e5d..ef7d6ff37b79bdb43f3c1cabd1a5ac8398bdc213 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -579,6 +579,28 @@ add_library(lib STATIC EXCLUDE_FROM_ALL ${GMSH_SRC})
 set_target_properties(lib PROPERTIES OUTPUT_NAME Gmsh)
 if(MSVC)
   SET_TARGET_PROPERTIES(lib PROPERTIES DEBUG_POSTFIX d) 
+  OPTION(_WITH_OOFELIE_ "Set compiler options for oofelie stand alone" OFF)
+  IF(_WITH_OOFELIE_)
+	SET_TARGET_PROPERTIES(lib PROPERTIES LINK_FLAGS_RELEASE "/nodefaultlib:LIBCMT")
+	STRING(REPLACE "/MD" "/MT /Ot"   CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})   
+	STRING(REPLACE "/MDd" "/MTd /Ot" CMAKE_CXX_FLAGS_DEBUG   ${CMAKE_CXX_FLAGS_DEBUG})   
+	STRING(REPLACE "/MD" "/MT /Ot" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})   
+	STRING(REPLACE "/MDd" "/MTd /Ot" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})   
+	STRING(REPLACE "/O2" "/Ox" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})   
+	STRING(REPLACE "/O2" "/Ox" CMAKE_C_FLAGS_RELEASE   ${CMAKE_C_FLAGS_RELEASE})   
+	STRING(REPLACE "/INCREMENTAL:NO" "/INCREMENTAL:YES" CMAKE_MODULE_LINKER_FLAGS_RELEASE ${CMAKE_MODULE_LINKER_FLAGS_RELEASE})
+	STRING(REPLACE "/INCREMENTAL:NO" "/INCREMENTAL:YES" CMAKE_EXE_LINKER_FLAGS_RELEASE ${CMAKE_EXE_LINKER_FLAGS_RELEASE})
+	STRING(REPLACE "/INCREMENTAL:NO" "/INCREMENTAL:YES" CMAKE_SHARED_LINKER_FLAGS_RELEASE ${CMAKE_SHARED_LINKER_FLAGS_RELEASE})
+
+	SET(CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE} CACHE STRING "CXX Compiler Flags for Release" FORCE)
+	SET(CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG} CACHE STRING "CXX Compiler Flags for Debug" FORCE)
+	SET(CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE} CACHE STRING "C Compiler Flags for Release" FORCE)
+	SET(CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG} CACHE STRING "C Compiler Flags for Debug" FORCE)
+	SET(CMAKE_MODULE_LINKER_FLAGS_RELEASE ${CMAKE_MODULE_LINKER_FLAGS_RELEASE} CACHE STRING "Lib Linker Flags for Release" FORCE)
+	SET(CMAKE_EXE_LINKER_FLAGS_RELEASE ${CMAKE_EXE_LINKER_FLAGS_RELEASE} CACHE STRING "Exe Linker Flags for Release" FORCE)
+	SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE ${CMAKE_SHARED_LINKER_FLAGS_RELEASE} CACHE STRING "Dll Linker Flags for Release" FORCE)
+	SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE ${CMAKE_SHARED_LINKER_FLAGS_RELEASE} CACHE STRING "Dll Linker Flags for Release" FORCE)
+  ENDIF(_WITH_OOFELIE_)
 endif(MSVC)
 
 if(HAVE_FLTK)