From de4ee288f54ba7878040efbd146257507758910d Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Thu, 26 Feb 2026 06:56:16 -0800 Subject: [PATCH] pkg/dcimgui: only add the OpenGL3 shutdown helper if backend enabled --- pkg/dcimgui/build.zig | 3 +++ pkg/dcimgui/ext.cpp | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/pkg/dcimgui/build.zig b/pkg/dcimgui/build.zig index ae907dac0..2a1389834 100644 --- a/pkg/dcimgui/build.zig +++ b/pkg/dcimgui/build.zig @@ -56,6 +56,9 @@ pub fn build(b: *std.Build) !void { if (freetype) try flags.appendSlice(b.allocator, &.{ "-DIMGUI_ENABLE_FREETYPE=1", }); + if (backend_opengl3) try flags.appendSlice(b.allocator, &.{ + "-DZIGPKG_IMGUI_ENABLE_OPENGL3=1", + }); if (target.result.os.tag == .windows) { try flags.appendSlice(b.allocator, &.{ "-DIMGUI_IMPL_API=extern\t\"C\"\t__declspec(dllexport)", diff --git a/pkg/dcimgui/ext.cpp b/pkg/dcimgui/ext.cpp index a502c438e..b686c07f4 100644 --- a/pkg/dcimgui/ext.cpp +++ b/pkg/dcimgui/ext.cpp @@ -37,6 +37,7 @@ CIMGUI_API void ImGuiStyle_ImGuiStyle(cimgui::ImGuiStyle* self) // next Init to reload the GL function pointers via imgl3wInit(). #ifndef IMGUI_DISABLE #if __has_include("backends/imgui_impl_opengl3.h") +#ifdef ZIGPKG_IMGUI_ENABLE_OPENGL3 #include "backends/imgui_impl_opengl3.h" #include "backends/imgui_impl_opengl3_loader.h" @@ -45,7 +46,8 @@ CIMGUI_API void ImGui_ImplOpenGL3_ShutdownWithLoaderCleanup() ::ImGui_ImplOpenGL3_Shutdown(); memset(&imgl3wProcs, 0, sizeof(imgl3wProcs)); } -#endif -#endif +#endif // ZIGPKG_IMGUI_ENABLE_OPENGL3 +#endif // __has_include("backends/imgui_impl_opengl3.h") +#endif // IMGUI_DISABLE }