damaris-backends/machines/CMakeLists.txt

108 lines
4.9 KiB
CMake

cmake_minimum_required(VERSION 3.0)
include(FindPkgConfig)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
#pkg_check_modules (XERCES xerces-c REQUIRED)
#include_directories(.. ${XERCES_INCLUDE_DIRS})
#link_directories(${XERCES_LIBRARY_DIRS})
find_package(Boost REQUIRED)
#find_library(PB24 SpinCore-PulseBlaster24Bit PATH ${CMAKE_SOURCE_DIR})
link_directories(../drivers/SpinCore-PulseBlaster24Bit
../drivers/SpinCore-PulseBlaster
../drivers/SpinCore-PulseBlasterDDSIII
../drivers)
set(PB24 SpinCore-PulseBlaster24Bit SpinCore-PulseBlaster PulseBlasterProgram)
set(PBDDS SpinCore-PulseBlasterDDSIII SpinCore-PulseBlaster PulseBlasterProgram)
add_executable(dummycore dummycore.cpp hardware.cpp)
target_link_libraries(dummycore pthread ${XERCES_LIBRARIES} core dummy tempcont Eurotherm-2000Series)
install(TARGETS dummycore DESTINATION lib/damaris/backends)
add_executable(berta berta.cpp hardware.cpp)
target_link_libraries(berta pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS )
install(TARGETS berta DESTINATION lib/damaris/backends)
add_executable(birgit birgit.cpp hardware.cpp)
target_link_libraries(birgit pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS )
install(TARGETS birgit DESTINATION lib/damaris/backends)
add_executable(bg_backend bg_backend.cpp hardware.cpp)
target_link_libraries(bg_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS )
#include_directories(${Boost_INCLUDE_DIRS})
#add_executable(damaris damaris.cpp hardware.cpp)
#target_link_libraries(damaris pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS dummy tempcont Eurotherm-2000Series )
add_executable(Mobilecore Mobilecore.cpp hardware.cpp)
target_link_libraries(Mobilecore pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS )
add_executable(Mobilecore_wo_sync_backend Mobile_wo_sync_backend.cpp hardware.cpp)
target_link_libraries(Mobilecore_wo_sync_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS )
add_executable(deuteron_backend deuteron_backend.cpp hardware.cpp)
target_link_libraries(deuteron_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} ${PBDDS} PTS )
add_executable(PFGcore PFGcore.cpp hardware.cpp)
target_link_libraries( PFGcore pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS DAC20 )
add_executable(fc1neu_backend fc1neu_backend.cpp hardware.cpp)
target_link_libraries( fc1neu_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS DAC20 )
# spcm linux driver needs to be installed (see http://spectrum-instrumentation.com/de/downloads/drivers)
find_library(SPCM_LIB spcm)
if (NOT SPCM_LIB)
message(WARNING "spcm not found, install library (see http://spectrum-instrumentation.com/de/downloads/drivers)")
else()
include_directories(${CMAKE_SOURCE_DIR}/drivers/Spectrum-M2i40xxSeries/include)
add_executable(fc1_vierkanal_backend fc1_vierkanal_backend.cpp hardware.cpp)
target_link_libraries( fc1_vierkanal_backend pthread ${XERCES_LIBRARIES} core spcm_linux Spectrum-M2i40xxSeries ${PB24} PTS DAC20 )
include_directories(${CMAKE_SOURCE_DIR}/drivers/Spectrum-M2i40xxSeries/include)
add_executable(fc1_backend fc1_backend.cpp hardware.cpp)
target_link_libraries( fc1_backend pthread ${XERCES_LIBRARIES} core spcm_linux Spectrum-M2i40xxSeries ${PB24} PTS DAC20 )
endif()
add_executable(fc2_backend fc2_backend.cpp hardware.cpp)
target_link_libraries( fc2_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS DAC20 )
add_executable(fc2_AD5791_backend fc2_backend_AD5791.cpp hardware.cpp)
target_link_libraries( fc2_AD5791_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS DAC20 )
add_executable(general general.cpp hardware.cpp)
target_link_libraries( general pthread ${XERCES_LIBRARIES} ${GLIB2_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS DAC20 )
add_executable(magnexgrad_backend magnexgrad_backend.cpp hardware.cpp)
target_link_libraries( magnexgrad_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PB24} PTS DAC20 tempcont Eurotherm-2000Series)
add_executable(magnexgrad_dds_backend magnexgrad_backend_dds.cpp hardware.cpp)
target_link_libraries( magnexgrad_dds_backend pthread ${XERCES_LIBRARIES} core Spectrum_MI40xxSeries ${PBDDS} PTS DAC20 tempcont Eurotherm-2000Series)
add_executable(pulseblaster_only pulseblaster_only.cpp hardware.cpp)
target_link_libraries(pulseblaster_only pthread ${XERCES_LIBRARIES} core ${PB24} PTS dummy DAC20 tempcont Eurotherm-2000Series )
install(TARGETS dummycore
berta
birgit
bg_backend
Mobilecore
Mobilecore_wo_sync_backend
deuteron_backend
fc1neu_backend
PFGcore
fc2_backend
fc2_AD5791_backend
general
magnexgrad_backend
magnexgrad_dds_backend
pulseblaster_only
DESTINATION lib/damaris/backends)