From d0657fde30a265f353e3528db7c683aeb98ee315 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Wed, 5 Oct 2022 02:15:22 +0200
Subject: [PATCH] cmake: Use DWARF 4 debug information when building using
mingw
See f18fae4c689a68bd50ce34d6b9c1f014c2f220a2
---
CMakeLists.txt | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 59ec6bfb851f..ae6d29a01bab 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -674,6 +674,18 @@ if(USE_GCC OR USE_CLANG)
endif()
endif()
+ if(MINGW)
+ # See if GCC's -gdwarf-4 is supported
+ # See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101377 for why this is needed on Windows
+ cmake_push_check_state(RESET)
+ check_c_compiler_flag("-gdwarf-4" HAVE_GDWARF_4)
+ if(HAVE_GDWARF_4)
+ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -gdwarf-4")
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -gdwarf-4")
+ endif()
+ cmake_pop_check_state()
+ endif()
+
# Force color diagnostics when one of these conditions are met
if(DEFINED ENV{CI} OR DEFINED ENV{USE_CCACHE} OR CMAKE_GENERATOR MATCHES Ninja)
if(EMSCRIPTEN OR (USE_GCC AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.9))