Commit 19888f759f

LN Liberda <lauren@selfisekai.rocks>
2025-03-12 18:15:42
cmake: Add ZIG_RELEASE_SAFE option to build as ReleaseSafe
1 parent d091178
Changed files (1)
CMakeLists.txt
@@ -938,12 +938,19 @@ if(ZIG_EXTRA_BUILD_ARGS)
   list(APPEND ZIG_BUILD_ARGS ${ZIG_EXTRA_BUILD_ARGS})
 endif()
 
+set(ZIG_RELEASE_SAFE OFF CACHE BOOL "Build Zig as ReleaseSafe (with debug assertions on)")
+
 if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
   list(APPEND ZIG_BUILD_ARGS -Doptimize=Debug)
-elseif("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
-  list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseFast)
 else()
-  list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseFast -Dstrip)
+  if(ZIG_RELEASE_SAFE)
+    list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseSafe)
+  else()
+    list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseFast)
+  endif()
+  if(NOT "${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
+    list(APPEND ZIG_BUILD_ARGS -Dstrip)
+  endif()
 endif()
 
 if(ZIG_STATIC AND NOT MSVC)