authorgravatar for lauren@selfisekai.rocksLN Liberda <lauren@selfisekai.rocks> 2025-03-12 18:15:42+01:00
committergravatar for lauren@selfisekai.rocksLN Liberda <lauren@selfisekai.rocks> 2025-03-12 18:15:42+01:00
log19888f759fc8612f3627a1b9c898d0b7aa513119
treea7ea49a1c09f71be15a3ba68402c453df53918a5
parentd0911786c95dfa7a63ec348bb4a9870da12f62e4

cmake: Add ZIG_RELEASE_SAFE option to build as ReleaseSafe


1 files changed, 10 insertions(+), 3 deletions(-)

CMakeLists.txt+10-3
...@@ -938,12 +938,19 @@ if(ZIG_EXTRA_BUILD_ARGS)...@@ -938,12 +938,19 @@ if(ZIG_EXTRA_BUILD_ARGS)
938 list(APPEND ZIG_BUILD_ARGS ${ZIG_EXTRA_BUILD_ARGS})938 list(APPEND ZIG_BUILD_ARGS ${ZIG_EXTRA_BUILD_ARGS})
939endif()939endif()
940940
941set(ZIG_RELEASE_SAFE OFF CACHE BOOL "Build Zig as ReleaseSafe (with debug assertions on)")
942
941if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")943if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
942 list(APPEND ZIG_BUILD_ARGS -Doptimize=Debug)944 list(APPEND ZIG_BUILD_ARGS -Doptimize=Debug)
943elseif("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
944 list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseFast)
945else()945else()
946 list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseFast -Dstrip)946 if(ZIG_RELEASE_SAFE)
947 list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseSafe)
948 else()
949 list(APPEND ZIG_BUILD_ARGS -Doptimize=ReleaseFast)
950 endif()
951 if(NOT "${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
952 list(APPEND ZIG_BUILD_ARGS -Dstrip)
953 endif()
947endif()954endif()
948955
949if(ZIG_STATIC AND NOT MSVC)956if(ZIG_STATIC AND NOT MSVC)