Skip to content
Snippets Groups Projects
Commit 49570d5a authored by Christoph Kampmeyer's avatar Christoph Kampmeyer
Browse files

Added module to select ControlSystemAdapter for ApplicationCore servers

parent feb86086
No related branches found
No related tags found
No related merge requests found
#######################################################################################################################
# set_control_system_adapter.cmake
#
# Set the ControlSystemAdapter for a ApplicationCore server
#
# Expects the following input variable:
# ADAPTER - String specifiing the adapter, either DOOCS, OPCUA or EPICSIOC
#
# This macro will add the selected adapter as a dependency and set the following variables:
#
# Adapter_LINK_FLAGS - Link flags provided by the adapter library
# Adapter_LIBRARIES - Libraries that are dependencies of the adapter
#
#######################################################################################################################
#######################################################################################################################
#
# IMPORTANT NOTE:
#
# DO NOT MODIFY THIS FILE inside a project. Instead update the project-template repository and pull the change from
# there. Make sure to keep the file generic, since it will be used by other projects, too.
#
# If you have modified this file inside a project despite this warning, make sure to cherry-pick all your changes
# into the project-template repository immediately.
#
#######################################################################################################################
# Select control system adapter
IF(ADAPTER STREQUAL "OPCUA")
message("Building against the OPC UA ControlSystemAdater")
add_dependency(ChimeraTK-ControlSystemAdapter-OPCUAAdapter REQUIRED)
set(Adapter_LINK_FLAGS ${ChimeraTK-ControlSystemAdapter-OPCUAAdapter_LINK_FLAGS})
set(Adapter_LIBRARIES ${ChimeraTK-ControlSystemAdapter-OPCUAAdapter_LIBRARIES})
ELSEIF(ADAPTER STREQUAL "DOOCS")
message("Building against the DOOCS ControlSystemAdater")
add_dependency(ChimeraTK-ControlSystemAdapter-DoocsAdapter REQUIRED)
set(Adapter_LINK_FLAGS ${ChimeraTK-ControlSystemAdapter-DoocsAdapter_LINK_FLAGS})
set(Adapter_LIBRARIES ${ChimeraTK-ControlSystemAdapter-DoocsAdapter_LIBRARIES})
ELSEIF(ADAPTER STREQUAL "EPICSIOC")
message("Building against the EPICS IOC ControlSystemAdater")
add_dependency(ChimeraTK-ControlSystemAdapter-EPICS-IOC-Adapter REQUIRED)
set(Adapter_LINK_FLAGS ${ChimeraTK-ControlSystemAdapter-EPICS-IOC-Adapter_LINK_FLAGS})
set(Adapter_LIBRARIES ${ChimeraTK-ControlSystemAdapter-EPICS-IOC-Adapter_LIBRARIES})
ELSE()
message(FATAL_ERROR "Please select your ControlSystemAdapter to use by passing to the cmake command line:\n"
" -DADAPTER=DOOCS to build a DOOCS server\n"
" -DADAPTER=OPCUA to build an OPC UA server\n"
" -DADAPTER=EPICSIOC to build an EPICS IOC")
ENDIF()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment