From b9e2a110b02a9ae3d4419598aa2d07ae70d8df81 Mon Sep 17 00:00:00 2001 From: Ivan Tustanivskyi Date: Wed, 8 Apr 2026 18:46:40 +0300 Subject: [PATCH 1/3] feat: Add WinGDK (Gaming.Desktop.x64) platform support --- CMakeLists.txt | 8 +++++--- include/sentry.h | 4 ++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 51a4451e2c..1a631ae7fe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -91,6 +91,8 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Prospero") set(PROSPERO TRUE) elseif("${CMAKE_GENERATOR_PLATFORM}" MATCHES "Gaming\\.Xbox\\.(Scarlett|XboxOne)\\.x64") set(XBOX TRUE) +elseif("${CMAKE_GENERATOR_PLATFORM}" MATCHES "Gaming\\.Desktop\\.x64") + set(WINGDK TRUE) endif() #setup sentry library type @@ -131,7 +133,7 @@ if(SENTRY_EMBED_INFO_ITEMS) endforeach() endif() -if(NOT XBOX) +if(NOT XBOX AND NOT WINGDK) option(SENTRY_LINK_PTHREAD "Link platform threads library" ON) if(SENTRY_LINK_PTHREAD) set(THREADS_PREFER_PTHREAD_FLAG ON) @@ -213,7 +215,7 @@ option(SENTRY_ENABLE_INSTALL "Enable sentry installation" "${SENTRY_MAIN_PROJECT if(MSVC AND CMAKE_GENERATOR_TOOLSET MATCHES "_xp$") message(WARNING "Crashpad is not supported for MSVC with XP toolset. Default backend was switched to 'breakpad'") set(SENTRY_DEFAULT_BACKEND "breakpad") -elseif(MSVC AND XBOX) +elseif(MSVC AND (XBOX OR WINGDK)) set(SENTRY_DEFAULT_BACKEND "breakpad") elseif((APPLE AND NOT IOS) OR WIN32 OR LINUX) set(SENTRY_DEFAULT_BACKEND "crashpad") @@ -604,7 +606,7 @@ if(SENTRY_TRANSPORT_WINHTTP) endif() # handle platform threads library -if(NOT XBOX) +if(NOT XBOX AND NOT WINGDK) if(SENTRY_LINK_PTHREAD) list(APPEND _SENTRY_PLATFORM_LIBS "Threads::Threads") endif() diff --git a/include/sentry.h b/include/sentry.h index de6e0cee14..1247e1ec67 100644 --- a/include/sentry.h +++ b/include/sentry.h @@ -59,6 +59,8 @@ extern "C" { # define SENTRY_PLATFORM_WINDOWS # ifdef _GAMING_XBOX # define SENTRY_PLATFORM_XBOX +# elif defined(_GAMING_DESKTOP) +# define SENTRY_PLATFORM_WINGDK # endif #elif defined(__APPLE__) # include @@ -95,6 +97,8 @@ extern "C" { # define SENTRY_SDK_NAME "sentry.native.android" # elif defined(SENTRY_PLATFORM_XBOX) # define SENTRY_SDK_NAME "sentry.native.xbox" +# elif defined(SENTRY_PLATFORM_WINGDK) +# define SENTRY_SDK_NAME "sentry.native.wingdk" # else # define SENTRY_SDK_NAME "sentry.native" # endif From 81998af11b8fb379391b553c605efb1b8ecc3f4e Mon Sep 17 00:00:00 2001 From: Ivan Tustanivskyi Date: Thu, 9 Apr 2026 13:33:08 +0300 Subject: [PATCH 2/3] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e2926f45f6..bf49c0822d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ - Add HTTP retry with exponential backoff, opt-in via `sentry_options_set_http_retry`. ([#1520](https://github.com/getsentry/sentry-native/pull/1520)) - Store minidump attachments as separate `.dmp` files in the offline cache for direct debugger access. ([#1607](https://github.com/getsentry/sentry-native/pull/1607)) - Enable metrics by default; metrics are now opt-out via `sentry_options_set_enable_metrics(options, false)`. ([#1609](https://github.com/getsentry/sentry-native/pull/1609)) +- Add WinGDK (Gaming.Desktop.x64) platform support ([#1631](https://github.com/getsentry/sentry-native/pull/1631)) **Fixes**: From 457ea873d2f07a28876191c5ad3af96f5a93336b Mon Sep 17 00:00:00 2001 From: Ivan Tustanivskyi Date: Thu, 9 Apr 2026 13:36:19 +0300 Subject: [PATCH 3/3] Fix changelog --- CHANGELOG.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bf49c0822d..90da9674bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## Unreleased + +**Features**: + +- Add WinGDK (Gaming.Desktop.x64) platform support ([#1631](https://github.com/getsentry/sentry-native/pull/1631)) + ## 0.13.5 **Features**: @@ -7,7 +13,6 @@ - Add HTTP retry with exponential backoff, opt-in via `sentry_options_set_http_retry`. ([#1520](https://github.com/getsentry/sentry-native/pull/1520)) - Store minidump attachments as separate `.dmp` files in the offline cache for direct debugger access. ([#1607](https://github.com/getsentry/sentry-native/pull/1607)) - Enable metrics by default; metrics are now opt-out via `sentry_options_set_enable_metrics(options, false)`. ([#1609](https://github.com/getsentry/sentry-native/pull/1609)) -- Add WinGDK (Gaming.Desktop.x64) platform support ([#1631](https://github.com/getsentry/sentry-native/pull/1631)) **Fixes**: