From 9a92e25e94a7d6d26c13493c80a33d2788bde5f0 Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Wed, 16 Feb 2022 23:04:53 +0100
Subject: [PATCH] Remove RelWithDebInfo and MinSizeRel build types

---
 CMakeLists.txt | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index bb3681f42..2c72370a0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,6 +22,9 @@ if("${PUGS_SHORT_VERSION}" STREQUAL "")
   message(FATAL_ERROR "Unable to compute short version from PUGS_VERSION=${PUGS_VERSION}")
 endif()
 
+
+set(CMAKE_CONFIGURATION_TYPES "Release;Debug;Coverage" CACHE STRING INTERNAL FORCE )
+
 # set project version as PUGS_SHORT_VERSION
 project (Pugs VERSION ${PUGS_SHORT_VERSION})
 
@@ -34,16 +37,6 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
 set(PUGS_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
 set(PUGS_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}")
 
-# Change RelWithDebInfo to compile assertions
-SET("CMAKE_CXX_FLAGS_RELWITHDEBINFO"
-   "-g -O2"
-  CACHE STRING "Flags used by the compiler during release builds with debug info and assertions"
-  FORCE )
-SET("CMAKE_C_FLAGS_RELWITHDEBINFO"
-   "-g -O2"
-  CACHE STRING "Flags used by the compiler during release builds with debug info and assertions"
-  FORCE )
-
 # Add new build types
 set(CMAKE_CXX_FLAGS_COVERAGE
   "-g -O0 --coverage"
@@ -68,16 +61,16 @@ mark_as_advanced(
   CMAKE_SHARED_LINKER_FLAGS_COVERAGE )
 
 if(CMAKE_BUILD_TYPE)
-  string(REGEX MATCH "(Debug|Release|RelWithDebInfo|MinSizeRel|Coverage)" VALID_BUILD_TYPE "${CMAKE_BUILD_TYPE}")
+  string(REGEX MATCH "^(Release|Debug|Coverage)$" VALID_BUILD_TYPE "${CMAKE_BUILD_TYPE}")
   if(NOT VALID_BUILD_TYPE)
     message(FATAL_ERROR "Invalid CMAKE_BUILD_TYPE: '${CMAKE_BUILD_TYPE}'")
   endif()
 endif()
 
-# Default build type is RelWIthDebInfo
+# Default build type is Release
 if(NOT CMAKE_BUILD_TYPE)
-  set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING
-      "Choose the type of build: Debug Release RelWithDebInfo MinSizeRel Coverage."
+  set(CMAKE_BUILD_TYPE "Release" CACHE STRING
+      "Choose the type of build: Release Debug Coverage."
       FORCE)
 endif()
 
@@ -327,12 +320,10 @@ endif()
 # Compiler flags
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${PUGS_CXX_FLAGS}")
 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${PUGS_CXX_FLAGS}")
-set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${PUGS_CXX_FLAGS}")
 
 # Add debug mode for Standard C++ library (not for AppleClang since it is broken)
 if (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
   set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG -D_LIBCPP_DEBUG=1")
-  set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -D_GLIBCXX_DEBUG -D_LIBCPP_DEBUG=1")
 endif()
 
 #------------------------------------------------------
-- 
GitLab