Files
salmanoff/smocore/CMakeLists.txt
T

52 lines
1.2 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
serializedAsynchronousContinuation.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
)
# 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}
)
# Link against pthread for CPU affinity functions
find_package(Threads REQUIRED)
target_link_libraries(smocore PRIVATE Threads::Threads)