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)