From d2f724f57da2f2b35e96727b86be27d7e92992ea Mon Sep 17 00:00:00 2001 From: scawful Date: Sat, 27 Sep 2025 20:17:07 -0400 Subject: [PATCH] Add Windows Development preset to CMake configuration - Introduced a new CMake preset for Windows development, enabling vcpkg integration and testing features. - Configured the preset to inherit from the debug configuration, ensuring consistency in build settings. - Set up cache variables for vcpkg and testing options, enhancing the development workflow on Windows. --- CMakePresets.json | 25 +++++++++++++++++++++++++ vcpkg.json | 33 +++++++++++++++++++++++++++++---- 2 files changed, 54 insertions(+), 4 deletions(-) diff --git a/CMakePresets.json b/CMakePresets.json index 0268c6e4..89c978c5 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -199,6 +199,26 @@ "VCPKG_MANIFEST_MODE": "ON" } }, + { + "name": "windows-dev", + "displayName": "Windows Development", + "description": "Windows development build with vcpkg and testing enabled", + "inherits": "debug", + "condition": { + "type": "equals", + "lhs": "${hostSystemName}", + "rhs": "Windows" + }, + "generator": "Visual Studio 17 2022", + "architecture": "x64", + "cacheVariables": { + "CMAKE_TOOLCHAIN_FILE": "${sourceDir}/vcpkg/scripts/buildsystems/vcpkg.cmake", + "VCPKG_TARGET_TRIPLET": "x64-windows", + "VCPKG_MANIFEST_MODE": "ON", + "YAZE_BUILD_TESTS": "ON", + "YAZE_ENABLE_ROM_TESTS": "ON" + } + }, { "name": "asan", "displayName": "AddressSanitizer", @@ -289,6 +309,11 @@ "name": "windows-release", "configurePreset": "windows-release", "displayName": "Windows Release Build" + }, + { + "name": "windows-dev", + "configurePreset": "windows-dev", + "displayName": "Windows Development Build" } ], "testPresets": [ diff --git a/vcpkg.json b/vcpkg.json index b17a6806..5fbe4c1b 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -3,9 +3,34 @@ "version": "0.3.1", "description": "Yet Another Zelda3 Editor", "dependencies": [ - "zlib", - "libpng", - "sdl2" + { + "name": "zlib", + "platform": "!uwp" + }, + { + "name": "libpng", + "platform": "!uwp" + }, + { + "name": "sdl2", + "platform": "!uwp", + "features": ["vulkan"] + }, + { + "name": "abseil", + "platform": "!uwp" + }, + { + "name": "gtest", + "platform": "!uwp", + "features": ["gmock"] + } ], - "builtin-baseline": "c8696863d371ab7f46e213d8f5ca923c4aef2a00" + "builtin-baseline": "c8696863d371ab7f46e213d8f5ca923c4aef2a00", + "overrides": [ + { + "name": "abseil", + "version": "20240116.2" + } + ] }