From 6a0dcaa1e8ea6f3e923f7db4789f67c9b14a2db8 Mon Sep 17 00:00:00 2001 From: Norihiro Watanabe <norihiro.watanabe@ufz.de> Date: Fri, 14 Aug 2015 22:07:43 +0200 Subject: [PATCH] add STL_NO_DEBUG option in CMake --- CMakeLists.txt | 1 + scripts/cmake/CompilerSetup.cmake | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3d7e76710c5..d7d41f69153 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -73,6 +73,7 @@ option(OGS_DISABLE_LOGGING "Disables all logog messages." OFF) # Compiler flags set(OGS_CXX_FLAGS "" CACHE STRING "Additional C++ compiler flags.") +option(STL_NO_DEBUG "Disable STL debug in debug build" OFF) # Print CMake variable values if (OGS_CMAKE_DEBUG) diff --git a/scripts/cmake/CompilerSetup.cmake b/scripts/cmake/CompilerSetup.cmake index 4b72f76fbe3..651c48e2315 100644 --- a/scripts/cmake/CompilerSetup.cmake +++ b/scripts/cmake/CompilerSetup.cmake @@ -40,7 +40,9 @@ if(COMPILER_IS_GCC) endif() else() # Enable assertions in STL in debug mode. - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_ASSERT -D_GLIBCXX_DEBUG_PEDASSERT -D_GLIBCXX_DEBUG_VERIFY") + if (NOT STL_NO_DEBUG) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_ASSERT -D_GLIBCXX_DEBUG_PEDASSERT -D_GLIBCXX_DEBUG_VERIFY") + endif() endif() set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wno-deprecated -Wall -Wextra") endif() # COMPILER_IS_GCC @@ -53,7 +55,9 @@ if(COMPILER_IS_CLANG) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wno-c++98-compat-pedantic -march=native") if(CMAKE_BUILD_TYPE STREQUAL "Debug") # Enable assertions in STL in debug mode. - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_ASSERT -D_GLIBCXX_DEBUG_PEDASSERT -D_GLIBCXX_DEBUG_VERIFY") + if (NOT STL_NO_DEBUG) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_ASSERT -D_GLIBCXX_DEBUG_PEDASSERT -D_GLIBCXX_DEBUG_VERIFY") + endif() endif() endif() # COMPILER_IS_CLANG -- GitLab