23 lines
885 B
CMake
23 lines
885 B
CMake
|
|
# DebugOpts.cmake - Debug configuration options
|
||
|
|
|
||
|
|
# Enable debug locking features
|
||
|
|
option(ENABLE_DEBUG_LOCKS "Enable debug features for locking system" ON)
|
||
|
|
|
||
|
|
# Qutex deadlock detection configuration
|
||
|
|
# Always define the variable in cache so it appears in ccmake
|
||
|
|
set(DEBUG_QUTEX_DEADLOCK_TIMEOUT_MS 500 CACHE STRING
|
||
|
|
"Timeout in milliseconds for deadlock detection in qutex system")
|
||
|
|
|
||
|
|
if(ENABLE_DEBUG_LOCKS)
|
||
|
|
# Validate the timeout value
|
||
|
|
if(NOT DEBUG_QUTEX_DEADLOCK_TIMEOUT_MS OR DEBUG_QUTEX_DEADLOCK_TIMEOUT_MS STREQUAL "")
|
||
|
|
message(FATAL_ERROR "DEBUG_QUTEX_DEADLOCK_TIMEOUT_MS must be a positive integer > 0")
|
||
|
|
endif()
|
||
|
|
|
||
|
|
# Convert to integer and validate
|
||
|
|
math(EXPR timeout_int "${DEBUG_QUTEX_DEADLOCK_TIMEOUT_MS}")
|
||
|
|
if(timeout_int LESS_EQUAL 0)
|
||
|
|
message(FATAL_ERROR "DEBUG_QUTEX_DEADLOCK_TIMEOUT_MS must be a positive integer > 0")
|
||
|
|
endif()
|
||
|
|
endif()
|