From 541bb0d4d9ee441b9655bd8edd697a3168587207 Mon Sep 17 00:00:00 2001 From: Qwerasd Date: Wed, 18 Jun 2025 16:54:50 -0600 Subject: [PATCH] fix window cross-compilation --- src/renderer/OpenGL.zig | 12 +++++++++++- src/renderer/opengl/shaders.zig | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/renderer/OpenGL.zig b/src/renderer/OpenGL.zig index 59c2f41b6..fe266d2ef 100644 --- a/src/renderer/OpenGL.zig +++ b/src/renderer/OpenGL.zig @@ -70,6 +70,16 @@ pub fn glfwWindowHints(config: *const configpkg.Config) glfw.Window.Hints { }; } +/// 32-bit windows cross-compilation breaks with `.c` for some reason, so... +const gl_debug_proc_callconv = + @typeInfo( + @typeInfo( + @typeInfo( + gl.c.GLDEBUGPROC, + ).optional.child, + ).pointer.child, + ).@"fn".calling_convention; + fn glDebugMessageCallback( src: gl.c.GLenum, typ: gl.c.GLenum, @@ -78,7 +88,7 @@ fn glDebugMessageCallback( len: gl.c.GLsizei, msg: [*c]const gl.c.GLchar, user_param: ?*const anyopaque, -) callconv(.c) void { +) callconv(gl_debug_proc_callconv) void { _ = user_param; const src_str: []const u8 = switch (src) { diff --git a/src/renderer/opengl/shaders.zig b/src/renderer/opengl/shaders.zig index 253ae8719..e509b723a 100644 --- a/src/renderer/opengl/shaders.zig +++ b/src/renderer/opengl/shaders.zig @@ -295,7 +295,7 @@ fn processIncludes(contents: [:0]const u8, basedir: []const u8) [:0]const u8 { "{s}{s}{s}", .{ contents[0..i], - @embedFile(basedir ++ .{std.fs.path.sep} ++ contents[start..end]), + @embedFile(basedir ++ "/" ++ contents[start..end]), processIncludes(contents[end + 1 ..], basedir), }, );