diff --git a/YAZE.vcxproj b/YAZE.vcxproj
index b278141f..76664ba6 100644
--- a/YAZE.vcxproj
+++ b/YAZE.vcxproj
@@ -141,7 +141,7 @@
Console
true
$(ProjectDir)build\lib\$(Configuration);$(ProjectDir)build\src\lib\asar\src\asar\lib\$(Configuration);%(AdditionalLibraryDirectories)
- SDL2.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
+ SDL2-static.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
@@ -162,7 +162,7 @@
true
true
$(ProjectDir)build\lib\$(Configuration);$(ProjectDir)build\src\lib\asar\src\asar\lib\$(Configuration);%(AdditionalLibraryDirectories)
- SDL2.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
+ SDL2-static.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
@@ -179,7 +179,7 @@
Console
true
$(ProjectDir)build\lib\$(Configuration);$(ProjectDir)build\src\lib\asar\src\asar\lib\$(Configuration);%(AdditionalLibraryDirectories)
- SDL2.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
+ SDL2-static.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
@@ -200,7 +200,7 @@
true
true
$(ProjectDir)build\lib\$(Configuration);$(ProjectDir)build\src\lib\asar\src\asar\lib\$(Configuration);%(AdditionalLibraryDirectories)
- SDL2.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
+ SDL2-static.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
@@ -217,7 +217,7 @@
Console
true
$(ProjectDir)build\lib\$(Configuration);$(ProjectDir)build\src\lib\asar\src\asar\lib\$(Configuration);%(AdditionalLibraryDirectories)
- SDL2.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
+ SDL2-static.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
@@ -238,7 +238,7 @@
true
true
$(ProjectDir)build\lib\$(Configuration);$(ProjectDir)build\src\lib\asar\src\asar\lib\$(Configuration);%(AdditionalLibraryDirectories)
- SDL2.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
+ SDL2-static.lib;SDL2main.lib;asar-static.lib;ImGui.lib;%(AdditionalDependencies)
diff --git a/cmake/sdl2.cmake b/cmake/sdl2.cmake
index 1c9da664..e796fcb9 100644
--- a/cmake/sdl2.cmake
+++ b/cmake/sdl2.cmake
@@ -1,29 +1,44 @@
# SDL2
-if (UNIX OR MINGW OR WIN32)
+# On Windows, try to use vcpkg first, then fall back to bundled SDL
+if(WIN32)
+ # Try to find SDL2 via vcpkg first
+ find_package(SDL2 QUIET)
+ if(SDL2_FOUND)
+ # Use vcpkg SDL2
+ set(SDL_TARGETS SDL2::SDL2)
+ list(PREPEND SDL_TARGETS SDL2::SDL2main ws2_32)
+ add_definitions("-DSDL_MAIN_HANDLED")
+ message(STATUS "Using vcpkg SDL2")
+ else()
+ # Fall back to bundled SDL
+ add_subdirectory(src/lib/SDL)
+ set(SDL_TARGETS SDL2-static)
+ set(SDL2_INCLUDE_DIR
+ ${CMAKE_SOURCE_DIR}/src/lib/SDL/include
+ ${CMAKE_BINARY_DIR}/src/lib/SDL/include
+ ${CMAKE_BINARY_DIR}/src/lib/SDL/include-config-${CMAKE_BUILD_TYPE}
+ )
+ set(SDL2_INCLUDE_DIRS ${SDL2_INCLUDE_DIR})
+ list(PREPEND SDL_TARGETS SDL2main ws2_32)
+ add_definitions("-DSDL_MAIN_HANDLED")
+ message(STATUS "Using bundled SDL2")
+ endif()
+elseif(UNIX OR MINGW)
+ # Non-Windows: use bundled SDL
add_subdirectory(src/lib/SDL)
- # When using bundled SDL, use the static target and set include directories
set(SDL_TARGETS SDL2-static)
set(SDL2_INCLUDE_DIR
${CMAKE_SOURCE_DIR}/src/lib/SDL/include
${CMAKE_BINARY_DIR}/src/lib/SDL/include
${CMAKE_BINARY_DIR}/src/lib/SDL/include-config-${CMAKE_BUILD_TYPE}
)
- # Also set for consistency with bundled SDL
set(SDL2_INCLUDE_DIRS ${SDL2_INCLUDE_DIR})
-
- # Add SDL2main for Windows builds when using bundled SDL
- if(WIN32)
- list(PREPEND SDL_TARGETS SDL2main ws2_32)
- add_definitions("-DSDL_MAIN_HANDLED")
- endif()
+ message(STATUS "Using bundled SDL2")
else()
+ # Fallback: try to find system SDL
find_package(SDL2)
- # When using system SDL, use the imported targets
set(SDL_TARGETS SDL2::SDL2)
- if(WIN32)
- list(PREPEND SDL_TARGETS SDL2::SDL2main ws2_32)
- add_definitions("-DSDL_MAIN_HANDLED")
- endif()
+ message(STATUS "Using system SDL2")
endif()
# PNG and ZLIB dependencies removed
\ No newline at end of file
diff --git a/cmake/vcpkg.cmake b/cmake/vcpkg.cmake
index 8fcf265f..f6df7700 100644
--- a/cmake/vcpkg.cmake
+++ b/cmake/vcpkg.cmake
@@ -4,7 +4,7 @@ add_definitions("-DMICROSOFT_WINDOWS_WINBASE_H_DEFINE_INTERLOCKED_CPLUSPLUS_OVER
# vcpkg settings
set(VCPKG_CRT_LINKAGE dynamic)
-set(VCPKG_LIBRARY_LINKAGE dynamic)
+set(VCPKG_LIBRARY_LINKAGE static)
# Enable vcpkg manifest mode for automatic dependency management
set(VCPKG_MANIFEST_MODE ON)