diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2653aa9a..d1692c00 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -112,6 +112,7 @@ if(MSVC)
_CRT_NONSTDC_NO_WARNINGS
SILENCE_CXX23_DEPRECATIONS
_SILENCE_CXX23_DEPRECATION_WARNING
+ _SILENCE_ALL_CXX23_DEPRECATION_WARNINGS
NOMINMAX # Disable min/max macros
WIN32_LEAN_AND_MEAN # Reduce Windows header bloat
strncasecmp=_strnicmp
@@ -126,6 +127,7 @@ else()
# Add C++23 deprecation silencing for GCC/Clang
target_compile_definitions(yaze_common INTERFACE
_SILENCE_CXX23_DEPRECATION_WARNING
+ _SILENCE_ALL_CXX23_DEPRECATION_WARNINGS
ABSL_HAVE_INTRINSIC_INT128=1 # Enable intrinsic int128 support
)
endif()
diff --git a/cmake/absl.cmake b/cmake/absl.cmake
index a9922c27..6d84ce35 100644
--- a/cmake/absl.cmake
+++ b/cmake/absl.cmake
@@ -22,6 +22,7 @@ if(MSVC)
else()
add_definitions(-D_SILENCE_CXX23_DEPRECATION_WARNING)
endif()
+# Define base Abseil targets
set(
ABSL_TARGETS
absl::strings
@@ -50,5 +51,12 @@ set(
absl::container_memory
absl::memory
absl::utility
- absl::int128
)
+
+# Add int128 only on non-Windows platforms to avoid C++23 deprecation issues
+if(NOT WIN32)
+ list(APPEND ABSL_TARGETS absl::int128)
+ message(STATUS "Including absl::int128 (non-Windows platform)")
+else()
+ message(STATUS "Excluding absl::int128 on Windows to avoid C++23 deprecation issues")
+endif()
diff --git a/yaze.vcxproj b/yaze.vcxproj
index cdec6f3f..d226facf 100644
--- a/yaze.vcxproj
+++ b/yaze.vcxproj
@@ -146,7 +146,7 @@
SDL2.lib;SDL2main.lib;zlibd.lib;libpng16d.lib;ws2_32.lib;winmm.lib;imm32.lib;version.lib;oleaut32.lib;ole32.lib;setupapi.lib;advapi32.lib;%(AdditionalDependencies)
SDL2.lib;SDL2main.lib;ws2_32.lib;winmm.lib;imm32.lib;version.lib;oleaut32.lib;ole32.lib;setupapi.lib;advapi32.lib;%(AdditionalDependencies)
$(VcpkgRoot)installed\x64-windows\debug\lib;%(AdditionalLibraryDirectories)
- src\lib\SDL\VisualC\SDL\$(PlatformName)\$(Configuration);src\lib\abseil-cpp\absl\base;src\lib\abseil-cpp\absl\strings;src\lib\abseil-cpp\absl\container;src\lib\abseil-cpp\absl\numeric;%(AdditionalLibraryDirectories)
+ src\lib\SDL\VisualC\SDL\$(PlatformName)\$(Configuration);src\lib\abseil-cpp\absl\base;src\lib\abseil-cpp\absl\strings;src\lib\abseil-cpp\absl\container;%(AdditionalLibraryDirectories)
copy "$(ProjectDir)src\yaze_config.h.in" "$(ProjectDir)yaze_config.h"
@@ -182,7 +182,7 @@ if exist "$(ProjectDir)zelda3.sfc" copy /Y "$(ProjectDir)zelda3.sfc" "$(OutDir)"
SDL2.lib;SDL2main.lib;zlib.lib;libpng16.lib;ws2_32.lib;winmm.lib;imm32.lib;version.lib;oleaut32.lib;ole32.lib;setupapi.lib;advapi32.lib;%(AdditionalDependencies)
SDL2.lib;SDL2main.lib;ws2_32.lib;winmm.lib;imm32.lib;version.lib;oleaut32.lib;ole32.lib;setupapi.lib;advapi32.lib;%(AdditionalDependencies)
$(VcpkgRoot)installed\x64-windows\lib;%(AdditionalLibraryDirectories)
- src\lib\SDL\VisualC\SDL\$(PlatformName)\$(Configuration);src\lib\abseil-cpp\absl\base;src\lib\abseil-cpp\absl\strings;src\lib\abseil-cpp\absl\container;src\lib\abseil-cpp\absl\numeric;%(AdditionalLibraryDirectories)
+ src\lib\SDL\VisualC\SDL\$(PlatformName)\$(Configuration);src\lib\abseil-cpp\absl\base;src\lib\abseil-cpp\absl\strings;src\lib\abseil-cpp\absl\container;%(AdditionalLibraryDirectories)
copy "$(ProjectDir)src\yaze_config.h.in" "$(ProjectDir)yaze_config.h"