310 lines
7.2 KiB
CMake
Executable File
310 lines
7.2 KiB
CMake
Executable File
#
|
|
# $Id$
|
|
# $HeadURL$
|
|
# $Author$
|
|
#
|
|
|
|
IF(${CMAKE_VERSION} VERSION_LESS "3.6.0")
|
|
FIND_PACKAGE(Boost REQUIRED COMPONENTS system) # system wird nicht gebraucht, aber ohne Komponente wird das Boost::boost imported Target nicht angelegt (cmake <= 3.5.2)
|
|
ELSE()
|
|
FIND_PACKAGE(Boost REQUIRED)
|
|
ENDIF()
|
|
INCLUDE(MacroRTIDDSGen)
|
|
INCLUDE(MacroCodeGenIdl)
|
|
|
|
SET(xml_FILE avm_service.xml)
|
|
|
|
#
|
|
# --- Library svcAvmCommon --------------------------------------------------------------------------------
|
|
#
|
|
SET(SRCS_common
|
|
avm_export.h
|
|
logger.cpp
|
|
logger.h
|
|
av_socket.cpp
|
|
av_socket.h
|
|
ava_types.cpp
|
|
ava_types.h
|
|
av_helper.cpp
|
|
av_helper.h
|
|
avs_dialog.cpp
|
|
avs_dialog.h
|
|
iava_comm.h
|
|
ava_comm.cpp
|
|
ava_comm.h
|
|
iava_command_done_observer.h
|
|
list_response_collector.cpp
|
|
list_response_collector.h
|
|
ava_control.cpp
|
|
ava_control.h
|
|
ava_session.cpp
|
|
ava_session.h
|
|
ava_state.cpp
|
|
ava_state.h
|
|
rt_state.cpp
|
|
rt_state.h
|
|
avs_command_queue.cpp
|
|
avs_command_queue.h
|
|
exercise_context.cpp
|
|
exercise_context.h
|
|
asset_assignment_manager.h
|
|
asset_assignment_manager.cpp
|
|
exercise.h
|
|
exercise.cpp
|
|
asset.h
|
|
asset.cpp
|
|
mounting_point.h
|
|
mounting_point.cpp
|
|
audio_video_handler_impl.h
|
|
audio_video_handler_impl.cpp
|
|
ivd_comm.h
|
|
vd_comm.cpp
|
|
vd_comm.h
|
|
ivd_command_done_observer.h
|
|
vd_control.cpp
|
|
vd_control.h
|
|
vd_session.cpp
|
|
vd_session.h
|
|
icommand.h
|
|
stream_name_mapping.h
|
|
stream_name_mapping.cpp
|
|
stream_name_mapping_to_ava.h
|
|
stream_name_mapping_to_ava.cpp
|
|
avs_menus.cpp
|
|
avs_menus.h
|
|
AvsCommands/simple_command.cpp
|
|
AvsCommands/simple_command.h
|
|
AvsCommands/choose_stream.cpp
|
|
AvsCommands/choose_stream.h
|
|
AvsCommands/choose_stream_overview.cpp
|
|
AvsCommands/choose_stream_overview.h
|
|
AvsCommands/get_stream_list.cpp
|
|
AvsCommands/get_stream_list.h
|
|
AvsCommands/query_timeline.cpp
|
|
AvsCommands/query_timeline.h
|
|
AvsCommands/get_eloka_list.cpp
|
|
AvsCommands/get_eloka_list.h
|
|
AvsCommands/query_eloka.cpp
|
|
AvsCommands/query_eloka.h
|
|
AvsCommands/set_rt_profile_base.cpp
|
|
AvsCommands/set_rt_profile_base.h
|
|
AvsCommands/set_rt_profile.cpp
|
|
AvsCommands/set_rt_profile.h
|
|
AvsCommands/change_rt_profile_circuit_name.cpp
|
|
AvsCommands/change_rt_profile_circuit_name.h
|
|
AvsCommands/set_announcement_profile.cpp
|
|
AvsCommands/set_announcement_profile.h
|
|
AvsCommands/set_video_profile.cpp
|
|
AvsCommands/set_video_profile.h
|
|
AvsCommands/set_script.cpp
|
|
AvsCommands/set_script.h
|
|
AvsCommands/start_script.cpp
|
|
AvsCommands/start_script.h
|
|
AvsCommands/set_abs_position.cpp
|
|
AvsCommands/set_abs_position.h
|
|
AvsCommands/set_volume.cpp
|
|
AvsCommands/set_volume.h
|
|
AvsCommands/keep_alive.cpp
|
|
AvsCommands/keep_alive.h
|
|
AvsCommands/vd_set_script.cpp
|
|
AvsCommands/vd_set_script.h
|
|
)
|
|
|
|
# due to template export stuff
|
|
SET_SOURCE_FILES_PROPERTIES(list_response_collector.cpp PROPERTIES SKIP_UNITY_BUILD_INCLUSION TRUE)
|
|
|
|
# Generate avm_enums.idl / avm.idl
|
|
CODEGEN_IDL_SVC(SRCS_common ${xml_FILE})
|
|
# Generate avm_db.h, avm_db_impl.cpp/.h
|
|
CODEGEN_DATABASE_SQL(SRCS_common ${xml_FILE})
|
|
|
|
# Generate *.cpp/*.hpp from idl
|
|
RTIDDSGEN(SRCS_common avm_enums.idl)
|
|
RTIDDSGEN(SRCS_common avm.idl)
|
|
|
|
# Generate avm_dt[s,c]_types.h, avm_ft[s,c]_types.h
|
|
CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE})
|
|
# generate avm_[d|f]tc.h
|
|
CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE})
|
|
|
|
# Generate avm_db_structs.cpp/.h
|
|
CODEGEN_DATABASE_STRUCTS(SRCS_common ${xml_FILE})
|
|
|
|
NGL_ADD_LIBRARY(AAR SV WS svcAvmCommon SHARED ${SRCS_common})
|
|
NGL_TARGET_INCLUDE_DIRECTORIES(svcAvmCommon
|
|
PUBLIC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/../
|
|
${CMAKE_CURRENT_BINARY_DIR}/../
|
|
)
|
|
NGL_TARGET_LINK_LIBRARIES(svcAvmCommon
|
|
PRIVATE
|
|
RTI::nddscpp2
|
|
ngltools
|
|
PUBLIC
|
|
Qt5::Core
|
|
Qt5::Network
|
|
NGLLogger
|
|
LtsUtilsCore
|
|
svcIsmClient
|
|
ddscore
|
|
ngldb
|
|
Boost::boost
|
|
)
|
|
NGL_INSTALL_TARGET(svcAvmCommon)
|
|
|
|
#
|
|
# --- Library svcAvmClient --------------------------------------------------------------------------------
|
|
#
|
|
SET(SRCS_client
|
|
avm_export.h
|
|
avm_dtc_impl_custom.h
|
|
avm_dtc_impl_custom.cpp
|
|
)
|
|
# generate avm_[d|f]tc_impl.[cpp|h]
|
|
CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE})
|
|
|
|
NGL_ADD_LIBRARY(AAR SV WS svcAvmClient SHARED ${SRCS_client})
|
|
NGL_TARGET_INCLUDE_DIRECTORIES(svcAvmClient
|
|
PUBLIC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/../
|
|
${CMAKE_CURRENT_BINARY_DIR}/../
|
|
)
|
|
|
|
NGL_TARGET_LINK_LIBRARIES(svcAvmClient
|
|
PRIVATE
|
|
RTI::nddscpp2
|
|
ddsconnector
|
|
PUBLIC
|
|
svcAvmCommon
|
|
ddsftc
|
|
)
|
|
NGL_INSTALL_TARGET(svcAvmClient)
|
|
|
|
#
|
|
# --- Library svcAvmServer --------------------------------------------------------------------------------
|
|
#
|
|
SET(SRCS_server
|
|
avm_export.h
|
|
)
|
|
# generate avm_[d|f]ts.h, avm_[d|f]ts_impl.[cpp|h]
|
|
CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE})
|
|
|
|
NGL_ADD_LIBRARY(AAR SV svcAvmServer SHARED ${SRCS_server})
|
|
NGL_TARGET_INCLUDE_DIRECTORIES(svcAvmServer
|
|
PUBLIC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/../
|
|
${CMAKE_CURRENT_BINARY_DIR}/../
|
|
)
|
|
|
|
NGL_TARGET_LINK_LIBRARIES(svcAvmServer
|
|
PRIVATE
|
|
RTI::nddscpp2
|
|
ddsconnector
|
|
ddsfts
|
|
PUBLIC
|
|
svcAvmCommon
|
|
ngldb
|
|
)
|
|
NGL_INSTALL_TARGET(svcAvmServer)
|
|
|
|
#
|
|
# --- Topic Type Plugin --------------------------------------------------------------
|
|
#
|
|
CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE})
|
|
|
|
#
|
|
# --- Executable svcAudioVideoManagement (sAVM) -------------------------------------------------
|
|
#
|
|
LIST(APPEND SRCS_exe
|
|
av_control.h
|
|
av_control.cpp
|
|
cnr_handler.h
|
|
cnr_handler.cpp
|
|
dds_handler.h
|
|
dds_handler.cpp
|
|
dds_handler_exercise.h
|
|
dds_handler_exercise.cpp
|
|
exercise_handler.h
|
|
exercise_handler.cpp
|
|
exercises_handler.h
|
|
exercises_handler.cpp
|
|
import_handler.h
|
|
import_handler.cpp
|
|
frequency_set_handler.h
|
|
frequency_set_handler.cpp
|
|
frequency_planning_handler.h
|
|
frequency_planning_handler.cpp
|
|
fm_control.h
|
|
fm_control.cpp
|
|
handler_menu_struct.h
|
|
handler_menu_struct.cpp
|
|
main.cpp
|
|
main_handler.h
|
|
main_handler.cpp
|
|
object_menu_struct.h
|
|
object_menu_struct.cpp
|
|
default_av_menus.h
|
|
default_av_menus.cpp
|
|
settings.h
|
|
settings.cpp
|
|
tvc_handler.h
|
|
tvc_handler.cpp
|
|
cnr_tvc_profile_handler.h
|
|
cnr_tvc_profile_handler.cpp
|
|
audio_video_handler.h
|
|
audio_video_handler.cpp
|
|
active_exercises.h
|
|
active_exercises.cpp
|
|
stream_name_mapping_publisher.h
|
|
stream_name_mapping_publisher.cpp
|
|
log4cxx_avm.props
|
|
object_video_team.cpp
|
|
object_video_team.h
|
|
handler_video_team.cpp
|
|
handler_video_team.h
|
|
object_video_receiver.cpp
|
|
object_video_receiver.h
|
|
handler_video_receiver.cpp
|
|
handler_video_receiver.h
|
|
object_frequency_planning_status.cpp
|
|
object_frequency_planning_status.h
|
|
handler_frequency_planning_status.cpp
|
|
handler_frequency_planning_status.h
|
|
${xml_FILE}
|
|
)
|
|
|
|
# Generate avm.sql, avm.xml
|
|
CODEGEN_SQL(SRCS_exe ${xml_FILE})
|
|
|
|
NGL_ADD_SVC_ICON(SRCS_exe)
|
|
NGL_ADD_EXECUTABLE(AAR SV svcAudioVideoManagement ${SRCS_exe})
|
|
NGL_TARGET_LINK_LIBRARIES(svcAudioVideoManagement
|
|
PUBLIC
|
|
Qt5::Core
|
|
Qt5::Network
|
|
svcAvmCommon
|
|
svcAvmServer
|
|
svcCoreClient
|
|
svcExmClient
|
|
svcIsmClient
|
|
svcAsmClient
|
|
ddsconnector
|
|
nglsettings
|
|
ProjectConfig
|
|
LtsCommandLineParser
|
|
NGLLogger
|
|
nglcoreapplication
|
|
ngltools
|
|
LtsUtilsCoreHeaderOnly
|
|
Boost::boost
|
|
svcCnrHelper
|
|
)
|
|
|
|
NGL_INSTALL_TARGET(svcAudioVideoManagement)
|
|
NGL_INSTALL(AAR SV FILES log4cxx_avm.props DESTINATION bin)
|
|
NGL_ADD_TARGET_LINK(svcAudioVideoManagement sAVM)
|
|
|
|
# Uncomment if necessary
|
|
ADD_SUBDIRECTORY(ModuleTests)
|
|
ADD_SUBDIRECTORY(UnitTests)
|