diff --git a/vendor/glfw/bindings/bindings.odin b/vendor/glfw/bindings/bindings.odin index e7287e316..20488701c 100644 --- a/vendor/glfw/bindings/bindings.odin +++ b/vendor/glfw/bindings/bindings.odin @@ -3,13 +3,24 @@ package glfw_bindings import "core:c" import vk "vendor:vulkan" +GLFW_DYNAMIC :: #config(GLFW_DYNAMIC, false) + when ODIN_OS == .Windows { - foreign import glfw { - "../lib/glfw3_mt.lib", - "system:user32.lib", - "system:gdi32.lib", - "system:shell32.lib", - } + when GLFW_DYNAMIC { + foreign import glfw { + "../lib/glfw3dll.lib", + "system:user32.lib", + "system:gdi32.lib", + "system:shell32.lib", + } + } else { + foreign import glfw { + "../lib/glfw3mt.lib", + "system:user32.lib", + "system:gdi32.lib", + "system:shell32.lib", + } + } } else when ODIN_OS == .Linux { // TODO: Add the billion-or-so static libs to link to in linux foreign import glfw "system:glfw" diff --git a/vendor/glfw/constants.odin b/vendor/glfw/constants.odin index ec1364e07..160642bfb 100644 --- a/vendor/glfw/constants.odin +++ b/vendor/glfw/constants.odin @@ -1,5 +1,8 @@ package glfw +/* Config */ +GLFW_DYNAMIC :: #config(GLFW_DYNAMIC, false) + /*** Constants ***/ /* Versions */ VERSION_MAJOR :: 3 diff --git a/vendor/glfw/native_windows.odin b/vendor/glfw/native_windows.odin index 1d9c3af86..26f75845c 100644 --- a/vendor/glfw/native_windows.odin +++ b/vendor/glfw/native_windows.odin @@ -4,7 +4,11 @@ package glfw import win32 "core:sys/windows" -foreign import glfw { "lib/glfw3_mt.lib", "system:user32.lib", "system:gdi32.lib", "system:shell32.lib" } +when GLFW_DYNAMIC { + foreign import glfw { "lib/glfw3dll.lib", "system:user32.lib", "system:gdi32.lib", "system:shell32.lib" } +} else { + foreign import glfw { "lib/glfw3_mt.lib", "system:user32.lib", "system:gdi32.lib", "system:shell32.lib" } +} @(default_calling_convention="c", link_prefix="glfw") foreign glfw {