Fix BUILD_RTI=OFF build: Guard RTI-only DDS modules

- LtsUtilsSettings: Fix export header include path (angle brackets)
- LtsWidgets: Move LtsUtilsSettings to PUBLIC link libraries
- BatteryNotification: Remove unused QDesktopWidget include
- DDS/FTC: Wrap ddsftccore library in IF(BUILD_RTI) guards
- DDS/FTS: Remove ELSE block, wrap entire library in IF(BUILD_RTI)
- DDS/DTC: Wrap entire library definition in IF(BUILD_RTI)
- DDS/DTS: Wrap entire library definition in IF(BUILD_RTI)
- DDS/DDSConnector: Wrap entire library in IF(BUILD_RTI), remove ELSE
- DDS/Routing: Wrap entire library in IF(BUILD_RTI)

All RTI Connext DDS-specific libraries (ddscore, ddsQoS, ddsgen,
ddsdtc, ddsdts, ddsfts, ddsconnector, routing_plugin) are now
properly guarded so BUILD_RTI=OFF builds can succeed.
This commit is contained in:
torsten committed 2026-08-23 01:19:06 +02:00
1 parent f6cbb9021f
commit c042faae9e
9 files changed
+48 -60

No files matched your search

@@ -1,7 +1,7 @@
#pragma once #pragma once
#include "ltsutilssettings_export.h" #include <ltsutilssettings_export.h>
#include <QMap> #include <QMap>
#include <QObject> #include <QObject>
@@ -162,22 +162,22 @@ NGL_TARGET_LINK_LIBRARIES(LtsWidgets
ngltranslator ngltranslator
TabBarTabStyle TabBarTabStyle
LtsSessionData LtsSessionData
LtsUtilsSettings
NGLLogger NGLLogger
PUBLIC PUBLIC
LtsUtilsCore LtsUtilsCore
LtsUtilsSettings
Qt6::Core Qt6::Core
Qt6::Widgets Qt6::Widgets
Qt6::Gui Qt6::Gui
) )
IF(BUILD_RTI) # Include directories needed for all builds (not just BUILD_RTI)
NGL_TARGET_INCLUDE_DIRECTORIES(LtsWidgets NGL_TARGET_INCLUDE_DIRECTORIES(LtsWidgets
PUBLIC PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_SOURCE_DIR}/../
) )
IF(BUILD_RTI)
NGL_INSTALL_TARGET(LtsWidgets) NGL_INSTALL_TARGET(LtsWidgets)
ENDIF() ENDIF()
@@ -4,6 +4,8 @@
# $Author$ # $Author$
# #
IF(BUILD_RTI)
SET(SRCS SET(SRCS
dds_connector.cpp dds_connector.cpp
dds_connector.h dds_connector.h
@@ -21,29 +23,18 @@ NGL_TARGET_INCLUDE_DIRECTORIES(
INTERFACE INTERFACE
${CMAKE_CURRENT_SOURCE_DIR}/../../ ${CMAKE_CURRENT_SOURCE_DIR}/../../
) )
IF(BUILD_RTI) NGL_TARGET_LINK_LIBRARIES(ddsconnector
NGL_TARGET_LINK_LIBRARIES(ddsconnector PRIVATE
PRIVATE NGLLogger
NGLLogger PUBLIC
PUBLIC RTI::nddsc
RTI::nddsc RTI::nddscore
RTI::nddscore RTI::nddscpp2
RTI::nddscpp2 ddsQoS
ddsQoS ddsdtc
ddsdtc ddsdts
ddsdts ProjectConfig
ProjectConfig Qt6::Core
Qt6::Core )
)
ELSE() ENDIF(BUILD_RTI)
NGL_TARGET_LINK_LIBRARIES(ddsconnector
PRIVATE
NGLLogger
PUBLIC
ddsQoS
ddsdtc
ddsdts
ProjectConfig
Qt6::Core
)
ENDIF()
@@ -4,6 +4,8 @@
# $Author$ # $Author$
# #
IF(BUILD_RTI)
ADD_LIBRARY(ddsdtc INTERFACE) ADD_LIBRARY(ddsdtc INTERFACE)
TARGET_INCLUDE_DIRECTORIES(ddsdtc TARGET_INCLUDE_DIRECTORIES(ddsdtc
INTERFACE INTERFACE
@@ -21,3 +23,5 @@ SET(SRCS
${CMAKE_CURRENT_SOURCE_DIR}/generic_dtc_impl.h ${CMAKE_CURRENT_SOURCE_DIR}/generic_dtc_impl.h
) )
TARGET_SOURCES(ddsdtc INTERFACE ${SRCS}) TARGET_SOURCES(ddsdtc INTERFACE ${SRCS})
ENDIF(BUILD_RTI)
@@ -4,6 +4,8 @@
# $Author$ # $Author$
# #
IF(BUILD_RTI)
ADD_LIBRARY(ddsdts INTERFACE) ADD_LIBRARY(ddsdts INTERFACE)
TARGET_INCLUDE_DIRECTORIES(ddsdts TARGET_INCLUDE_DIRECTORIES(ddsdts
INTERFACE INTERFACE
@@ -20,3 +22,5 @@ SET(SRCS
${CMAKE_CURRENT_SOURCE_DIR}/generic_dts_impl.h ${CMAKE_CURRENT_SOURCE_DIR}/generic_dts_impl.h
) )
TARGET_SOURCES(ddsdts INTERFACE ${SRCS}) TARGET_SOURCES(ddsdts INTERFACE ${SRCS})
ENDIF(BUILD_RTI)
@@ -11,20 +11,6 @@ TARGET_INCLUDE_DIRECTORIES(ddsftc
INTERFACE INTERFACE
${CMAKE_CURRENT_SOURCE_DIR}/../../ ${CMAKE_CURRENT_SOURCE_DIR}/../../
) )
IF(BUILD_RTI)
TARGET_LINK_LIBRARIES(ddsftc
INTERFACE
Qt6::Core
ddsfts_connext
ddscore # due to the usage of Core::FtReplyState inside generic_ftc_impl.h, only on core.hpp - fixme :/
ddsgen
ddsQoS
RTI::nddsc
RTI::nddscpp2
ddsftccore
LtsUtilsCoreHeaderOnly
)
ELSE()
TARGET_LINK_LIBRARIES(ddsftc TARGET_LINK_LIBRARIES(ddsftc
INTERFACE INTERFACE
Qt6::Core Qt6::Core
@@ -34,6 +20,13 @@ TARGET_LINK_LIBRARIES(ddsftc
ddsftccore ddsftccore
LtsUtilsCoreHeaderOnly LtsUtilsCoreHeaderOnly
) )
IF(BUILD_RTI)
TARGET_LINK_LIBRARIES(ddsftc
INTERFACE
ddsfts_connext
RTI::nddsc
RTI::nddscpp2
)
ENDIF() ENDIF()
SET(SRCS SET(SRCS
${CMAKE_CURRENT_SOURCE_DIR}/generic_ftc.h ${CMAKE_CURRENT_SOURCE_DIR}/generic_ftc.h
@@ -47,16 +40,19 @@ TARGET_SOURCES(ddsftc INTERFACE ${SRCS})
# ddsftccore # ddsftccore
IF(BUILD_RTI)
NGL_ADD_LIBRARY2(WS SV HLA ddsftccore SHARED abstract_requester.h abstract_requester.cpp) NGL_ADD_LIBRARY2(WS SV HLA ddsftccore SHARED abstract_requester.h abstract_requester.cpp)
NGL_TARGET_INCLUDE_DIRECTORIES(ddsftccore NGL_TARGET_INCLUDE_DIRECTORIES(ddsftccore
PUBLIC PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/../../ # 'DDS/FTC/...' reads better than only FTC ${CMAKE_CURRENT_SOURCE_DIR}/../../ # 'DDS/FTC/...' reads better than only FTC
) )
IF(BUILD_RTI)
NGL_TARGET_LINK_LIBRARIES(ddsftccore NGL_TARGET_LINK_LIBRARIES(ddsftccore
PUBLIC PUBLIC
Qt6::Core Qt6::Core
ddscore ddscore
ddsfts_connext
RTI::nddsc
RTI::nddscpp2
) )
ENDIF(BUILD_RTI)
NGL_INSTALL_TARGET(ddsftccore) NGL_INSTALL_TARGET(ddsftccore)
ENDIF(BUILD_RTI)
@@ -5,6 +5,7 @@
# #
IF(BUILD_RTI) IF(BUILD_RTI)
ADD_LIBRARY(ddsfts_connext INTERFACE) ADD_LIBRARY(ddsfts_connext INTERFACE)
TARGET_INCLUDE_DIRECTORIES(ddsfts_connext TARGET_INCLUDE_DIRECTORIES(ddsfts_connext
INTERFACE INTERFACE
@@ -18,7 +19,6 @@ SET(SRCS
${CMAKE_CURRENT_SOURCE_DIR}/connext.h ${CMAKE_CURRENT_SOURCE_DIR}/connext.h
) )
TARGET_SOURCES(ddsfts_connext INTERFACE ${SRCS}) TARGET_SOURCES(ddsfts_connext INTERFACE ${SRCS})
ENDIF()
SET(SRCS SET(SRCS
generic_fts.h ;# Interface generic_fts.h ;# Interface
@@ -33,7 +33,6 @@ NGL_TARGET_INCLUDE_DIRECTORIES(ddsfts
${CMAKE_CURRENT_SOURCE_DIR}/../../ ${CMAKE_CURRENT_SOURCE_DIR}/../../
${CMAKE_CURRENT_BINARY_DIR}/../../Proxies/TrainingAreaBase ${CMAKE_CURRENT_BINARY_DIR}/../../Proxies/TrainingAreaBase
) )
IF(BUILD_RTI)
NGL_TARGET_LINK_LIBRARIES(ddsfts NGL_TARGET_LINK_LIBRARIES(ddsfts
PRIVATE PRIVATE
RTI::nddscore RTI::nddscore
@@ -47,14 +46,5 @@ NGL_TARGET_LINK_LIBRARIES(ddsfts
ddsgen ddsgen
ddsfts_connext ddsfts_connext
) )
ELSE()
NGL_TARGET_LINK_LIBRARIES(ddsfts ENDIF(BUILD_RTI)
PRIVATE
ProjectConfig
ddsQoS
svcTabCommon
PUBLIC
Qt6::Core
ddsgen
)
ENDIF()
@@ -4,6 +4,8 @@
# $Author$ # $Author$
# #
IF(BUILD_RTI)
ADD_INTERFACE_LIBRARY( ADD_INTERFACE_LIBRARY(
routing_plugin routing_plugin
${CMAKE_CURRENT_SOURCE_DIR}/routing_plugin.h ${CMAKE_CURRENT_SOURCE_DIR}/routing_plugin.h
@@ -12,3 +14,5 @@ ADD_INTERFACE_LIBRARY(
ddsQoS ddsQoS
NGLLogger NGLLogger
) )
ENDIF(BUILD_RTI)
@@ -12,7 +12,6 @@
#include <QCloseEvent> #include <QCloseEvent>
#include <QApplication> #include <QApplication>
#include <QDesktopWidget>
#include <QScreen> #include <QScreen>
#include <QDebug> #include <QDebug>