Newer
Older
Christoph Kampmeyer
committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#######################################################################################################################
# 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()