99eb880
diff -up kitty-0.16.0/kittens/choose/choose-data-types.h.me kitty-0.16.0/kittens/choose/choose-data-types.h
99eb880
diff -up kitty-0.16.0/kitty/glfw-wrapper.h.me kitty-0.16.0/kitty/glfw-wrapper.h
99eb880
--- kitty-0.16.0/kitty/glfw-wrapper.h.me	2020-03-05 15:24:21.496526344 +0100
99eb880
+++ kitty-0.16.0/kitty/glfw-wrapper.h	2020-03-05 15:35:19.352255301 +0100
99eb880
@@ -1584,547 +1584,547 @@ typedef void (*GLFWwaylandframecallbackf
99eb880
 typedef void (*GLFWDBusnotificationcreatedfun)(unsigned long long, uint32_t, void*);
99eb880
 typedef void (*GLFWDBusnotificationactivatedfun)(uint32_t, const char*);
99eb880
 typedef int (*glfwInit_func)(monotonic_t);
99eb880
-glfwInit_func glfwInit_impl;
99eb880
+extern glfwInit_func glfwInit_impl;
99eb880
 #define glfwInit glfwInit_impl
99eb880
 
99eb880
 typedef void (*glfwRunMainLoop_func)(GLFWtickcallback, void*);
99eb880
-glfwRunMainLoop_func glfwRunMainLoop_impl;
99eb880
+extern glfwRunMainLoop_func glfwRunMainLoop_impl;
99eb880
 #define glfwRunMainLoop glfwRunMainLoop_impl
99eb880
 
99eb880
 typedef void (*glfwStopMainLoop_func)(void);
99eb880
-glfwStopMainLoop_func glfwStopMainLoop_impl;
99eb880
+extern glfwStopMainLoop_func glfwStopMainLoop_impl;
99eb880
 #define glfwStopMainLoop glfwStopMainLoop_impl
99eb880
 
99eb880
 typedef unsigned long long (*glfwAddTimer_func)(monotonic_t, bool, GLFWuserdatafun, void *, GLFWuserdatafun);
99eb880
-glfwAddTimer_func glfwAddTimer_impl;
99eb880
+extern glfwAddTimer_func glfwAddTimer_impl;
99eb880
 #define glfwAddTimer glfwAddTimer_impl
99eb880
 
99eb880
 typedef void (*glfwUpdateTimer_func)(unsigned long long, monotonic_t, bool);
99eb880
-glfwUpdateTimer_func glfwUpdateTimer_impl;
99eb880
+extern glfwUpdateTimer_func glfwUpdateTimer_impl;
99eb880
 #define glfwUpdateTimer glfwUpdateTimer_impl
99eb880
 
99eb880
 typedef void (*glfwRemoveTimer_func)(unsigned long);
99eb880
-glfwRemoveTimer_func glfwRemoveTimer_impl;
99eb880
+extern glfwRemoveTimer_func glfwRemoveTimer_impl;
99eb880
 #define glfwRemoveTimer glfwRemoveTimer_impl
99eb880
 
99eb880
 typedef void (*glfwTerminate_func)(void);
99eb880
-glfwTerminate_func glfwTerminate_impl;
99eb880
+extern glfwTerminate_func glfwTerminate_impl;
99eb880
 #define glfwTerminate glfwTerminate_impl
99eb880
 
99eb880
 typedef void (*glfwInitHint_func)(int, int);
99eb880
-glfwInitHint_func glfwInitHint_impl;
99eb880
+extern glfwInitHint_func glfwInitHint_impl;
99eb880
 #define glfwInitHint glfwInitHint_impl
99eb880
 
99eb880
 typedef void (*glfwGetVersion_func)(int*, int*, int*);
99eb880
-glfwGetVersion_func glfwGetVersion_impl;
99eb880
+extern glfwGetVersion_func glfwGetVersion_impl;
99eb880
 #define glfwGetVersion glfwGetVersion_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetVersionString_func)(void);
99eb880
-glfwGetVersionString_func glfwGetVersionString_impl;
99eb880
+extern glfwGetVersionString_func glfwGetVersionString_impl;
99eb880
 #define glfwGetVersionString glfwGetVersionString_impl
99eb880
 
99eb880
 typedef int (*glfwGetError_func)(const char**);
99eb880
-glfwGetError_func glfwGetError_impl;
99eb880
+extern glfwGetError_func glfwGetError_impl;
99eb880
 #define glfwGetError glfwGetError_impl
99eb880
 
99eb880
 typedef GLFWerrorfun (*glfwSetErrorCallback_func)(GLFWerrorfun);
99eb880
-glfwSetErrorCallback_func glfwSetErrorCallback_impl;
99eb880
+extern glfwSetErrorCallback_func glfwSetErrorCallback_impl;
99eb880
 #define glfwSetErrorCallback glfwSetErrorCallback_impl
99eb880
 
99eb880
 typedef GLFWmonitor** (*glfwGetMonitors_func)(int*);
99eb880
-glfwGetMonitors_func glfwGetMonitors_impl;
99eb880
+extern glfwGetMonitors_func glfwGetMonitors_impl;
99eb880
 #define glfwGetMonitors glfwGetMonitors_impl
99eb880
 
99eb880
 typedef GLFWmonitor* (*glfwGetPrimaryMonitor_func)(void);
99eb880
-glfwGetPrimaryMonitor_func glfwGetPrimaryMonitor_impl;
99eb880
+extern glfwGetPrimaryMonitor_func glfwGetPrimaryMonitor_impl;
99eb880
 #define glfwGetPrimaryMonitor glfwGetPrimaryMonitor_impl
99eb880
 
99eb880
 typedef void (*glfwGetMonitorPos_func)(GLFWmonitor*, int*, int*);
99eb880
-glfwGetMonitorPos_func glfwGetMonitorPos_impl;
99eb880
+extern glfwGetMonitorPos_func glfwGetMonitorPos_impl;
99eb880
 #define glfwGetMonitorPos glfwGetMonitorPos_impl
99eb880
 
99eb880
 typedef void (*glfwGetMonitorWorkarea_func)(GLFWmonitor*, int*, int*, int*, int*);
99eb880
-glfwGetMonitorWorkarea_func glfwGetMonitorWorkarea_impl;
99eb880
+extern glfwGetMonitorWorkarea_func glfwGetMonitorWorkarea_impl;
99eb880
 #define glfwGetMonitorWorkarea glfwGetMonitorWorkarea_impl
99eb880
 
99eb880
 typedef void (*glfwGetMonitorPhysicalSize_func)(GLFWmonitor*, int*, int*);
99eb880
-glfwGetMonitorPhysicalSize_func glfwGetMonitorPhysicalSize_impl;
99eb880
+extern glfwGetMonitorPhysicalSize_func glfwGetMonitorPhysicalSize_impl;
99eb880
 #define glfwGetMonitorPhysicalSize glfwGetMonitorPhysicalSize_impl
99eb880
 
99eb880
 typedef void (*glfwGetMonitorContentScale_func)(GLFWmonitor*, float*, float*);
99eb880
-glfwGetMonitorContentScale_func glfwGetMonitorContentScale_impl;
99eb880
+extern glfwGetMonitorContentScale_func glfwGetMonitorContentScale_impl;
99eb880
 #define glfwGetMonitorContentScale glfwGetMonitorContentScale_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetMonitorName_func)(GLFWmonitor*);
99eb880
-glfwGetMonitorName_func glfwGetMonitorName_impl;
99eb880
+extern glfwGetMonitorName_func glfwGetMonitorName_impl;
99eb880
 #define glfwGetMonitorName glfwGetMonitorName_impl
99eb880
 
99eb880
 typedef void (*glfwSetMonitorUserPointer_func)(GLFWmonitor*, void*);
99eb880
-glfwSetMonitorUserPointer_func glfwSetMonitorUserPointer_impl;
99eb880
+extern glfwSetMonitorUserPointer_func glfwSetMonitorUserPointer_impl;
99eb880
 #define glfwSetMonitorUserPointer glfwSetMonitorUserPointer_impl
99eb880
 
99eb880
 typedef void* (*glfwGetMonitorUserPointer_func)(GLFWmonitor*);
99eb880
-glfwGetMonitorUserPointer_func glfwGetMonitorUserPointer_impl;
99eb880
+extern glfwGetMonitorUserPointer_func glfwGetMonitorUserPointer_impl;
99eb880
 #define glfwGetMonitorUserPointer glfwGetMonitorUserPointer_impl
99eb880
 
99eb880
 typedef GLFWmonitorfun (*glfwSetMonitorCallback_func)(GLFWmonitorfun);
99eb880
-glfwSetMonitorCallback_func glfwSetMonitorCallback_impl;
99eb880
+extern glfwSetMonitorCallback_func glfwSetMonitorCallback_impl;
99eb880
 #define glfwSetMonitorCallback glfwSetMonitorCallback_impl
99eb880
 
99eb880
 typedef const GLFWvidmode* (*glfwGetVideoModes_func)(GLFWmonitor*, int*);
99eb880
-glfwGetVideoModes_func glfwGetVideoModes_impl;
99eb880
+extern glfwGetVideoModes_func glfwGetVideoModes_impl;
99eb880
 #define glfwGetVideoModes glfwGetVideoModes_impl
99eb880
 
99eb880
 typedef const GLFWvidmode* (*glfwGetVideoMode_func)(GLFWmonitor*);
99eb880
-glfwGetVideoMode_func glfwGetVideoMode_impl;
99eb880
+extern glfwGetVideoMode_func glfwGetVideoMode_impl;
99eb880
 #define glfwGetVideoMode glfwGetVideoMode_impl
99eb880
 
99eb880
 typedef void (*glfwSetGamma_func)(GLFWmonitor*, float);
99eb880
-glfwSetGamma_func glfwSetGamma_impl;
99eb880
+extern glfwSetGamma_func glfwSetGamma_impl;
99eb880
 #define glfwSetGamma glfwSetGamma_impl
99eb880
 
99eb880
 typedef const GLFWgammaramp* (*glfwGetGammaRamp_func)(GLFWmonitor*);
99eb880
-glfwGetGammaRamp_func glfwGetGammaRamp_impl;
99eb880
+extern glfwGetGammaRamp_func glfwGetGammaRamp_impl;
99eb880
 #define glfwGetGammaRamp glfwGetGammaRamp_impl
99eb880
 
99eb880
 typedef void (*glfwSetGammaRamp_func)(GLFWmonitor*, const GLFWgammaramp*);
99eb880
-glfwSetGammaRamp_func glfwSetGammaRamp_impl;
99eb880
+extern glfwSetGammaRamp_func glfwSetGammaRamp_impl;
99eb880
 #define glfwSetGammaRamp glfwSetGammaRamp_impl
99eb880
 
99eb880
 typedef void (*glfwDefaultWindowHints_func)(void);
99eb880
-glfwDefaultWindowHints_func glfwDefaultWindowHints_impl;
99eb880
+extern glfwDefaultWindowHints_func glfwDefaultWindowHints_impl;
99eb880
 #define glfwDefaultWindowHints glfwDefaultWindowHints_impl
99eb880
 
99eb880
 typedef void (*glfwWindowHint_func)(int, int);
99eb880
-glfwWindowHint_func glfwWindowHint_impl;
99eb880
+extern glfwWindowHint_func glfwWindowHint_impl;
99eb880
 #define glfwWindowHint glfwWindowHint_impl
99eb880
 
99eb880
 typedef void (*glfwWindowHintString_func)(int, const char*);
99eb880
-glfwWindowHintString_func glfwWindowHintString_impl;
99eb880
+extern glfwWindowHintString_func glfwWindowHintString_impl;
99eb880
 #define glfwWindowHintString glfwWindowHintString_impl
99eb880
 
99eb880
 typedef GLFWwindow* (*glfwCreateWindow_func)(int, int, const char*, GLFWmonitor*, GLFWwindow*);
99eb880
-glfwCreateWindow_func glfwCreateWindow_impl;
99eb880
+extern glfwCreateWindow_func glfwCreateWindow_impl;
99eb880
 #define glfwCreateWindow glfwCreateWindow_impl
99eb880
 
99eb880
 typedef bool (*glfwToggleFullscreen_func)(GLFWwindow*, unsigned int);
99eb880
-glfwToggleFullscreen_func glfwToggleFullscreen_impl;
99eb880
+extern glfwToggleFullscreen_func glfwToggleFullscreen_impl;
99eb880
 #define glfwToggleFullscreen glfwToggleFullscreen_impl
99eb880
 
99eb880
 typedef void (*glfwDestroyWindow_func)(GLFWwindow*);
99eb880
-glfwDestroyWindow_func glfwDestroyWindow_impl;
99eb880
+extern glfwDestroyWindow_func glfwDestroyWindow_impl;
99eb880
 #define glfwDestroyWindow glfwDestroyWindow_impl
99eb880
 
99eb880
 typedef int (*glfwWindowShouldClose_func)(GLFWwindow*);
99eb880
-glfwWindowShouldClose_func glfwWindowShouldClose_impl;
99eb880
+extern glfwWindowShouldClose_func glfwWindowShouldClose_impl;
99eb880
 #define glfwWindowShouldClose glfwWindowShouldClose_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowShouldClose_func)(GLFWwindow*, int);
99eb880
-glfwSetWindowShouldClose_func glfwSetWindowShouldClose_impl;
99eb880
+extern glfwSetWindowShouldClose_func glfwSetWindowShouldClose_impl;
99eb880
 #define glfwSetWindowShouldClose glfwSetWindowShouldClose_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowTitle_func)(GLFWwindow*, const char*);
99eb880
-glfwSetWindowTitle_func glfwSetWindowTitle_impl;
99eb880
+extern glfwSetWindowTitle_func glfwSetWindowTitle_impl;
99eb880
 #define glfwSetWindowTitle glfwSetWindowTitle_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowIcon_func)(GLFWwindow*, int, const GLFWimage*);
99eb880
-glfwSetWindowIcon_func glfwSetWindowIcon_impl;
99eb880
+extern glfwSetWindowIcon_func glfwSetWindowIcon_impl;
99eb880
 #define glfwSetWindowIcon glfwSetWindowIcon_impl
99eb880
 
99eb880
 typedef void (*glfwGetWindowPos_func)(GLFWwindow*, int*, int*);
99eb880
-glfwGetWindowPos_func glfwGetWindowPos_impl;
99eb880
+extern glfwGetWindowPos_func glfwGetWindowPos_impl;
99eb880
 #define glfwGetWindowPos glfwGetWindowPos_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowPos_func)(GLFWwindow*, int, int);
99eb880
-glfwSetWindowPos_func glfwSetWindowPos_impl;
99eb880
+extern glfwSetWindowPos_func glfwSetWindowPos_impl;
99eb880
 #define glfwSetWindowPos glfwSetWindowPos_impl
99eb880
 
99eb880
 typedef void (*glfwGetWindowSize_func)(GLFWwindow*, int*, int*);
99eb880
-glfwGetWindowSize_func glfwGetWindowSize_impl;
99eb880
+extern glfwGetWindowSize_func glfwGetWindowSize_impl;
99eb880
 #define glfwGetWindowSize glfwGetWindowSize_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowSizeLimits_func)(GLFWwindow*, int, int, int, int);
99eb880
-glfwSetWindowSizeLimits_func glfwSetWindowSizeLimits_impl;
99eb880
+extern glfwSetWindowSizeLimits_func glfwSetWindowSizeLimits_impl;
99eb880
 #define glfwSetWindowSizeLimits glfwSetWindowSizeLimits_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowAspectRatio_func)(GLFWwindow*, int, int);
99eb880
-glfwSetWindowAspectRatio_func glfwSetWindowAspectRatio_impl;
99eb880
+extern glfwSetWindowAspectRatio_func glfwSetWindowAspectRatio_impl;
99eb880
 #define glfwSetWindowAspectRatio glfwSetWindowAspectRatio_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowSizeIncrements_func)(GLFWwindow*, int, int);
99eb880
-glfwSetWindowSizeIncrements_func glfwSetWindowSizeIncrements_impl;
99eb880
+extern glfwSetWindowSizeIncrements_func glfwSetWindowSizeIncrements_impl;
99eb880
 #define glfwSetWindowSizeIncrements glfwSetWindowSizeIncrements_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowSize_func)(GLFWwindow*, int, int);
99eb880
-glfwSetWindowSize_func glfwSetWindowSize_impl;
99eb880
+extern glfwSetWindowSize_func glfwSetWindowSize_impl;
99eb880
 #define glfwSetWindowSize glfwSetWindowSize_impl
99eb880
 
99eb880
 typedef void (*glfwGetFramebufferSize_func)(GLFWwindow*, int*, int*);
99eb880
-glfwGetFramebufferSize_func glfwGetFramebufferSize_impl;
99eb880
+extern glfwGetFramebufferSize_func glfwGetFramebufferSize_impl;
99eb880
 #define glfwGetFramebufferSize glfwGetFramebufferSize_impl
99eb880
 
99eb880
 typedef void (*glfwGetWindowFrameSize_func)(GLFWwindow*, int*, int*, int*, int*);
99eb880
-glfwGetWindowFrameSize_func glfwGetWindowFrameSize_impl;
99eb880
+extern glfwGetWindowFrameSize_func glfwGetWindowFrameSize_impl;
99eb880
 #define glfwGetWindowFrameSize glfwGetWindowFrameSize_impl
99eb880
 
99eb880
 typedef void (*glfwGetWindowContentScale_func)(GLFWwindow*, float*, float*);
99eb880
-glfwGetWindowContentScale_func glfwGetWindowContentScale_impl;
99eb880
+extern glfwGetWindowContentScale_func glfwGetWindowContentScale_impl;
99eb880
 #define glfwGetWindowContentScale glfwGetWindowContentScale_impl
99eb880
 
99eb880
 typedef monotonic_t (*glfwGetDoubleClickInterval_func)(GLFWwindow*);
99eb880
-glfwGetDoubleClickInterval_func glfwGetDoubleClickInterval_impl;
99eb880
+extern glfwGetDoubleClickInterval_func glfwGetDoubleClickInterval_impl;
99eb880
 #define glfwGetDoubleClickInterval glfwGetDoubleClickInterval_impl
99eb880
 
99eb880
 typedef float (*glfwGetWindowOpacity_func)(GLFWwindow*);
99eb880
-glfwGetWindowOpacity_func glfwGetWindowOpacity_impl;
99eb880
+extern glfwGetWindowOpacity_func glfwGetWindowOpacity_impl;
99eb880
 #define glfwGetWindowOpacity glfwGetWindowOpacity_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowOpacity_func)(GLFWwindow*, float);
99eb880
-glfwSetWindowOpacity_func glfwSetWindowOpacity_impl;
99eb880
+extern glfwSetWindowOpacity_func glfwSetWindowOpacity_impl;
99eb880
 #define glfwSetWindowOpacity glfwSetWindowOpacity_impl
99eb880
 
99eb880
 typedef void (*glfwIconifyWindow_func)(GLFWwindow*);
99eb880
-glfwIconifyWindow_func glfwIconifyWindow_impl;
99eb880
+extern glfwIconifyWindow_func glfwIconifyWindow_impl;
99eb880
 #define glfwIconifyWindow glfwIconifyWindow_impl
99eb880
 
99eb880
 typedef void (*glfwRestoreWindow_func)(GLFWwindow*);
99eb880
-glfwRestoreWindow_func glfwRestoreWindow_impl;
99eb880
+extern glfwRestoreWindow_func glfwRestoreWindow_impl;
99eb880
 #define glfwRestoreWindow glfwRestoreWindow_impl
99eb880
 
99eb880
 typedef void (*glfwMaximizeWindow_func)(GLFWwindow*);
99eb880
-glfwMaximizeWindow_func glfwMaximizeWindow_impl;
99eb880
+extern glfwMaximizeWindow_func glfwMaximizeWindow_impl;
99eb880
 #define glfwMaximizeWindow glfwMaximizeWindow_impl
99eb880
 
99eb880
 typedef void (*glfwShowWindow_func)(GLFWwindow*);
99eb880
-glfwShowWindow_func glfwShowWindow_impl;
99eb880
+extern glfwShowWindow_func glfwShowWindow_impl;
99eb880
 #define glfwShowWindow glfwShowWindow_impl
99eb880
 
99eb880
 typedef void (*glfwHideWindow_func)(GLFWwindow*);
99eb880
-glfwHideWindow_func glfwHideWindow_impl;
99eb880
+extern glfwHideWindow_func glfwHideWindow_impl;
99eb880
 #define glfwHideWindow glfwHideWindow_impl
99eb880
 
99eb880
 typedef void (*glfwFocusWindow_func)(GLFWwindow*);
99eb880
-glfwFocusWindow_func glfwFocusWindow_impl;
99eb880
+extern glfwFocusWindow_func glfwFocusWindow_impl;
99eb880
 #define glfwFocusWindow glfwFocusWindow_impl
99eb880
 
99eb880
 typedef void (*glfwRequestWindowAttention_func)(GLFWwindow*);
99eb880
-glfwRequestWindowAttention_func glfwRequestWindowAttention_impl;
99eb880
+extern glfwRequestWindowAttention_func glfwRequestWindowAttention_impl;
99eb880
 #define glfwRequestWindowAttention glfwRequestWindowAttention_impl
99eb880
 
99eb880
 typedef int (*glfwWindowBell_func)(GLFWwindow*);
99eb880
-glfwWindowBell_func glfwWindowBell_impl;
99eb880
+extern glfwWindowBell_func glfwWindowBell_impl;
99eb880
 #define glfwWindowBell glfwWindowBell_impl
99eb880
 
99eb880
 typedef GLFWmonitor* (*glfwGetWindowMonitor_func)(GLFWwindow*);
99eb880
-glfwGetWindowMonitor_func glfwGetWindowMonitor_impl;
99eb880
+extern glfwGetWindowMonitor_func glfwGetWindowMonitor_impl;
99eb880
 #define glfwGetWindowMonitor glfwGetWindowMonitor_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowMonitor_func)(GLFWwindow*, GLFWmonitor*, int, int, int, int, int);
99eb880
-glfwSetWindowMonitor_func glfwSetWindowMonitor_impl;
99eb880
+extern glfwSetWindowMonitor_func glfwSetWindowMonitor_impl;
99eb880
 #define glfwSetWindowMonitor glfwSetWindowMonitor_impl
99eb880
 
99eb880
 typedef int (*glfwGetWindowAttrib_func)(GLFWwindow*, int);
99eb880
-glfwGetWindowAttrib_func glfwGetWindowAttrib_impl;
99eb880
+extern glfwGetWindowAttrib_func glfwGetWindowAttrib_impl;
99eb880
 #define glfwGetWindowAttrib glfwGetWindowAttrib_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowAttrib_func)(GLFWwindow*, int, int);
99eb880
-glfwSetWindowAttrib_func glfwSetWindowAttrib_impl;
99eb880
+extern glfwSetWindowAttrib_func glfwSetWindowAttrib_impl;
99eb880
 #define glfwSetWindowAttrib glfwSetWindowAttrib_impl
99eb880
 
99eb880
 typedef void (*glfwSetWindowUserPointer_func)(GLFWwindow*, void*);
99eb880
-glfwSetWindowUserPointer_func glfwSetWindowUserPointer_impl;
99eb880
+extern glfwSetWindowUserPointer_func glfwSetWindowUserPointer_impl;
99eb880
 #define glfwSetWindowUserPointer glfwSetWindowUserPointer_impl
99eb880
 
99eb880
 typedef void* (*glfwGetWindowUserPointer_func)(GLFWwindow*);
99eb880
-glfwGetWindowUserPointer_func glfwGetWindowUserPointer_impl;
99eb880
+extern glfwGetWindowUserPointer_func glfwGetWindowUserPointer_impl;
99eb880
 #define glfwGetWindowUserPointer glfwGetWindowUserPointer_impl
99eb880
 
99eb880
 typedef GLFWwindowposfun (*glfwSetWindowPosCallback_func)(GLFWwindow*, GLFWwindowposfun);
99eb880
-glfwSetWindowPosCallback_func glfwSetWindowPosCallback_impl;
99eb880
+extern glfwSetWindowPosCallback_func glfwSetWindowPosCallback_impl;
99eb880
 #define glfwSetWindowPosCallback glfwSetWindowPosCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowsizefun (*glfwSetWindowSizeCallback_func)(GLFWwindow*, GLFWwindowsizefun);
99eb880
-glfwSetWindowSizeCallback_func glfwSetWindowSizeCallback_impl;
99eb880
+extern glfwSetWindowSizeCallback_func glfwSetWindowSizeCallback_impl;
99eb880
 #define glfwSetWindowSizeCallback glfwSetWindowSizeCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowclosefun (*glfwSetWindowCloseCallback_func)(GLFWwindow*, GLFWwindowclosefun);
99eb880
-glfwSetWindowCloseCallback_func glfwSetWindowCloseCallback_impl;
99eb880
+extern glfwSetWindowCloseCallback_func glfwSetWindowCloseCallback_impl;
99eb880
 #define glfwSetWindowCloseCallback glfwSetWindowCloseCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowrefreshfun (*glfwSetWindowRefreshCallback_func)(GLFWwindow*, GLFWwindowrefreshfun);
99eb880
-glfwSetWindowRefreshCallback_func glfwSetWindowRefreshCallback_impl;
99eb880
+extern glfwSetWindowRefreshCallback_func glfwSetWindowRefreshCallback_impl;
99eb880
 #define glfwSetWindowRefreshCallback glfwSetWindowRefreshCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowfocusfun (*glfwSetWindowFocusCallback_func)(GLFWwindow*, GLFWwindowfocusfun);
99eb880
-glfwSetWindowFocusCallback_func glfwSetWindowFocusCallback_impl;
99eb880
+extern glfwSetWindowFocusCallback_func glfwSetWindowFocusCallback_impl;
99eb880
 #define glfwSetWindowFocusCallback glfwSetWindowFocusCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowocclusionfun (*glfwSetWindowOcclusionCallback_func)(GLFWwindow*, GLFWwindowocclusionfun);
99eb880
-glfwSetWindowOcclusionCallback_func glfwSetWindowOcclusionCallback_impl;
99eb880
+extern glfwSetWindowOcclusionCallback_func glfwSetWindowOcclusionCallback_impl;
99eb880
 #define glfwSetWindowOcclusionCallback glfwSetWindowOcclusionCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowiconifyfun (*glfwSetWindowIconifyCallback_func)(GLFWwindow*, GLFWwindowiconifyfun);
99eb880
-glfwSetWindowIconifyCallback_func glfwSetWindowIconifyCallback_impl;
99eb880
+extern glfwSetWindowIconifyCallback_func glfwSetWindowIconifyCallback_impl;
99eb880
 #define glfwSetWindowIconifyCallback glfwSetWindowIconifyCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowmaximizefun (*glfwSetWindowMaximizeCallback_func)(GLFWwindow*, GLFWwindowmaximizefun);
99eb880
-glfwSetWindowMaximizeCallback_func glfwSetWindowMaximizeCallback_impl;
99eb880
+extern glfwSetWindowMaximizeCallback_func glfwSetWindowMaximizeCallback_impl;
99eb880
 #define glfwSetWindowMaximizeCallback glfwSetWindowMaximizeCallback_impl
99eb880
 
99eb880
 typedef GLFWframebuffersizefun (*glfwSetFramebufferSizeCallback_func)(GLFWwindow*, GLFWframebuffersizefun);
99eb880
-glfwSetFramebufferSizeCallback_func glfwSetFramebufferSizeCallback_impl;
99eb880
+extern glfwSetFramebufferSizeCallback_func glfwSetFramebufferSizeCallback_impl;
99eb880
 #define glfwSetFramebufferSizeCallback glfwSetFramebufferSizeCallback_impl
99eb880
 
99eb880
 typedef GLFWwindowcontentscalefun (*glfwSetWindowContentScaleCallback_func)(GLFWwindow*, GLFWwindowcontentscalefun);
99eb880
-glfwSetWindowContentScaleCallback_func glfwSetWindowContentScaleCallback_impl;
99eb880
+extern glfwSetWindowContentScaleCallback_func glfwSetWindowContentScaleCallback_impl;
99eb880
 #define glfwSetWindowContentScaleCallback glfwSetWindowContentScaleCallback_impl
99eb880
 
99eb880
 typedef void (*glfwPostEmptyEvent_func)(void);
99eb880
-glfwPostEmptyEvent_func glfwPostEmptyEvent_impl;
99eb880
+extern glfwPostEmptyEvent_func glfwPostEmptyEvent_impl;
99eb880
 #define glfwPostEmptyEvent glfwPostEmptyEvent_impl
99eb880
 
99eb880
 typedef int (*glfwGetInputMode_func)(GLFWwindow*, int);
99eb880
-glfwGetInputMode_func glfwGetInputMode_impl;
99eb880
+extern glfwGetInputMode_func glfwGetInputMode_impl;
99eb880
 #define glfwGetInputMode glfwGetInputMode_impl
99eb880
 
99eb880
 typedef void (*glfwSetInputMode_func)(GLFWwindow*, int, int);
99eb880
-glfwSetInputMode_func glfwSetInputMode_impl;
99eb880
+extern glfwSetInputMode_func glfwSetInputMode_impl;
99eb880
 #define glfwSetInputMode glfwSetInputMode_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetKeyName_func)(int, int);
99eb880
-glfwGetKeyName_func glfwGetKeyName_impl;
99eb880
+extern glfwGetKeyName_func glfwGetKeyName_impl;
99eb880
 #define glfwGetKeyName glfwGetKeyName_impl
99eb880
 
99eb880
 typedef int (*glfwGetNativeKeyForKey_func)(int);
99eb880
-glfwGetNativeKeyForKey_func glfwGetNativeKeyForKey_impl;
99eb880
+extern glfwGetNativeKeyForKey_func glfwGetNativeKeyForKey_impl;
99eb880
 #define glfwGetNativeKeyForKey glfwGetNativeKeyForKey_impl
99eb880
 
99eb880
 typedef int (*glfwGetKey_func)(GLFWwindow*, int);
99eb880
-glfwGetKey_func glfwGetKey_impl;
99eb880
+extern glfwGetKey_func glfwGetKey_impl;
99eb880
 #define glfwGetKey glfwGetKey_impl
99eb880
 
99eb880
 typedef int (*glfwGetMouseButton_func)(GLFWwindow*, int);
99eb880
-glfwGetMouseButton_func glfwGetMouseButton_impl;
99eb880
+extern glfwGetMouseButton_func glfwGetMouseButton_impl;
99eb880
 #define glfwGetMouseButton glfwGetMouseButton_impl
99eb880
 
99eb880
 typedef void (*glfwGetCursorPos_func)(GLFWwindow*, double*, double*);
99eb880
-glfwGetCursorPos_func glfwGetCursorPos_impl;
99eb880
+extern glfwGetCursorPos_func glfwGetCursorPos_impl;
99eb880
 #define glfwGetCursorPos glfwGetCursorPos_impl
99eb880
 
99eb880
 typedef void (*glfwSetCursorPos_func)(GLFWwindow*, double, double);
99eb880
-glfwSetCursorPos_func glfwSetCursorPos_impl;
99eb880
+extern glfwSetCursorPos_func glfwSetCursorPos_impl;
99eb880
 #define glfwSetCursorPos glfwSetCursorPos_impl
99eb880
 
99eb880
 typedef GLFWcursor* (*glfwCreateCursor_func)(const GLFWimage*, int, int, int);
99eb880
-glfwCreateCursor_func glfwCreateCursor_impl;
99eb880
+extern glfwCreateCursor_func glfwCreateCursor_impl;
99eb880
 #define glfwCreateCursor glfwCreateCursor_impl
99eb880
 
99eb880
 typedef GLFWcursor* (*glfwCreateStandardCursor_func)(GLFWCursorShape);
99eb880
-glfwCreateStandardCursor_func glfwCreateStandardCursor_impl;
99eb880
+extern glfwCreateStandardCursor_func glfwCreateStandardCursor_impl;
99eb880
 #define glfwCreateStandardCursor glfwCreateStandardCursor_impl
99eb880
 
99eb880
 typedef void (*glfwDestroyCursor_func)(GLFWcursor*);
99eb880
-glfwDestroyCursor_func glfwDestroyCursor_impl;
99eb880
+extern glfwDestroyCursor_func glfwDestroyCursor_impl;
99eb880
 #define glfwDestroyCursor glfwDestroyCursor_impl
99eb880
 
99eb880
 typedef void (*glfwSetCursor_func)(GLFWwindow*, GLFWcursor*);
99eb880
-glfwSetCursor_func glfwSetCursor_impl;
99eb880
+extern glfwSetCursor_func glfwSetCursor_impl;
99eb880
 #define glfwSetCursor glfwSetCursor_impl
99eb880
 
99eb880
 typedef GLFWkeyboardfun (*glfwSetKeyboardCallback_func)(GLFWwindow*, GLFWkeyboardfun);
99eb880
-glfwSetKeyboardCallback_func glfwSetKeyboardCallback_impl;
99eb880
+extern glfwSetKeyboardCallback_func glfwSetKeyboardCallback_impl;
99eb880
 #define glfwSetKeyboardCallback glfwSetKeyboardCallback_impl
99eb880
 
99eb880
 typedef void (*glfwUpdateIMEState_func)(GLFWwindow*, int, int, int, int, int);
99eb880
-glfwUpdateIMEState_func glfwUpdateIMEState_impl;
99eb880
+extern glfwUpdateIMEState_func glfwUpdateIMEState_impl;
99eb880
 #define glfwUpdateIMEState glfwUpdateIMEState_impl
99eb880
 
99eb880
 typedef GLFWmousebuttonfun (*glfwSetMouseButtonCallback_func)(GLFWwindow*, GLFWmousebuttonfun);
99eb880
-glfwSetMouseButtonCallback_func glfwSetMouseButtonCallback_impl;
99eb880
+extern glfwSetMouseButtonCallback_func glfwSetMouseButtonCallback_impl;
99eb880
 #define glfwSetMouseButtonCallback glfwSetMouseButtonCallback_impl
99eb880
 
99eb880
 typedef GLFWcursorposfun (*glfwSetCursorPosCallback_func)(GLFWwindow*, GLFWcursorposfun);
99eb880
-glfwSetCursorPosCallback_func glfwSetCursorPosCallback_impl;
99eb880
+extern glfwSetCursorPosCallback_func glfwSetCursorPosCallback_impl;
99eb880
 #define glfwSetCursorPosCallback glfwSetCursorPosCallback_impl
99eb880
 
99eb880
 typedef GLFWcursorenterfun (*glfwSetCursorEnterCallback_func)(GLFWwindow*, GLFWcursorenterfun);
99eb880
-glfwSetCursorEnterCallback_func glfwSetCursorEnterCallback_impl;
99eb880
+extern glfwSetCursorEnterCallback_func glfwSetCursorEnterCallback_impl;
99eb880
 #define glfwSetCursorEnterCallback glfwSetCursorEnterCallback_impl
99eb880
 
99eb880
 typedef GLFWscrollfun (*glfwSetScrollCallback_func)(GLFWwindow*, GLFWscrollfun);
99eb880
-glfwSetScrollCallback_func glfwSetScrollCallback_impl;
99eb880
+extern glfwSetScrollCallback_func glfwSetScrollCallback_impl;
99eb880
 #define glfwSetScrollCallback glfwSetScrollCallback_impl
99eb880
 
99eb880
 typedef GLFWdropfun (*glfwSetDropCallback_func)(GLFWwindow*, GLFWdropfun);
99eb880
-glfwSetDropCallback_func glfwSetDropCallback_impl;
99eb880
+extern glfwSetDropCallback_func glfwSetDropCallback_impl;
99eb880
 #define glfwSetDropCallback glfwSetDropCallback_impl
99eb880
 
99eb880
 typedef GLFWliveresizefun (*glfwSetLiveResizeCallback_func)(GLFWwindow*, GLFWliveresizefun);
99eb880
-glfwSetLiveResizeCallback_func glfwSetLiveResizeCallback_impl;
99eb880
+extern glfwSetLiveResizeCallback_func glfwSetLiveResizeCallback_impl;
99eb880
 #define glfwSetLiveResizeCallback glfwSetLiveResizeCallback_impl
99eb880
 
99eb880
 typedef int (*glfwJoystickPresent_func)(int);
99eb880
-glfwJoystickPresent_func glfwJoystickPresent_impl;
99eb880
+extern glfwJoystickPresent_func glfwJoystickPresent_impl;
99eb880
 #define glfwJoystickPresent glfwJoystickPresent_impl
99eb880
 
99eb880
 typedef const float* (*glfwGetJoystickAxes_func)(int, int*);
99eb880
-glfwGetJoystickAxes_func glfwGetJoystickAxes_impl;
99eb880
+extern glfwGetJoystickAxes_func glfwGetJoystickAxes_impl;
99eb880
 #define glfwGetJoystickAxes glfwGetJoystickAxes_impl
99eb880
 
99eb880
 typedef const unsigned char* (*glfwGetJoystickButtons_func)(int, int*);
99eb880
-glfwGetJoystickButtons_func glfwGetJoystickButtons_impl;
99eb880
+extern glfwGetJoystickButtons_func glfwGetJoystickButtons_impl;
99eb880
 #define glfwGetJoystickButtons glfwGetJoystickButtons_impl
99eb880
 
99eb880
 typedef const unsigned char* (*glfwGetJoystickHats_func)(int, int*);
99eb880
-glfwGetJoystickHats_func glfwGetJoystickHats_impl;
99eb880
+extern glfwGetJoystickHats_func glfwGetJoystickHats_impl;
99eb880
 #define glfwGetJoystickHats glfwGetJoystickHats_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetJoystickName_func)(int);
99eb880
-glfwGetJoystickName_func glfwGetJoystickName_impl;
99eb880
+extern glfwGetJoystickName_func glfwGetJoystickName_impl;
99eb880
 #define glfwGetJoystickName glfwGetJoystickName_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetJoystickGUID_func)(int);
99eb880
-glfwGetJoystickGUID_func glfwGetJoystickGUID_impl;
99eb880
+extern glfwGetJoystickGUID_func glfwGetJoystickGUID_impl;
99eb880
 #define glfwGetJoystickGUID glfwGetJoystickGUID_impl
99eb880
 
99eb880
 typedef void (*glfwSetJoystickUserPointer_func)(int, void*);
99eb880
-glfwSetJoystickUserPointer_func glfwSetJoystickUserPointer_impl;
99eb880
+extern glfwSetJoystickUserPointer_func glfwSetJoystickUserPointer_impl;
99eb880
 #define glfwSetJoystickUserPointer glfwSetJoystickUserPointer_impl
99eb880
 
99eb880
 typedef void* (*glfwGetJoystickUserPointer_func)(int);
99eb880
-glfwGetJoystickUserPointer_func glfwGetJoystickUserPointer_impl;
99eb880
+extern glfwGetJoystickUserPointer_func glfwGetJoystickUserPointer_impl;
99eb880
 #define glfwGetJoystickUserPointer glfwGetJoystickUserPointer_impl
99eb880
 
99eb880
 typedef int (*glfwJoystickIsGamepad_func)(int);
99eb880
-glfwJoystickIsGamepad_func glfwJoystickIsGamepad_impl;
99eb880
+extern glfwJoystickIsGamepad_func glfwJoystickIsGamepad_impl;
99eb880
 #define glfwJoystickIsGamepad glfwJoystickIsGamepad_impl
99eb880
 
99eb880
 typedef GLFWjoystickfun (*glfwSetJoystickCallback_func)(GLFWjoystickfun);
99eb880
-glfwSetJoystickCallback_func glfwSetJoystickCallback_impl;
99eb880
+extern glfwSetJoystickCallback_func glfwSetJoystickCallback_impl;
99eb880
 #define glfwSetJoystickCallback glfwSetJoystickCallback_impl
99eb880
 
99eb880
 typedef int (*glfwUpdateGamepadMappings_func)(const char*);
99eb880
-glfwUpdateGamepadMappings_func glfwUpdateGamepadMappings_impl;
99eb880
+extern glfwUpdateGamepadMappings_func glfwUpdateGamepadMappings_impl;
99eb880
 #define glfwUpdateGamepadMappings glfwUpdateGamepadMappings_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetGamepadName_func)(int);
99eb880
-glfwGetGamepadName_func glfwGetGamepadName_impl;
99eb880
+extern glfwGetGamepadName_func glfwGetGamepadName_impl;
99eb880
 #define glfwGetGamepadName glfwGetGamepadName_impl
99eb880
 
99eb880
 typedef int (*glfwGetGamepadState_func)(int, GLFWgamepadstate*);
99eb880
-glfwGetGamepadState_func glfwGetGamepadState_impl;
99eb880
+extern glfwGetGamepadState_func glfwGetGamepadState_impl;
99eb880
 #define glfwGetGamepadState glfwGetGamepadState_impl
99eb880
 
99eb880
 typedef void (*glfwSetClipboardString_func)(GLFWwindow*, const char*);
99eb880
-glfwSetClipboardString_func glfwSetClipboardString_impl;
99eb880
+extern glfwSetClipboardString_func glfwSetClipboardString_impl;
99eb880
 #define glfwSetClipboardString glfwSetClipboardString_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetClipboardString_func)(GLFWwindow*);
99eb880
-glfwGetClipboardString_func glfwGetClipboardString_impl;
99eb880
+extern glfwGetClipboardString_func glfwGetClipboardString_impl;
99eb880
 #define glfwGetClipboardString glfwGetClipboardString_impl
99eb880
 
99eb880
 typedef monotonic_t (*glfwGetTime_func)(void);
99eb880
-glfwGetTime_func glfwGetTime_impl;
99eb880
+extern glfwGetTime_func glfwGetTime_impl;
99eb880
 #define glfwGetTime glfwGetTime_impl
99eb880
 
99eb880
 typedef void (*glfwMakeContextCurrent_func)(GLFWwindow*);
99eb880
-glfwMakeContextCurrent_func glfwMakeContextCurrent_impl;
99eb880
+extern glfwMakeContextCurrent_func glfwMakeContextCurrent_impl;
99eb880
 #define glfwMakeContextCurrent glfwMakeContextCurrent_impl
99eb880
 
99eb880
 typedef GLFWwindow* (*glfwGetCurrentContext_func)(void);
99eb880
-glfwGetCurrentContext_func glfwGetCurrentContext_impl;
99eb880
+extern glfwGetCurrentContext_func glfwGetCurrentContext_impl;
99eb880
 #define glfwGetCurrentContext glfwGetCurrentContext_impl
99eb880
 
99eb880
 typedef void (*glfwSwapBuffers_func)(GLFWwindow*);
99eb880
-glfwSwapBuffers_func glfwSwapBuffers_impl;
99eb880
+extern glfwSwapBuffers_func glfwSwapBuffers_impl;
99eb880
 #define glfwSwapBuffers glfwSwapBuffers_impl
99eb880
 
99eb880
 typedef void (*glfwSwapInterval_func)(int);
99eb880
-glfwSwapInterval_func glfwSwapInterval_impl;
99eb880
+extern glfwSwapInterval_func glfwSwapInterval_impl;
99eb880
 #define glfwSwapInterval glfwSwapInterval_impl
99eb880
 
99eb880
 typedef int (*glfwExtensionSupported_func)(const char*);
99eb880
-glfwExtensionSupported_func glfwExtensionSupported_impl;
99eb880
+extern glfwExtensionSupported_func glfwExtensionSupported_impl;
99eb880
 #define glfwExtensionSupported glfwExtensionSupported_impl
99eb880
 
99eb880
 typedef GLFWglproc (*glfwGetProcAddress_func)(const char*);
99eb880
-glfwGetProcAddress_func glfwGetProcAddress_impl;
99eb880
+extern glfwGetProcAddress_func glfwGetProcAddress_impl;
99eb880
 #define glfwGetProcAddress glfwGetProcAddress_impl
99eb880
 
99eb880
 typedef int (*glfwVulkanSupported_func)(void);
99eb880
-glfwVulkanSupported_func glfwVulkanSupported_impl;
99eb880
+extern glfwVulkanSupported_func glfwVulkanSupported_impl;
99eb880
 #define glfwVulkanSupported glfwVulkanSupported_impl
99eb880
 
99eb880
 typedef const char** (*glfwGetRequiredInstanceExtensions_func)(uint32_t*);
99eb880
-glfwGetRequiredInstanceExtensions_func glfwGetRequiredInstanceExtensions_impl;
99eb880
+extern glfwGetRequiredInstanceExtensions_func glfwGetRequiredInstanceExtensions_impl;
99eb880
 #define glfwGetRequiredInstanceExtensions glfwGetRequiredInstanceExtensions_impl
99eb880
 
99eb880
 typedef void* (*glfwGetCocoaWindow_func)(GLFWwindow*);
99eb880
-glfwGetCocoaWindow_func glfwGetCocoaWindow_impl;
99eb880
+extern glfwGetCocoaWindow_func glfwGetCocoaWindow_impl;
99eb880
 #define glfwGetCocoaWindow glfwGetCocoaWindow_impl
99eb880
 
99eb880
 typedef void* (*glfwGetNSGLContext_func)(GLFWwindow*);
99eb880
-glfwGetNSGLContext_func glfwGetNSGLContext_impl;
99eb880
+extern glfwGetNSGLContext_func glfwGetNSGLContext_impl;
99eb880
 #define glfwGetNSGLContext glfwGetNSGLContext_impl
99eb880
 
99eb880
 typedef uint32_t (*glfwGetCocoaMonitor_func)(GLFWmonitor*);
99eb880
-glfwGetCocoaMonitor_func glfwGetCocoaMonitor_impl;
99eb880
+extern glfwGetCocoaMonitor_func glfwGetCocoaMonitor_impl;
99eb880
 #define glfwGetCocoaMonitor glfwGetCocoaMonitor_impl
99eb880
 
99eb880
 typedef GLFWcocoatextinputfilterfun (*glfwSetCocoaTextInputFilter_func)(GLFWwindow*, GLFWcocoatextinputfilterfun);
99eb880
-glfwSetCocoaTextInputFilter_func glfwSetCocoaTextInputFilter_impl;
99eb880
+extern glfwSetCocoaTextInputFilter_func glfwSetCocoaTextInputFilter_impl;
99eb880
 #define glfwSetCocoaTextInputFilter glfwSetCocoaTextInputFilter_impl
99eb880
 
99eb880
 typedef GLFWcocoatogglefullscreenfun (*glfwSetCocoaToggleFullscreenIntercept_func)(GLFWwindow*, GLFWcocoatogglefullscreenfun);
99eb880
-glfwSetCocoaToggleFullscreenIntercept_func glfwSetCocoaToggleFullscreenIntercept_impl;
99eb880
+extern glfwSetCocoaToggleFullscreenIntercept_func glfwSetCocoaToggleFullscreenIntercept_impl;
99eb880
 #define glfwSetCocoaToggleFullscreenIntercept glfwSetCocoaToggleFullscreenIntercept_impl
99eb880
 
99eb880
 typedef GLFWapplicationshouldhandlereopenfun (*glfwSetApplicationShouldHandleReopen_func)(GLFWapplicationshouldhandlereopenfun);
99eb880
-glfwSetApplicationShouldHandleReopen_func glfwSetApplicationShouldHandleReopen_impl;
99eb880
+extern glfwSetApplicationShouldHandleReopen_func glfwSetApplicationShouldHandleReopen_impl;
99eb880
 #define glfwSetApplicationShouldHandleReopen glfwSetApplicationShouldHandleReopen_impl
99eb880
 
99eb880
 typedef GLFWapplicationwillfinishlaunchingfun (*glfwSetApplicationWillFinishLaunching_func)(GLFWapplicationwillfinishlaunchingfun);
99eb880
-glfwSetApplicationWillFinishLaunching_func glfwSetApplicationWillFinishLaunching_impl;
99eb880
+extern glfwSetApplicationWillFinishLaunching_func glfwSetApplicationWillFinishLaunching_impl;
99eb880
 #define glfwSetApplicationWillFinishLaunching glfwSetApplicationWillFinishLaunching_impl
99eb880
 
99eb880
 typedef void (*glfwGetCocoaKeyEquivalent_func)(int, int, char*, size_t, int*);
99eb880
-glfwGetCocoaKeyEquivalent_func glfwGetCocoaKeyEquivalent_impl;
99eb880
+extern glfwGetCocoaKeyEquivalent_func glfwGetCocoaKeyEquivalent_impl;
99eb880
 #define glfwGetCocoaKeyEquivalent glfwGetCocoaKeyEquivalent_impl
99eb880
 
99eb880
 typedef void (*glfwCocoaRequestRenderFrame_func)(GLFWwindow*, GLFWcocoarenderframefun);
99eb880
-glfwCocoaRequestRenderFrame_func glfwCocoaRequestRenderFrame_impl;
99eb880
+extern glfwCocoaRequestRenderFrame_func glfwCocoaRequestRenderFrame_impl;
99eb880
 #define glfwCocoaRequestRenderFrame glfwCocoaRequestRenderFrame_impl
99eb880
 
99eb880
 typedef void* (*glfwGetX11Display_func)(void);
99eb880
-glfwGetX11Display_func glfwGetX11Display_impl;
99eb880
+extern glfwGetX11Display_func glfwGetX11Display_impl;
99eb880
 #define glfwGetX11Display glfwGetX11Display_impl
99eb880
 
99eb880
 typedef int32_t (*glfwGetX11Window_func)(GLFWwindow*);
99eb880
-glfwGetX11Window_func glfwGetX11Window_impl;
99eb880
+extern glfwGetX11Window_func glfwGetX11Window_impl;
99eb880
 #define glfwGetX11Window glfwGetX11Window_impl
99eb880
 
99eb880
 typedef void (*glfwSetPrimarySelectionString_func)(GLFWwindow*, const char*);
99eb880
-glfwSetPrimarySelectionString_func glfwSetPrimarySelectionString_impl;
99eb880
+extern glfwSetPrimarySelectionString_func glfwSetPrimarySelectionString_impl;
99eb880
 #define glfwSetPrimarySelectionString glfwSetPrimarySelectionString_impl
99eb880
 
99eb880
 typedef const char* (*glfwGetPrimarySelectionString_func)(GLFWwindow*);
99eb880
-glfwGetPrimarySelectionString_func glfwGetPrimarySelectionString_impl;
99eb880
+extern glfwGetPrimarySelectionString_func glfwGetPrimarySelectionString_impl;
99eb880
 #define glfwGetPrimarySelectionString glfwGetPrimarySelectionString_impl
99eb880
 
99eb880
 typedef int (*glfwGetNativeKeyForName_func)(const char*, int);
99eb880
-glfwGetNativeKeyForName_func glfwGetNativeKeyForName_impl;
99eb880
+extern glfwGetNativeKeyForName_func glfwGetNativeKeyForName_impl;
99eb880
 #define glfwGetNativeKeyForName glfwGetNativeKeyForName_impl
99eb880
 
99eb880
 typedef void (*glfwRequestWaylandFrameEvent_func)(GLFWwindow*, unsigned long long, GLFWwaylandframecallbackfunc);
99eb880
-glfwRequestWaylandFrameEvent_func glfwRequestWaylandFrameEvent_impl;
99eb880
+extern glfwRequestWaylandFrameEvent_func glfwRequestWaylandFrameEvent_impl;
99eb880
 #define glfwRequestWaylandFrameEvent glfwRequestWaylandFrameEvent_impl
99eb880
 
99eb880
 typedef unsigned long long (*glfwDBusUserNotify_func)(const char*, const char*, const char*, const char*, const char*, int32_t, GLFWDBusnotificationcreatedfun, void*);
99eb880
-glfwDBusUserNotify_func glfwDBusUserNotify_impl;
99eb880
+extern glfwDBusUserNotify_func glfwDBusUserNotify_impl;
99eb880
 #define glfwDBusUserNotify glfwDBusUserNotify_impl
99eb880
 
99eb880
 typedef void (*glfwDBusSetUserNotificationHandler_func)(GLFWDBusnotificationactivatedfun);
99eb880
-glfwDBusSetUserNotificationHandler_func glfwDBusSetUserNotificationHandler_impl;
99eb880
+extern glfwDBusSetUserNotificationHandler_func glfwDBusSetUserNotificationHandler_impl;
99eb880
 #define glfwDBusSetUserNotificationHandler glfwDBusSetUserNotificationHandler_impl
99eb880
 
99eb880
 const char* load_glfw(const char* path);
99eb880
diff -up kitty-0.16.0/kitty/glfw-wrapper.c.me kitty-0.16.0/kitty/glfw-wrapper.c
99eb880
--- kitty-0.16.0/kitty/glfw-wrapper.c.me	2020-03-05 15:44:59.293515436 +0100
99eb880
+++ kitty-0.16.0/kitty/glfw-wrapper.c	2020-03-05 15:53:38.246972639 +0100
99eb880
@@ -5,6 +5,143 @@
99eb880
 
99eb880
 static void* handle = NULL;
99eb880
 
99eb880
+glfwInit_func glfwInit_impl;
99eb880
+glfwRunMainLoop_func glfwRunMainLoop_impl;
99eb880
+glfwStopMainLoop_func glfwStopMainLoop_impl;
99eb880
+glfwAddTimer_func glfwAddTimer_impl;
99eb880
+glfwUpdateTimer_func glfwUpdateTimer_impl;
99eb880
+glfwRemoveTimer_func glfwRemoveTimer_impl;
99eb880
+glfwTerminate_func glfwTerminate_impl;
99eb880
+glfwInitHint_func glfwInitHint_impl;
99eb880
+glfwGetVersion_func glfwGetVersion_impl;
99eb880
+glfwGetVersionString_func glfwGetVersionString_impl;
99eb880
+glfwGetError_func glfwGetError_impl;
99eb880
+glfwSetErrorCallback_func glfwSetErrorCallback_impl;
99eb880
+glfwGetMonitors_func glfwGetMonitors_impl;
99eb880
+glfwGetPrimaryMonitor_func glfwGetPrimaryMonitor_impl;
99eb880
+glfwGetMonitorPos_func glfwGetMonitorPos_impl;
99eb880
+glfwGetMonitorWorkarea_func glfwGetMonitorWorkarea_impl;
99eb880
+glfwGetMonitorPhysicalSize_func glfwGetMonitorPhysicalSize_impl;
99eb880
+glfwGetMonitorContentScale_func glfwGetMonitorContentScale_impl;
99eb880
+glfwGetMonitorName_func glfwGetMonitorName_impl;
99eb880
+glfwSetMonitorUserPointer_func glfwSetMonitorUserPointer_impl;
99eb880
+glfwGetMonitorUserPointer_func glfwGetMonitorUserPointer_impl;
99eb880
+glfwSetMonitorCallback_func glfwSetMonitorCallback_impl;
99eb880
+glfwGetVideoModes_func glfwGetVideoModes_impl;
99eb880
+glfwGetVideoMode_func glfwGetVideoMode_impl;
99eb880
+glfwSetGamma_func glfwSetGamma_impl;
99eb880
+glfwGetGammaRamp_func glfwGetGammaRamp_impl;
99eb880
+glfwSetGammaRamp_func glfwSetGammaRamp_impl;
99eb880
+glfwDefaultWindowHints_func glfwDefaultWindowHints_impl;
99eb880
+glfwWindowHint_func glfwWindowHint_impl;
99eb880
+glfwWindowHintString_func glfwWindowHintString_impl;
99eb880
+glfwCreateWindow_func glfwCreateWindow_impl;
99eb880
+glfwToggleFullscreen_func glfwToggleFullscreen_impl;
99eb880
+glfwDestroyWindow_func glfwDestroyWindow_impl;
99eb880
+glfwWindowShouldClose_func glfwWindowShouldClose_impl;
99eb880
+glfwSetWindowShouldClose_func glfwSetWindowShouldClose_impl;
99eb880
+glfwSetWindowTitle_func glfwSetWindowTitle_impl;
99eb880
+glfwSetWindowIcon_func glfwSetWindowIcon_impl;
99eb880
+glfwGetWindowPos_func glfwGetWindowPos_impl;
99eb880
+glfwSetWindowPos_func glfwSetWindowPos_impl;
99eb880
+glfwGetWindowSize_func glfwGetWindowSize_impl;
99eb880
+glfwSetWindowSizeLimits_func glfwSetWindowSizeLimits_impl;
99eb880
+glfwSetWindowAspectRatio_func glfwSetWindowAspectRatio_impl;
99eb880
+glfwSetWindowSizeIncrements_func glfwSetWindowSizeIncrements_impl;
99eb880
+glfwSetWindowSize_func glfwSetWindowSize_impl;
99eb880
+glfwGetFramebufferSize_func glfwGetFramebufferSize_impl;
99eb880
+glfwGetWindowFrameSize_func glfwGetWindowFrameSize_impl;
99eb880
+glfwGetWindowContentScale_func glfwGetWindowContentScale_impl;
99eb880
+glfwGetDoubleClickInterval_func glfwGetDoubleClickInterval_impl;
99eb880
+glfwGetWindowOpacity_func glfwGetWindowOpacity_impl;
99eb880
+glfwSetWindowOpacity_func glfwSetWindowOpacity_impl;
99eb880
+glfwIconifyWindow_func glfwIconifyWindow_impl;
99eb880
+glfwRestoreWindow_func glfwRestoreWindow_impl;
99eb880
+glfwMaximizeWindow_func glfwMaximizeWindow_impl;
99eb880
+glfwShowWindow_func glfwShowWindow_impl;
99eb880
+glfwHideWindow_func glfwHideWindow_impl;
99eb880
+glfwFocusWindow_func glfwFocusWindow_impl;
99eb880
+glfwRequestWindowAttention_func glfwRequestWindowAttention_impl;
99eb880
+glfwWindowBell_func glfwWindowBell_impl;
99eb880
+glfwGetWindowMonitor_func glfwGetWindowMonitor_impl;
99eb880
+glfwSetWindowMonitor_func glfwSetWindowMonitor_impl;
99eb880
+glfwGetWindowAttrib_func glfwGetWindowAttrib_impl;
99eb880
+glfwSetWindowAttrib_func glfwSetWindowAttrib_impl;
99eb880
+glfwSetWindowUserPointer_func glfwSetWindowUserPointer_impl;
99eb880
+glfwGetWindowUserPointer_func glfwGetWindowUserPointer_impl;
99eb880
+glfwSetWindowPosCallback_func glfwSetWindowPosCallback_impl;
99eb880
+glfwSetWindowSizeCallback_func glfwSetWindowSizeCallback_impl;
99eb880
+glfwSetWindowCloseCallback_func glfwSetWindowCloseCallback_impl;
99eb880
+glfwSetWindowRefreshCallback_func glfwSetWindowRefreshCallback_impl;
99eb880
+glfwSetWindowFocusCallback_func glfwSetWindowFocusCallback_impl;
99eb880
+glfwSetWindowOcclusionCallback_func glfwSetWindowOcclusionCallback_impl;
99eb880
+glfwSetWindowIconifyCallback_func glfwSetWindowIconifyCallback_impl;
99eb880
+glfwSetWindowMaximizeCallback_func glfwSetWindowMaximizeCallback_impl;
99eb880
+glfwSetFramebufferSizeCallback_func glfwSetFramebufferSizeCallback_impl;
99eb880
+glfwSetWindowContentScaleCallback_func glfwSetWindowContentScaleCallback_impl;
99eb880
+glfwPostEmptyEvent_func glfwPostEmptyEvent_impl;
99eb880
+glfwGetInputMode_func glfwGetInputMode_impl;
99eb880
+glfwSetInputMode_func glfwSetInputMode_impl;
99eb880
+glfwGetKeyName_func glfwGetKeyName_impl;
99eb880
+glfwGetNativeKeyForKey_func glfwGetNativeKeyForKey_impl;
99eb880
+glfwGetKey_func glfwGetKey_impl;
99eb880
+glfwGetMouseButton_func glfwGetMouseButton_impl;
99eb880
+glfwGetCursorPos_func glfwGetCursorPos_impl;
99eb880
+glfwSetCursorPos_func glfwSetCursorPos_impl;
99eb880
+glfwCreateCursor_func glfwCreateCursor_impl;
99eb880
+glfwCreateStandardCursor_func glfwCreateStandardCursor_impl;
99eb880
+glfwDestroyCursor_func glfwDestroyCursor_impl;
99eb880
+glfwSetCursor_func glfwSetCursor_impl;
99eb880
+glfwSetKeyboardCallback_func glfwSetKeyboardCallback_impl;
99eb880
+glfwUpdateIMEState_func glfwUpdateIMEState_impl;
99eb880
+glfwSetMouseButtonCallback_func glfwSetMouseButtonCallback_impl;
99eb880
+glfwSetCursorPosCallback_func glfwSetCursorPosCallback_impl;
99eb880
+glfwSetCursorEnterCallback_func glfwSetCursorEnterCallback_impl;
99eb880
+glfwSetScrollCallback_func glfwSetScrollCallback_impl;
99eb880
+glfwSetDropCallback_func glfwSetDropCallback_impl;
99eb880
+glfwSetLiveResizeCallback_func glfwSetLiveResizeCallback_impl;
99eb880
+glfwJoystickPresent_func glfwJoystickPresent_impl;
99eb880
+glfwGetJoystickAxes_func glfwGetJoystickAxes_impl;
99eb880
+glfwGetJoystickButtons_func glfwGetJoystickButtons_impl;
99eb880
+glfwGetJoystickHats_func glfwGetJoystickHats_impl;
99eb880
+glfwGetJoystickName_func glfwGetJoystickName_impl;
99eb880
+glfwGetJoystickGUID_func glfwGetJoystickGUID_impl;
99eb880
+glfwSetJoystickUserPointer_func glfwSetJoystickUserPointer_impl;
99eb880
+glfwGetJoystickUserPointer_func glfwGetJoystickUserPointer_impl;
99eb880
+glfwJoystickIsGamepad_func glfwJoystickIsGamepad_impl;
99eb880
+glfwSetJoystickCallback_func glfwSetJoystickCallback_impl;
99eb880
+glfwUpdateGamepadMappings_func glfwUpdateGamepadMappings_impl;
99eb880
+glfwGetGamepadName_func glfwGetGamepadName_impl;
99eb880
+glfwGetGamepadState_func glfwGetGamepadState_impl;
99eb880
+glfwSetClipboardString_func glfwSetClipboardString_impl;
99eb880
+glfwGetClipboardString_func glfwGetClipboardString_impl;
99eb880
+glfwGetTime_func glfwGetTime_impl;
99eb880
+glfwMakeContextCurrent_func glfwMakeContextCurrent_impl;
99eb880
+glfwGetCurrentContext_func glfwGetCurrentContext_impl;
99eb880
+glfwSwapBuffers_func glfwSwapBuffers_impl;
99eb880
+glfwSwapInterval_func glfwSwapInterval_impl;
99eb880
+glfwExtensionSupported_func glfwExtensionSupported_impl;
99eb880
+glfwGetProcAddress_func glfwGetProcAddress_impl;
99eb880
+glfwVulkanSupported_func glfwVulkanSupported_impl;
99eb880
+glfwGetRequiredInstanceExtensions_func glfwGetRequiredInstanceExtensions_impl;
99eb880
+glfwGetCocoaWindow_func glfwGetCocoaWindow_impl;
99eb880
+glfwGetNSGLContext_func glfwGetNSGLContext_impl;
99eb880
+glfwGetCocoaMonitor_func glfwGetCocoaMonitor_impl;
99eb880
+glfwSetCocoaTextInputFilter_func glfwSetCocoaTextInputFilter_impl;
99eb880
+glfwSetCocoaToggleFullscreenIntercept_func glfwSetCocoaToggleFullscreenIntercept_impl;
99eb880
+glfwSetApplicationShouldHandleReopen_func glfwSetApplicationShouldHandleReopen_impl;
99eb880
+glfwSetApplicationWillFinishLaunching_func glfwSetApplicationWillFinishLaunching_impl;
99eb880
+glfwGetCocoaKeyEquivalent_func glfwGetCocoaKeyEquivalent_impl;
99eb880
+glfwCocoaRequestRenderFrame_func glfwCocoaRequestRenderFrame_impl;
99eb880
+glfwGetX11Display_func glfwGetX11Display_impl;
99eb880
+glfwGetX11Window_func glfwGetX11Window_impl;
99eb880
+glfwSetPrimarySelectionString_func glfwSetPrimarySelectionString_impl;
99eb880
+glfwGetPrimarySelectionString_func glfwGetPrimarySelectionString_impl;
99eb880
+glfwGetNativeKeyForName_func glfwGetNativeKeyForName_impl;
99eb880
+glfwRequestWaylandFrameEvent_func glfwRequestWaylandFrameEvent_impl;
99eb880
+glfwDBusUserNotify_func glfwDBusUserNotify_impl;
99eb880
+glfwDBusSetUserNotificationHandler_func glfwDBusSetUserNotificationHandler_impl;
99eb880
+
99eb880
 #define fail(msg, ...) { snprintf(buf, sizeof(buf), msg, __VA_ARGS__); return buf; }
99eb880
 
99eb880
 const char*