From 48823811cf772eb840e6211419cca9dc64948989 Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@ulg.ac.be> Date: Mon, 17 Aug 2009 18:24:03 +0000 Subject: [PATCH] add ENABLE_OOFELIE (OFF by default) so that we don't have to edit CMakeLists.txt to set the oofelie flags --- CMakeLists.txt | 5 +++- utils/misc/withOOFELIE.cmake | 47 ++++++++++++++++-------------------- 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0f5e99368d..805d1ea805 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,6 +33,7 @@ option(ENABLE_METIS "Enable Metis mesh partitioner" ON) option(ENABLE_NATIVE_FILE_CHOOSER "Enable native file chooser in GUI" ON) option(ENABLE_NETGEN "Enable Netgen mesh generator" ON) option(ENABLE_OCC "Enable OpenCASCADE geometrical models" ON) +option(ENABLE_OOFELIE "Set compiler options to match oofelie settings" OFF) option(ENABLE_OSMESA "Use OSMesa for offscreen rendering" OFF) option(ENABLE_PARSER "Build the GEO file parser" ON) option(ENABLE_POST "Build the post-processing module" ON) @@ -579,7 +580,9 @@ 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) -# INCLUDE(${CMAKE_SOURCE_DIR}/utils/misc/withOOFELIE.cmake) + if(ENABLE_OOFELIE) + INCLUDE(${CMAKE_SOURCE_DIR}/utils/misc/withOOFELIE.cmake) + endif(ENABLE_OOFELIE) endif(MSVC) if(HAVE_FLTK) diff --git a/utils/misc/withOOFELIE.cmake b/utils/misc/withOOFELIE.cmake index c2dfb67413..776de171f8 100644 --- a/utils/misc/withOOFELIE.cmake +++ b/utils/misc/withOOFELIE.cmake @@ -1,28 +1,23 @@ -# Cmake file to compile Gmsh with the suitable compiler Flags -# in order to link gmsh with Oofelie. Uncomment the line : -# INCLUDE(${CMAKE_SOURCE_DIR}/utils/misc/withOOFELIE.cmake) -# in the top CMakeLists.txt file of the gmsh source tree. - -OPTION(ENABLE_OOFELIE "Set compiler options for building Gmsh as lib with oofelie compiler setting" ON) -IF(ENABLE_OOFELIE ) +# Cmake file to compile Gmsh with the suitable compiler Flags in order +# to link gmsh with Oofelie. If ENABLE_OOFELIE is set this file is +# included in the main CMakeLists.txt file. - 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_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(ENABLE_OOFELIE ) \ No newline at end of file +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) -- GitLab