From efad11008616d30f685752fc70aa05be524c1a78 Mon Sep 17 00:00:00 2001 From: skal Date: Thu, 12 Mar 2026 17:14:57 +0100 Subject: fix(win): update wgpu-native to v27, unify Windows/macOS API paths MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - fetch_win_deps.sh: update wgpu-native v0.19.4.1 → v27.0.4.0 (same as macOS) - platform.h: remove v0.19 compat shims, Windows now uses WGPUStringView API - gpu.cc/gpu.h: remove DEMO_CROSS_COMPILE_WIN32 old-API branches - texture_readback.cc, visual_debug.cc, hybrid3d_effect.cc: same cleanup - rotating_cube_effect.cc: remove #ifdef guard for depthSlice - glfw3webgpu.c: remove old WGPUSurfaceDescriptorFromWindowsHWND branch - asset_manager.cc: fix DEMO_STRIP_ALL→STRIP_ALL guard (vs_main was missing in STRIP_ALL Windows builds because disk-loading path ran on embedded data) - tracker.cc: skip MP3 assets gracefully in STRIP_ALL builds instead of fatal handoff(Gemini): Windows .exe now runs under Wine. demo64k.exe renders frames and progresses through audio timeline. Pre-existing test failures unchanged. Co-Authored-By: Claude Sonnet 4.6 --- src/platform/platform.h | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) (limited to 'src/platform/platform.h') diff --git a/src/platform/platform.h b/src/platform/platform.h index 03aa2b3..4b31ac3 100644 --- a/src/platform/platform.h +++ b/src/platform/platform.h @@ -14,32 +14,29 @@ #include #include -#define WGPUOptionalBool_True true -#define WGPUOptionalBool_False false -#define WGPUSType_ShaderSourceWGSL WGPUSType_ShaderModuleWGSLDescriptor -#define WGPU_DEPTH_SLICE_UNDEFINED 0xffffffff -#define WGPUSurfaceGetCurrentTextureStatus_SuccessOptimal \ - WGPUSurfaceGetCurrentTextureStatus_Success -#define WGPUSurfaceGetCurrentTextureStatus_SuccessSuboptimal \ - WGPUSurfaceGetCurrentTextureStatus_Success -#define WGPUCallbackMode_WaitAnyOnly 0 - -typedef WGPUShaderModuleWGSLDescriptor WGPUShaderSourceWGSL; - -static inline const char* str_view(const char* str) { - return str; +static inline WGPUStringView str_view(const char* str) { + if (!str) + return {nullptr, 0}; + return {str, strlen(str)}; } -static inline const char* label_view(const char* str) { - return str; + +static inline WGPUStringView label_view(const char* str) { +#if !defined(STRIP_ALL) + if (!str) + return {nullptr, 0}; + return {str, strlen(str)}; +#else + (void)str; + return {nullptr, 0}; +#endif } static inline void platform_wgpu_wait_any(WGPUInstance instance) { - wgpuInstanceProcessEvents(instance); + wgpuInstanceWaitAny(instance, 0, nullptr, 0); } static inline void platform_wgpu_set_error_callback(WGPUDevice device, - WGPUErrorCallback callback) { - wgpuDeviceSetUncapturedErrorCallback(device, callback, nullptr); + WGPUUncapturedErrorCallback callback) { } #else -- cgit v1.2.3