66 lines
1.3 KiB
CMake
66 lines
1.3 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
|
|
mindThread.cpp
|
|
componentThread.cpp
|
|
opts.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
|
|
)
|
|
|
|
target_include_directories(smocore PUBLIC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include
|
|
${CMAKE_CURRENT_BINARY_DIR}
|
|
${Boost_INCLUDE_DIRS}
|
|
${OPENCL_INCLUDE_DIRS}
|
|
)
|
|
|
|
# smocore public headers expose Qutex and friends
|
|
target_link_libraries(smocore PUBLIC
|
|
spinscale
|
|
)
|
|
|
|
# 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}
|
|
)
|