Something went wrong on our end
-
Jonathan Hanks authored
Turned src/drv/param.c src/drv/crc.c into a helper library. Modified daqd and standalone_edc to consume this as a library. Removed more now unused code from standalone_edc.
Jonathan Hanks authoredTurned src/drv/param.c src/drv/crc.c into a helper library. Modified daqd and standalone_edc to consume this as a library. Removed more now unused code from standalone_edc.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
CMakeLists.txt 21.95 KiB
FIND_PROGRAM(UNAME_PROG uname)
FIND_PROGRAM(DATE_PROG date)
INCLUDE(Cpp11)
INCLUDE(CheckCXXSourceCompiles)
add_subdirectory(component_tests)
configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
set(__daqd_tmp_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
set(CMAKE_REQUIRED_FLAGS ${CPP11_FLAG})
check_cxx_source_compiles("#include<array>
int main() { return 0; }" DAQD_CAN_BUILD_DAQD_SHMEM)
set(CMAKE_REQUIRED_FLAGS ${__daqd_tmp_CMAKE_REQUIRED_FLAGS})
# These sources are common to all daqd variants
set(MAIN_DAQD_SRC
archive.cc
profiler.cc
filesys.cc
#producer.cc
trend.cc
net_writer.cc
#${CMAKE_CURRENT_BINARY_DIR}/comm.cc
daqd.cc
comm_impl.cc
circ.cc
edcu.cc
framerecv.cc
${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc
listener.cc
)
set_source_files_properties(listener.cc daqd.cc
PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/y.tab.h)
execute_process(COMMAND uname -a
OUTPUT_VARIABLE DAQD_UNAME)
execute_process(COMMAND date
OUTPUT_VARIABLE DAQD_DATE)
string(REPLACE "#" "" DAQD_UNAME ${DAQD_UNAME})
string(REPLACE "\n" "" DAQD_UNAME ${DAQD_UNAME})
string(REPLACE "\n" "" DAQD_DATE ${DAQD_DATE})
set(DAQD_BUILD_INFO_DEFINES -DSERVER_VERSION=\"2.0\"
-DPRODUCTION_MACHINE=\"${DAQD_UNAME}\"
-DPRODUCTION_DATE=\"${DAQD_DATE}\")
set(CDS_GDSFLAGS "-DGDS_TESTPOINT_SUPPORT")
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc
COMMAND ${FLEX_PROG} -+ -o ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc ${CMAKE_CURRENT_SOURCE_DIR}/comm-lex.l
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/comm-lex.l
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/comm-lex.l
)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/comm.cc ${CMAKE_CURRENT_BINARY_DIR}/y.tab.h
COMMAND ${BISON_PROG} -o ${CMAKE_CURRENT_BINARY_DIR}/comm.cc -d ${CMAKE_CURRENT_SOURCE_DIR}/comm.y
COMMAND ${CMAKE_COMMAND} -E rename ${CMAKE_CURRENT_BINARY_DIR}/comm.hh ${CMAKE_CURRENT_BINARY_DIR}/y.tab.h
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/comm.y
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/comm.y
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
########
# Each daqd build is made from several static libraries
# the libraries are used to group items with similar build settings together
# and are not meant to be exported.
#######
# Common source lists
#######
set(DAQD_GDS_SRC
gds.cc
)
set (DAQD_COMMON_SRC
archive.cc
profiler.cc
filesys.cc
epics_pvs.cc
producer_fw.cc
checksum_crc32.cc
net_writer.cc
trend.cc
circ.cc
edcu.cc
epicsServer.cc
exServer.cc
exPV.cc
exChannel.cc
framerecv.cc
listener.cc
daqd.cc
exScalarPV.cc
exVectorPV.cc
comm_impl.cc
)
#########
## FW Build
#####
#
#add_library(fw_daqd_gds STATIC ${DAQD_GDS_SRC})
#target_compile_definitions(fw_daqd_gds PRIVATE
# ${DAQD_BUILD_INFO_DEFINES}
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# -D_X86_64_ -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11
# -DLIGO_GDS -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# )
#target_compile_options(fw_daqd_gds PRIVATE
# -mtune=generic -m64
# -Wno-deprecated -Wno-write-strings
# )
#target_include_directories(fw_daqd_gds PRIVATE
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR})
#target_link_libraries(fw_daqd_gds PUBLIC ldastools::framecpp)
##c++ -c -DSERVER_VERSION=\"2.0\" -DPRODUCTION_DATE=\"now\" -DPRODUCTION_MACHINE=\"this\" -DGDS_TESTPOINT_SUPPORT
## -D_GNU_SOURCE -D_DEFAULT_SOURCE
## -D_X86_64_ -DUNIX -Dlinux
## -mtune=generic -m64
## -I/opt/epics/base-3.15.4/include -I/opt/epics/base-3.15.4/include/os/Linux -I/opt/epics/base-3.15.4/include/compiler/gcc -I/opt/gm/include -I/opt/mx/include
## -g -Wno-deprecated -Wno-write-strings
## -DDAQD_BUILD_FW -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch-build/build/fw -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch/src/daqd -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch/src/include
## -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -g -O
## -DLIGO_GDS -D_TP_DAQD -DARCHIVE=\"/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch/src/daqd/../gds\" -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch/src/gds
#
#add_library(fw_common STATIC ${DAQD_COMMON_SRC})
#target_include_directories(fw_common PRIVATE
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_compile_definitions(fw_common PRIVATE
# ${DAQD_BUILD_INFO_DEFINES}
# ${CDS_GDSFLAGS}
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# -D_X86_64_ -DUNIX -Dlinux -DUNIX
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11
# -DDAQD_BUILD_FW)
#target_compile_options(fw_common PRIVATE
# -mtune=generic -m64
# -Wno-deprecated -Wno-write-strings
# )
#target_link_libraries(fw_common PRIVATE
# epics::ca epics::cas ldastools::framecpp
# run_number::run_number)
#
##c++ -c -DSERVER_VERSION=\"2.0\" -DPRODUCTION_DATE=\"now\" -DPRODUCTION_MACHINE=\"this\" -DGDS_TESTPOINT_SUPPORT
## -D_GNU_SOURCE -D_DEFAULT_SOURCE
## -D_X86_64_ -DUNIX -Dlinux
## -mtune=generic -m64
## -I/opt/epics/base-3.15.4/include -I/opt/epics/base-3.15.4/include/os/Linux -I/opt/epics/base-3.15.4/include/compiler/gcc -I/opt/gm/include -I/opt/mx/include -g -Wno-deprecated -Wno-write-strings -DDAQD_BUILD_FW -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch-build/build/fw -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch/src/daqd -I/home/jonathan.hanks/Documents/Programming/aligo-rts-scratch/src/include
## -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -g -O
#
#add_library(fw_comm STATIC ${CMAKE_CURRENT_BINARY_DIR}/comm.cc)
#target_compile_definitions(fw_comm PRIVATE
# ${DAQD_BUILD_INFO_DEFINES}
# -DDAQD_BUILD_FW ${CDS_GDSFLAGS} -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11)
#target_compile_options(fw_comm PRIVATE
# -mtune=generic -m64
# -Wno-deprecated -Wno-write-strings
# )
#target_include_directories(fw_comm PRIVATE
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include)
#target_link_libraries(fw_comm PRIVATE
# epics::cas ldastools::framecpp)
##set_target_properties(fw_comm
## PROPERTIES COMPILE_FLAGS "-DDAQD_BUILD_FW ${CDS_GDSFLAGS} -D_REENTRANT -DNO_RTL=1")
## -DSERVER_VERSION=\\\"2.0\\\" -DPRODUCTION_DATE=\\\"Mon Feb 6 11:59:36 PST 2017\\\"
## -DPRODUCTION_MACHINE=\\\"Linux ubuntu 4.4.0-59-generic #80-Ubuntu SMP Fri Jan 6 17:47:47 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux\\\"
## -DGDS_TESTPOINT_SUPPORT
## -std=c++11 -I/opt/ldas-tools-al-2.5.5/include -I/opt/ldas-tools-framecpp-2.5.2/include
## -D_GNU_SOURCE -D_DEFAULT_SOURCE
## -D_X86_64_ -DUNIX -Dlinux
## -mtune=generic -m64
## -I/opt/epics/base-3.15.4/include -I/opt/epics/base-3.15.4/include/os/Linux -I/opt/epics/base-3.15.4/include/compiler/gcc
## -I/opt/gm/include -I/opt/mx/include
## -g -Wno-deprecated -Wno-write-strings
## -DDAQD_BUILD_FW
## -I/home/jonathan.hanks/Documents/advLigoRTS/branches/build-3.3/build/fw -I/home/jonathan.hanks/Documents/advLigoRTS/branches/branch-3.3/src/daqd -I/home/jonathan.hanks/Documents/advLigoRTS/branches/branch-3.3/src/include
## -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION -g -O
#
#link_directories(${EPICS_BASE_LIBRARY_DIRS}
# ${FrameCPP_LIBRARY_DIRS})
#
#add_executable(daqd_fw ${MAIN_DAQD_SRC})
#target_include_directories(daqd_fw PRIVATE
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include)
#target_compile_definitions(daqd_fw PRIVATE ${DAQD_FCPP_FLAGS} -DDAQD_BUILD_FW ${CDS_GDSFLAGS} -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11)
#target_compile_options(daqd_fw PRIVATE
# ${DAQD_BUILD_INFO_DEFINES}
# -Wno-deprecated -Wno-write-strings)
#target_link_libraries(daqd_fw fw_common fw_comm fw_daqd_gds ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ${FrameCPP_LIBRARIES}
# ${CMAKE_THREAD_LIBS_INIT}
# run_number::run_number
# )
if (${MX_FOUND})
############
## DC Build with mx support
#####
#set (DAQD_DC_MAIN_SRC
# archive.cc
# profiler.cc
# filesys.cc
# epics_pvs.cc
# trend.cc
# net_writer.cc
# circ.cc
# framesend.cc
# gdsmutex.cc
# edcu.cc
# epicsServer.cc
# exServer.cc
# exScalarPV.cc
# exVectorPV.cc
# exPV.cc
# exChannel.cc
# framerecv.cc
# listener.cc
# daqd.cc
# comm_impl.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
#
#set (DAQD_DC_GDS_SRC
# gds.cc)
#
#add_library(dc_mx_gds STATIC ${DAQD_DC_GDS_SRC})
#target_compile_definitions(dc_mx_gds PRIVATE
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DLIGO_GDS
# -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# -DDAQD_BUILD_DC)
#target_include_directories(dc_mx_gds PUBLIC
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# )
#target_compile_options(dc_mx_gds PUBLIC
# -fno-common
# -Wno-deprecated
# -Wno-write-strings
# )
#target_link_libraries(dc_mx_gds PRIVATE
# gds::daqd
# ldastools::framecpp
# mx::myriexpress)
#
#add_executable(daqd_dc_mx ${DAQD_DC_MAIN_SRC} producer.cc mx_rcvr.cc)
#target_compile_definitions(daqd_dc_mx PUBLIC
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DDAQD_BUILD_DC
# )
#target_include_directories(daqd_dc_mx PUBLIC
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_link_libraries(daqd_dc_mx PUBLIC
# gds::daqd
# dc_mx_gds
# run_number::run_number
# ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ldastools::framecpp
# ${CMAKE_THREAD_LIBS_INIT}
# mx::myriexpress
# )
#
############
## mx-symm Build with mx support
#####
#set (DAQD_MXSYMM_MAIN_SRC
# archive.cc
# profiler.cc
# filesys.cc
# epics_pvs.cc
# trend.cc
# net_writer.cc
# circ.cc
# #framesend.cc
# #gdsmutex.cc
# edcu.cc
# epicsServer.cc
# exServer.cc
# exScalarPV.cc
# exVectorPV.cc
# exPV.cc
# exChannel.cc
# framerecv.cc
# listener.cc
# daqd.cc
# comm_impl.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
#
#add_library(dc_mxsymm_gds STATIC gds.cc)
#target_compile_definitions(dc_mxsymm_gds PRIVATE
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DLIGO_GDS
# -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_MXSYMM)
#target_include_directories(dc_mxsymm_gds PUBLIC
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# )
#target_compile_options(dc_mxsymm_gds PUBLIC
# -fno-common
# -Wno-deprecated
# -Wno-write-strings
# )
#target_link_libraries(dc_mxsymm_gds PRIVATE
# gds::daqd
# ldastools::framecpp
# mx::myriexpress)
#
#add_executable(daqd_mxsymm ${DAQD_MXSYMM_MAIN_SRC} producer.cc mx_rcvr.cc)
#target_compile_definitions(daqd_mxsymm PUBLIC
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_MXSYMM
# )
#target_include_directories(daqd_mxsymm PUBLIC
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_link_libraries(daqd_mxsymm PUBLIC
# gds::daqd
# dc_mxsymm_gds
# run_number::run_number
# ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ldastools::framecpp
# ${CMAKE_THREAD_LIBS_INIT}
# mx::myriexpress
# )
#
#
#install(TARGETS daqd_mxsymm daqd_dc_mx DESTINATION bin)
endif(${MX_FOUND})
if (${DAQD_CAN_BUILD_DAQD_SHMEM})
##########
## generic daq with shmem (new standiop)
####
## Reuse the main source lists from daqd_dc_mx
#
set (DAQD_SHMEM_MAIN_SRC
archive.cc
profiler.cc
filesys.cc
epics_pvs.cc
trend.cc
net_writer.cc
circ.cc
framesend.cc
gdsmutex.cc
edcu.cc
epicsServer.cc
exServer.cc
exScalarPV.cc
exVectorPV.cc
exPV.cc
exChannel.cc
framerecv.cc
listener.cc
daqd.cc
comm_impl.cc
../include/daq_core.h
${CMAKE_CURRENT_BINARY_DIR}/comm.cc
${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
add_library(dc_gds_shmem STATIC gds.cc)
target_compile_definitions(dc_gds_shmem PRIVATE
${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux -DUNIX -Dlinux
-D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
-DLIGO_GDS
-D_TP_DAQD
-DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
-DDAQD_BUILD_SHMEM)
target_include_directories(dc_gds_shmem PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/../include
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
)
target_compile_options(dc_gds_shmem PUBLIC
-fno-common
-Wno-deprecated
-Wno-write-strings
)
target_link_libraries(dc_gds_shmem PRIVATE
gds::daqd
ldastools::framecpp
)
add_executable(daqd_shmem ${DAQD_SHMEM_MAIN_SRC} producer_shmem.cc)
target_compile_definitions(daqd_shmem PUBLIC
${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux -DUNIX -Dlinux
-D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
-DDAQD_BUILD_SHMEM
)
target_include_directories(daqd_shmem PUBLIC
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/../include
${CMAKE_CURRENT_SOURCE_DIR}/../zmq_stream
)
target_link_libraries(daqd_shmem PUBLIC
gds::daqd
dc_gds_shmem
run_number::run_number
# ca Com cas gdd
epics::gdd
epics::ca epics::cas
#${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
ldastools::framecpp
driver::shmem
driver::ini_parsing
${CMAKE_THREAD_LIBS_INIT}
)
install(TARGETS daqd_shmem DESTINATION bin)
if (libNDS2Client_FOUND)
configure_file(tests/daqdrc_live_test ${CMAKE_CURRENT_BINARY_DIR}/daqdrc_live_test COPYONLY)
configure_file(tests/test_daqd_live_nds.sh.in ${CMAKE_CURRENT_BINARY_DIR}/test_daqd_live_nds.sh @ONLY)
add_test(NAME test_daqd_live_nds
COMMAND /bin/bash ./test_daqd_live_nds.sh
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
configure_file(tests/daqdrc_nds_test ${CMAKE_CURRENT_BINARY_DIR}/daqdrc_nds_test COPYONLY)
configure_file(tests/test_daqd_nds.sh.in ${CMAKE_CURRENT_BINARY_DIR}/test_daqd_nds.sh @ONLY)
add_test(NAME test_daqd_nds
COMMAND /bin/bash ./test_daqd_nds.sh
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
endif (libNDS2Client_FOUND)
##########
## DC with ZMQ
####
## Reuse the main source lists from daqd_dc_mx
#
#set (DAQD_DC_ZMQ_MAIN_SRC
# archive.cc
# profiler.cc
# filesys.cc
# epics_pvs.cc
# trend.cc
# net_writer.cc
# circ.cc
# framesend.cc
# gdsmutex.cc
# edcu.cc
# epicsServer.cc
# exServer.cc
# exScalarPV.cc
# exVectorPV.cc
# exPV.cc
# exChannel.cc
# framerecv.cc
# listener.cc
# daqd.cc
# comm_impl.cc
# ../include/daq_core.h
# ${CMAKE_CURRENT_BINARY_DIR}/comm.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
#
#add_library(dc_gds_zmq STATIC gds.cc)
#target_compile_definitions(dc_gds_zmq PRIVATE
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DLIGO_GDS
# -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# -DDAQD_BUILD_DC_ZMQ)
#target_include_directories(dc_gds_zmq PUBLIC
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# )
#target_compile_options(dc_gds_zmq PUBLIC
# -fno-common
# -Wno-deprecated
# -Wno-write-strings
# )
#target_link_libraries(dc_gds_zmq PRIVATE
# gds::daqd
# ldastools::framecpp
# zmq
# )
#
#add_executable(daqd_dc_zmq ${DAQD_DC_ZMQ_MAIN_SRC} producer_dc_zmq.cc)
#target_compile_definitions(daqd_dc_zmq PUBLIC
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DDAQD_BUILD_DC_ZMQ
# )
#target_include_directories(daqd_dc_zmq PUBLIC
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_link_libraries(daqd_dc_zmq PUBLIC
# gds::daqd
# dc_gds_zmq
# run_number::run_number
# ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ldastools::framecpp
# ${CMAKE_THREAD_LIBS_INIT}
# zmq
# zmq::dc_recv
# )
endif(${DAQD_CAN_BUILD_DAQD_SHMEM})
###########
# daqd_rcv A receiver daqd
####
#set (DAQD_RCV_MAIN_SRC
# archive.cc
# profiler.cc
# filesys.cc
# epics_pvs.cc
# trend.cc
# net_writer.cc
# circ.cc
# edcu.cc
# epicsServer.cc
# exServer.cc
# exPV.cc
# exChannel.cc
# framerecv.cc
# listener.cc
# daqd.cc
# exScalarPV.cc
# exVectorPV.cc
# comm_impl.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
#
#add_library(dc_rcv_gds STATIC gds.cc)
#target_compile_definitions(dc_rcv_gds PRIVATE
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DLIGO_GDS
# -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_RCV
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# )
#target_include_directories(dc_rcv_gds PUBLIC
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# )
#target_compile_options(dc_rcv_gds PUBLIC
# -fno-common
# -Wno-deprecated
# -Wno-write-strings
# )
#target_link_libraries(dc_rcv_gds PRIVATE
# gds::daqd
# ldastools::framecpp
# )
#
#add_executable(daqd_rcv ${DAQD_RCV_MAIN_SRC} producer_rcv.cc)
#target_compile_definitions(daqd_rcv PUBLIC
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_RCV
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# )
#target_include_directories(daqd_rcv PUBLIC
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_link_libraries(daqd_rcv PUBLIC
# gds::daqd
# dc_rcv_gds
# run_number::run_number
# ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ldastools::framecpp
# ${CMAKE_THREAD_LIBS_INIT}
# )
###########
# daqd_bcst A gds broadcaster daqd
####
#set (DAQD_BCST_MAIN_SRC
# archive.cc
# profiler.cc
# filesys.cc
# epics_pvs.cc
# trend.cc
# net_writer.cc
# circ.cc
# framesend.cc
# gdsmutex.cc
# edcu.cc
# epicsServer.cc
# exServer.cc
# exPV.cc
# exChannel.cc
# framerecv.cc
# listener.cc
# daqd.cc
# exScalarPV.cc
# exVectorPV.cc
# comm_impl.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
#
#add_library(dc_bcst_gds STATIC gds.cc)
#target_compile_definitions(dc_bcst_gds PRIVATE
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DLIGO_GDS
# -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_BCST
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# )
#target_include_directories(dc_bcst_gds PUBLIC
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# )
#target_compile_options(dc_bcst_gds PUBLIC
# -fno-common
# -Wno-deprecated
# -Wno-write-strings
# )
#target_link_libraries(dc_bcst_gds PRIVATE
# gds::daqd
# ldastools::framecpp
# )
#
#add_executable(daqd_bcst ${DAQD_BCST_MAIN_SRC} producer.cc)
#target_compile_definitions(daqd_bcst PUBLIC
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_BCST
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# )
#target_include_directories(daqd_bcst PUBLIC
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_link_libraries(daqd_bcst PUBLIC
# gds::daqd
# dc_bcst_gds
# run_number::run_number
# ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ldastools::framecpp
# ${CMAKE_THREAD_LIBS_INIT}
# )
###########
# daqd_standiop A standalone system with iop
####
#set (DAQD_STANDIOP_MAIN_SRC
# archive.cc
# profiler.cc
# filesys.cc
# epics_pvs.cc
# trend.cc
# net_writer.cc
# circ.cc
# edcu.cc
# epicsServer.cc
# exServer.cc
# exPV.cc
# exChannel.cc
# framerecv.cc
# listener.cc
# daqd.cc
# exScalarPV.cc
# exVectorPV.cc
# comm_impl.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm.cc
# ${CMAKE_CURRENT_BINARY_DIR}/comm-lex.cc)
#
#add_library(dc_standiop_gds STATIC gds.cc)
#target_compile_definitions(dc_standiop_gds PRIVATE
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DLIGO_GDS
# -D_TP_DAQD
# -DARCHIVE=\"${CMAKE_CURRENT_SOURCE_DIR}/../gds\"
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_STANDIOP
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# )
#target_include_directories(dc_standiop_gds PUBLIC
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_BINARY_DIR}
# )
#target_compile_options(dc_standiop_gds PUBLIC
# -fno-common
# -Wno-deprecated
# -Wno-write-strings
# )
#target_link_libraries(dc_standiop_gds PRIVATE
# gds::daqd
# ldastools::framecpp
# )
#
#add_executable(daqd_standiop ${DAQD_STANDIOP_MAIN_SRC} producer.cc)
#target_compile_definitions(daqd_standiop PUBLIC
# ${DAQD_BUILD_INFO_DEFINES} -DUNIX -Dlinux
# -D_REENTRANT -DNO_RTL=1 -DDAQD_CPP11 -DUSE_FRAMECPP_VERSION
# -DGDS_TESTPOINT_SUPPORT
# -DDAQD_BUILD_STANDIOP
# -D_GNU_SOURCE -D_DEFAULT_SOURCE
# )
#target_include_directories(daqd_standiop PUBLIC
# ${CMAKE_CURRENT_BINARY_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}
# ${CMAKE_CURRENT_SOURCE_DIR}/../include
# )
#target_link_libraries(daqd_standiop PUBLIC
# gds::daqd
# dc_standiop_gds
# run_number::run_number
# ca Com cas gdd epics::ca epics::cas
# ${EPICS_BASE_CA_LIBS} ${EPICS_BASE_CAS_LIBS}
# ldastools::framecpp
# ${CMAKE_THREAD_LIBS_INIT}
# )
#
#
#install(TARGETS daqd_fw daqd_rcv daqd_bcst daqd_standiop DESTINATION bin)