Files
salmanoff/smocore/CMakeLists.txt
T
hayodea 71564b4d83 Add QutexAcquisitionHistoryTracker; integrate plumbing
We add the new Qutex acquisision history tracker that allows us
to dynamically detect qutex gridlocks. We've integrated it into
LockerAndInvoker::operator() in a preliminary way.

We also moved all of the trace*ForGridlockOn() methods into the
new QutexAcquisitionHistoryTracker singleton class. They're
more appropriately located there. They're still unimplemented
though.
2025-09-29 19:27:02 -04:00

49 lines
1.1 KiB
CMake

# Include Flex/Bison generation rules
include(${CMAKE_SOURCE_DIR}/cmake/flexYacc.cmake)
# Consolidated smocore library with all source files
add_library(smocore STATIC
# Core files
mind.cpp
opts.cpp
componentThread.cpp
component.cpp
painfulQuale.cpp
qutex.cpp
lockerAndInvokerBase.cpp
lockSet.cpp
serializedAsynchronousContinuation.cpp
qutexAcquisitionHistoryTracker.cpp
# Body
body/body.cpp
# Marionette
marionette/main.cpp
marionette/salmanoff.cpp
marionette/lifetime.cpp
marionette/qualeEvent.cpp
# DeviceManager
deviceManager/deviceManager.cpp
deviceManager/deviceReattacher.cpp
deviceManager/deviceAttachmentPipeSpecParser.cpp
${LEX_OUTPUT}
${YACC_OUTPUT}
# SenseApis
senseApis/senseApiManager.cpp
# MindManager
mindManager/mindManager.cpp
)
target_include_directories(smocore PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
${CMAKE_CURRENT_BINARY_DIR}
)
# Link against pthread for CPU affinity functions
find_package(Threads REQUIRED)
target_link_libraries(smocore PRIVATE Threads::Threads)