@@ -80,6 +80,7 @@ if (WIN32)
8080 if (RELEASE_LTO)
8181 ## /LTCG: Link-Time Code Generation. Pair with /GL at compile time.
8282 add_compile_options ("$<$<CONFIG :Release >:/GL >" )
83+ add_compile_options ("$<$<CONFIG :RelWithDebInfo >:/GL >" )
8384 add_link_options ("$<$<CONFIG :Release >:/LTCG >" )
8485 message (STATUS "Adding LTO to Release compiler and linker flags" )
8586 endif ()
@@ -106,6 +107,9 @@ if (WIN32)
106107 list (APPEND EXTRA_TARGET_CFLAGS
107108 "$<$<CONFIG :Debug >:$<$<BOOL :${DEBUG_WALL} >:/W4 >>"
108109 "$<$<CONFIG :Release >:/W3 >"
110+ "$<$<CONFIG :RelWithDebInfo >:$<$<BOOL :${DEBUG_WALL} >:/W4 >>"
111+ # 4100: Unused arg warning .
112+ "/wd4100 "
109113 )
110114
111115 ## Uncomment this line if you end up with /NODEFAULTLIB warninigs . You will also
@@ -137,6 +141,7 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID MATCHES ".*Clang")
137141 LIST (APPEND EXTRA_TARGET_CFLAGS
138142 "-U__STRICT_ANSI__ "
139143 "$<$<CONFIG :Debug >:$<$<BOOL :${DEBUG_WALL} >:-Wall >>"
144+ "$<$<CONFIG :RelWithDebInfo >:$<$<BOOL :${DEBUG_WALL} >:-Wall >>"
140145 ## Only add if WARNINGS_FATAL set ; has undesirable consequences with LTO .
141146 "$<$<CONFIG :Release >:-Wall >"
142147 )
@@ -199,6 +204,8 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID MATCHES ".*Clang")
199204 message (STATUS " ${opt_flag} ")
200205 string (REGEX REPLACE "${opt_flag} [ \t \r \n ]*" "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ")
201206 string (APPEND CMAKE_C_FLAGS_RELEASE " ${opt_flag} ")
207+ string (REGEX REPLACE "${opt_flag} [ \t \r \n ]*" "" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ")
208+ string (APPEND CMAKE_C_FLAGS_RELWITHDEBINFO " ${opt_flag} ")
202209 string (REGEX REPLACE "${opt_flag} [ \t \r \n ]*" "" CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} ")
203210 string (APPEND CMAKE_C_FLAGS_MINSIZEREL " ${opt_flag} ")
204211 endforeach ()
0 commit comments