Files
salmanoff/smocore/CMakeLists.txt
T
hayodea ee6405048a OClCollMeshEngn: use the central ComputeMgr APIs
We no longer create our own context and get our own OpenCL device
in OClCollMeshEngn::setup. We now request a device from the central
ComputeManager.
2025-11-20 00:55:19 -04:00

68 lines
1.5 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
qutex.cpp
lockerAndInvokerBase.cpp
# Body
body/body.cpp
# Director
director/director.cpp
# Marionette
marionette/main.cpp
marionette/salmanoff.cpp
marionette/lifetime.cpp
marionette/qualeEvent.cpp
marionette/negtrinEvent.cpp
# DeviceManager
deviceManager/deviceManager.cpp
deviceManager/deviceReattacher.cpp
deviceManager/deviceAttachmentPipeSpecParser.cpp
${LEX_OUTPUT}
${YACC_OUTPUT}
# SenseApis
stimBuffApis/stimBuffApiManager.cpp
# ComputeManager
computeManager/computeManager.cpp
# MindManager
mindManager/mindManager.cpp
)
# Conditionally add qutexAcquisitionHistoryTracker.cpp only when debug locks are enabled
if(ENABLE_DEBUG_LOCKS)
target_sources(smocore PRIVATE qutexAcquisitionHistoryTracker.cpp)
endif()
target_include_directories(smocore PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
${CMAKE_CURRENT_BINARY_DIR}
${Boost_INCLUDE_DIRS}
${OPENCL_INCLUDE_DIRS}
)
# Link against pthread for CPU affinity functions
find_package(Threads REQUIRED)
target_link_libraries(smocore PRIVATE
Threads::Threads
Boost::system
Boost::log
${OPENCL_LIBRARIES}
attachmentSupport
)
target_link_directories(smocore PRIVATE
${OPENCL_LIBRARY_DIRS}
)