fixing windows compilation issues, bumping version

This commit is contained in:
2026-01-11 14:01:37 +01:00
parent 32987f0afe
commit 33ae4c3a37
6 changed files with 26 additions and 13 deletions

View File

@@ -17,8 +17,21 @@
#include <vulkan/vulkan.h>
#include <SDL2/SDL.h>
#include <SDL2/SDL_vulkan.h>
#if __has_include(<SDL2/SDL.h>)
#include <SDL2/SDL.h>
#elif __has_include(<SDL.h>)
#include <SDL.h>
#else
#error Failed to find SDL2 headers
#endif
#if __has_include(<SDL2/SDL_vulkan.h>)
#include <SDL2/SDL_vulkan.h>
#elif __has_include(<SDL_vulkan.h>)
#include <SDL_vulkan.h>
#else
#error Failed to find SDL2 Vulkan headers
#endif
#include <functional>
#include <memory>

View File

@@ -479,7 +479,7 @@ extern "C"
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs)
return nullptr;
return VK_NULL_HANDLE;
return gs->GetRenderer().GetSwapchain().GetSurface();
}
@@ -488,7 +488,7 @@ extern "C"
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs || index > gs->GetRenderer().GetSwapchain().GetImagesCount())
return nullptr;
return VK_NULL_HANDLE;
return gs->GetRenderer().GetSwapchain().GetSwapchainImages()[index].Get();
}
@@ -506,7 +506,7 @@ extern "C"
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs || index > gs->GetRenderer().GetSwapchain().GetImagesCount())
return nullptr;
return VK_NULL_HANDLE;
return gs->GetRenderer().GetSwapchain().GetSwapchainImages()[index].GetImageView();
}

View File

@@ -21,7 +21,7 @@ namespace mlx
void* MemManager::AlignedMalloc(std::size_t alignment, std::size_t size)
{
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
void* ptr = _aligned_malloc(size, alignment);
#else
if(alignment < sizeof(void*))
@@ -66,7 +66,7 @@ namespace mlx
{
auto it = std::find_if(s_blocks.begin(), s_blocks.end(), [=](const Descriptor& rhs){ return ptr == rhs.ptr; });
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
void* ptr2 = _aligned_realloc(ptr, size, alignment);
if(it != s_blocks.end())
s_blocks.erase(it);
@@ -90,7 +90,7 @@ namespace mlx
auto it = std::find_if(s_blocks.begin(), s_blocks.end(), [=](const Descriptor& rhs){ return ptr == rhs.ptr; });
if(it == s_blocks.end())
return;
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
if(it->aligned)
_aligned_free(it->ptr);
else
@@ -105,7 +105,7 @@ namespace mlx
{
for(const Descriptor& desc : s_blocks)
{
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
if(desc.aligned)
_aligned_free(desc.ptr);
else