Updating the GL drawables on/offscreen dynamically, similarly to how we do it for Vulkan, and in order to ultimately converge and factor both GL and VK client surfaces.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8291
OSmesa is deprecated and has been removed from latest mesa releases, this replaces it with pbuffer rendering and flushing of the surface onto the bitmap at some specific sync points. The tests show that this is roughly how Windows seem to behave anyway, instead of rendering directly to the memory as OSmesa does.
--
v5: win32u: Remove now unnecessary context and pbuffer funcs.
win32u: Drop now unnecessary OSMesa dependency.
win32u: Use a pbuffer to implement GL on memory DCs.
opengl32: Flush the contexts on gl(Draw|Read)Pixels and glViewport.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8210
MSVC supports enum type forward declarations and doesn't complain if the
enum is only defined in a later included file, but GCC requires enums to
be defined before being used in parameters or fields.
This emits every WinRT enum definition, unlike MIDL, before any typedef,
so that the generated headers then work with GCC.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8248