ci/mingw64-fat: add FAT mingw64 builds#17526
ci/mingw64-fat: add FAT mingw64 builds#17526kasper93 wants to merge 3 commits intompv-player:masterfrom
Conversation
To avoid conflicts with xavs2.
https://github.com/BtbN/Vulkan-Shim-Loader doesn't expose those symbols, so just load them manually.
|
|
||
| VkInstance inst = vk->vkinst->instance; | ||
| VkResult res = vkCreateWin32SurfaceKHR(inst, &wininfo, NULL, &vk->surface); | ||
| mp_assert(vk->vkinst->get_proc_addr); |
There was a problem hiding this comment.
is depending on the upstream vulkan loader that bad? 🤔
There was a problem hiding this comment.
Upstream Vulkan loader doesn't support static linking. That's why all our (other) packages have vulkan-1.dll in them. Apparently https://github.com/BtbN/Vulkan-Shim-Loader exists to workaround that. But it doesn't load functions from platform specific xmls. While, it could be fixed there, I don't mind loading it through get_proc_addr.
There was a problem hiding this comment.
ah this is a static build? dynamic is nicer IMO
There was a problem hiding this comment.
Why can't it just link to vulkan dll? Windows now includes vulkan loader.
There was a problem hiding this comment.
ah this is a static build? dynamic is nicer IMO
This build has probably over 100 libraries linked (I didn't even count, it's everything), linking it statically just makes the output cleaner, we don't need anything else to interact with those dlls.
Why can't it just link to vulkan dll? Windows now includes vulkan loader.
It's on graphic driver, and on some systems in might not be available. Either way, it's up to docker image that I use. I think it's cleaner to dynamically load vulkan dll. We should be doing it in fact and not directly link to loader.
There was a problem hiding this comment.
ah this is a static build? dynamic is nicer IMO
What makes dynamic mpv Windows compiles nicer for you? Legit question.
There was a problem hiding this comment.
dynamic causes less weird build issues, that's all.
There was a problem hiding this comment.
Dynamic linking on MinGW only introduces more problems, like auto import and runtime pseudo relocation.
More complete mpv builds. Also provide libmpv in both gpl and lgpl variant.
More complete mpv builds. Also provide libmpv in both gpl and lgpl
variant.