Adds commercial RTI 6.6 Pro library

This commit is contained in:
torsten committed 2026-11-02 17:21:06 +00:00
1 parent 6d96d72592
commit 8ebcac4253
9 files changed
+66 -56

No files matched your search

+4 -1
View File
@@ -27,9 +27,11 @@ RUN apt-get update && \
libpq-dev \ libpq-dev \
libbz2-dev \ libbz2-dev \
libboost-all-dev \ libboost-all-dev \
libglib2.0-dev \
libxml2-dev \ libxml2-dev \
libssl-dev \ libssl-dev \
libcurl4-openssl-dev && \ libcurl4-openssl-dev \
libkf6texttemplate-dev && \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
# Install Qt 6.10.2 via aqtinstall # Install Qt 6.10.2 via aqtinstall
@@ -52,6 +54,7 @@ RUN git clone --depth 1 https://github.com/MEONMedical/Log4Qt.git /tmp/log4qt &&
-DBUILD_SHARED_LIBS=ON .. && \ -DBUILD_SHARED_LIBS=ON .. && \
cmake --build . -- -j$(nproc) && \ cmake --build . -- -j$(nproc) && \
cmake --install . && \ cmake --install . && \
sed -i 's/return (mThreshold <= level);/return (mThreshold.load() <= level);/' /usr/local/include/log4qt/appenderskeleton.h && \
rm -rf /tmp/log4qt rm -rf /tmp/log4qt
# Create minimal CMake config for Log4Qt # Create minimal CMake config for Log4Qt
@@ -48,7 +48,9 @@ IF(BUILD_RTI)
${CMAKE_BINARY_DIR}/Lts/DDS ${CMAKE_BINARY_DIR}/Lts/DDS
) )
# ddscore target generates core_dtc_types.h # ddscore target generates core_dtc_types.h
ADD_DEPENDENCIES(LtsSessionDataDds ddscore) IF(TARGET ddscore)
ADD_DEPENDENCIES(LtsSessionDataDds ddscore)
ENDIF()
NGL_TARGET_LINK_DIRECTORIES(LtsSessionDataDds NGL_TARGET_LINK_DIRECTORIES(LtsSessionDataDds
PRIVATE PRIVATE
${RTI_LIB_DIR} ${RTI_LIB_DIR}
@@ -24,11 +24,12 @@ ADD_SUBDIRECTORY(Routing)
ADD_SUBDIRECTORY(Core) ADD_SUBDIRECTORY(Core)
# During stepwise migration, add placeholder CTest entries before the # During stepwise migration, add placeholder CTest entries after the
# real DdsUnitTests subdir so the test-suite shows migration status even # real DdsUnitTests subdir so the test-suite can use real targets when
# when internal codegen targets are not yet available. # internal codegen/RTI targets are available, and fall back to placeholders
ADD_SUBDIRECTORY(DdsUnitTestsPlaceholder) # only when they are not.
IF(BUILD_RTI) IF(BUILD_RTI)
ADD_SUBDIRECTORY(DdsUnitTests) ADD_SUBDIRECTORY(DdsUnitTests)
ENDIF() ENDIF()
ADD_SUBDIRECTORY(DdsUnitTestsPlaceholder)
@@ -29,6 +29,9 @@ SET(SRCS_common
# these build-dir paths, so the copies are gone rather than kept for forbidden # these build-dir paths, so the copies are gone rather than kept for forbidden
# OFF variants. # OFF variants.
# Define target name early for use in subsequent macros
SET(PDM_COMMON_TARGET svcPdmCommon)
# Add current binary dir to include path for generated headers # Add current binary dir to include path for generated headers
NGL_TARGET_INCLUDE_DIRECTORIES(${PDM_COMMON_TARGET} NGL_TARGET_INCLUDE_DIRECTORIES(${PDM_COMMON_TARGET}
PUBLIC PUBLIC
@@ -98,7 +101,6 @@ IF(BUILD_RTI)
ENDIF() ENDIF()
# Create svcPdmCommon library with common sources # Create svcPdmCommon library with common sources
SET(PDM_COMMON_TARGET svcPdmCommon)
NGL_ADD_LIBRARY(AAR SV WS HLA ${PDM_COMMON_TARGET} SHARED ${SRCS_common}) NGL_ADD_LIBRARY(AAR SV WS HLA ${PDM_COMMON_TARGET} SHARED ${SRCS_common})
generate_export_header(${PDM_COMMON_TARGET} generate_export_header(${PDM_COMMON_TARGET}
EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/svcpdmcommon_export.h" EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/svcpdmcommon_export.h"
@@ -316,7 +316,7 @@ void BaseSymbolItem::onEsriFetchCompleted(Esri::ArcGISRuntime::Symbol *symbol)
const QFuture<QImage> fut = m_esriFetch.m_esriSymbol->createSwatchAsync(SWATCH_SIZE, SWATCH_SIZE, 1); const QFuture<QImage> fut = m_esriFetch.m_esriSymbol->createSwatchAsync(SWATCH_SIZE, SWATCH_SIZE, 1);
if (fut.isValid()) if (fut.isValid())
{ {
m_esriFetch.m_esriSwatchTaskUuid = QUuid::createUuid(); // in-flight guard (was the 100.x task id) // ArcGIS 300: no separate task UUID tracking needed - QFutureWatcher handles lifecycle
QFutureWatcher<QImage> *watcher = new QFutureWatcher<QImage>(this); QFutureWatcher<QImage> *watcher = new QFutureWatcher<QImage>(this);
watcher->setFuture(fut); watcher->setFuture(fut);
// 300/Qt6: connect to finished() and read the QImage via the result() getter (see above). // 300/Qt6: connect to finished() and read the QImage via the result() getter (see above).
@@ -311,7 +311,8 @@ void EsriDictionaryProcessor::syncTableWithinMainThread()
// store esriSymbol for rendering issues: // store esriSymbol for rendering issues:
EsriSymbol eSym; EsriSymbol eSym;
#ifdef CREATE_ESRI_SYMBOL_ON_DEMAND #ifdef CREATE_ESRI_SYMBOL_ON_DEMAND
eSym.m_sssResult =resultItem; // ArcGIS 300: m_sssResult member removed - using esriSymbol directly
eSym.key = resultItem.key();
#else #else
QObject *parent = this; QObject *parent = this;
eSym.esriSymbol = resultItem.symbol(parent); // resultItem.symbol() has to be called from mainThread??? eSym.esriSymbol = resultItem.symbol(parent); // resultItem.symbol() has to be called from mainThread???
@@ -213,7 +213,7 @@ protected:
public: public:
bool symbolPropertyImageContains(const QString &originalKey) const; bool symbolPropertyImageContains(const QString &originalKey) const;
QSharedPointer<SymbolResult> symbolPropertyImage(QSharedPointer<SymbolResult> symResult, const QString &originalKey); QSharedPointer<SymbolResult> symbolPropertyImage(QSharedPointer<SymbolResult> symResult, const QString &originalKey) const;
const QList<Esri::ArcGISRuntime::SymbolStyleSearchResult> & getSearchResultList() const { return m_searchResultList; } const QList<Esri::ArcGISRuntime::SymbolStyleSearchResult> & getSearchResultList() const { return m_searchResultList; }
const QList<Esri::ArcGISRuntime::SymbolStyleSearchResult> & getSearchResultListValid() const { return m_searchResultListValid; } const QList<Esri::ArcGISRuntime::SymbolStyleSearchResult> & getSearchResultListValid() const { return m_searchResultListValid; }
@@ -111,15 +111,15 @@ Defaults:
BUILD_GROUP1=ON BUILD_GROUP1=ON
BUILD_GROUP2=ON BUILD_GROUP2=ON
BUILD_GROUP3=ON BUILD_GROUP3=ON
BUILD_GROUP4=OFF BUILD_GROUP4=ON
BUILD_GROUP5=OFF BUILD_GROUP5=ON
BUILD_GROUP6=OFF BUILD_GROUP6=ON
BUILD_GROUP7=OFF BUILD_GROUP7=ON
BUILD_GROUP8=OFF BUILD_GROUP8=ON
BUILD_GROUP9=OFF BUILD_GROUP9=ON
BUILD_GROUP10=OFF BUILD_GROUP10=ON
BUILD_GROUP11=OFF BUILD_GROUP11=ON
BUILD_GROUP12=OFF BUILD_GROUP12=ON
RUN_CTEST=ON RUN_CTEST=ON
TESTS_ONLY=OFF TESTS_ONLY=OFF
INTEGRATION_TEST=OFF INTEGRATION_TEST=OFF
@@ -614,7 +614,7 @@ RUN apt-get install -y -qq libkdreports-dev 2>/dev/null || \
cd /tmp/KDReports && \ cd /tmp/KDReports && \
mkdir build && cd build && \ mkdir build && cd build && \
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_PREFIX_PATH=${QT_BASE_DIR} .. && \ cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_PREFIX_PATH=${QT_BASE_DIR} .. && \
make -j1 && \ make -j10 && \
make install && \ make install && \
cd / && rm -rf /tmp/KDReports) cd / && rm -rf /tmp/KDReports)
@@ -674,15 +674,15 @@ BUILD_CODIFICATION="${BUILD_CODIFICATION:-OFF}"
BUILD_GROUP1="${BUILD_GROUP1:-ON}" BUILD_GROUP1="${BUILD_GROUP1:-ON}"
BUILD_GROUP2="${BUILD_GROUP2:-ON}" BUILD_GROUP2="${BUILD_GROUP2:-ON}"
BUILD_GROUP3="${BUILD_GROUP3:-ON}" BUILD_GROUP3="${BUILD_GROUP3:-ON}"
BUILD_GROUP4="${BUILD_GROUP4:-OFF}" BUILD_GROUP4="${BUILD_GROUP4:-ON}"
BUILD_GROUP5="${BUILD_GROUP5:-OFF}" BUILD_GROUP5="${BUILD_GROUP5:-ON}"
BUILD_GROUP6="${BUILD_GROUP6:-OFF}" BUILD_GROUP6="${BUILD_GROUP6:-ON}"
BUILD_GROUP7="${BUILD_GROUP7:-OFF}" BUILD_GROUP7="${BUILD_GROUP7:-ON}"
BUILD_GROUP8="${BUILD_GROUP8:-OFF}" BUILD_GROUP8="${BUILD_GROUP8:-ON}"
BUILD_GROUP9="${BUILD_GROUP9:-OFF}" BUILD_GROUP9="${BUILD_GROUP9:-ON}"
BUILD_GROUP10="${BUILD_GROUP10:-OFF}" BUILD_GROUP10="${BUILD_GROUP10:-ON}"
BUILD_GROUP11="${BUILD_GROUP11:-OFF}" BUILD_GROUP11="${BUILD_GROUP11:-ON}"
BUILD_GROUP12="${BUILD_GROUP12:-OFF}" BUILD_GROUP12="${BUILD_GROUP12:-ON}"
BUILD_VIEWER_ONLY="${BUILD_VIEWER_ONLY:-OFF}" BUILD_VIEWER_ONLY="${BUILD_VIEWER_ONLY:-OFF}"
RUN_CTEST="${RUN_CTEST:-ON}" RUN_CTEST="${RUN_CTEST:-ON}"
TESTS_ONLY="${TESTS_ONLY:-OFF}" TESTS_ONLY="${TESTS_ONLY:-OFF}"
@@ -851,14 +851,14 @@ BUILD_RTI="${BUILD_RTI:-ON}"
BUILD_GROUP1="${BUILD_GROUP1:-ON}" BUILD_GROUP1="${BUILD_GROUP1:-ON}"
BUILD_GROUP2="${BUILD_GROUP2:-ON}" BUILD_GROUP2="${BUILD_GROUP2:-ON}"
BUILD_GROUP3="${BUILD_GROUP3:-ON}" BUILD_GROUP3="${BUILD_GROUP3:-ON}"
BUILD_GROUP4="${BUILD_GROUP4:-OFF}" BUILD_GROUP4="${BUILD_GROUP4:-ON}"
BUILD_GROUP5="${BUILD_GROUP5:-OFF}" BUILD_GROUP5="${BUILD_GROUP5:-ON}"
BUILD_GROUP6="${BUILD_GROUP6:-OFF}" BUILD_GROUP6="${BUILD_GROUP6:-ON}"
BUILD_GROUP7="${BUILD_GROUP7:-OFF}" BUILD_GROUP7="${BUILD_GROUP7:-ON}"
BUILD_GROUP8="${BUILD_GROUP8:-OFF}" BUILD_GROUP8="${BUILD_GROUP8:-ON}"
BUILD_GROUP9="${BUILD_GROUP9:-OFF}" BUILD_GROUP9="${BUILD_GROUP9:-ON}"
BUILD_GROUP10="${BUILD_GROUP10:-OFF}" BUILD_GROUP10="${BUILD_GROUP10:-ON}"
BUILD_GROUP11="${BUILD_GROUP11:-OFF}" BUILD_GROUP11="${BUILD_GROUP11:-ON}"
RUN_CTEST="${RUN_CTEST:-ON}" RUN_CTEST="${RUN_CTEST:-ON}"
TESTS_ONLY="${TESTS_ONLY:-OFF}" TESTS_ONLY="${TESTS_ONLY:-OFF}"
INTEGRATION_TEST="${INTEGRATION_TEST:-OFF}" INTEGRATION_TEST="${INTEGRATION_TEST:-OFF}"
@@ -1452,15 +1452,15 @@ BUILD_ARCGIS="${BUILD_ARCGIS:-OFF}"
BUILD_GROUP1="${BUILD_GROUP1:-ON}" BUILD_GROUP1="${BUILD_GROUP1:-ON}"
BUILD_GROUP2="${BUILD_GROUP2:-ON}" BUILD_GROUP2="${BUILD_GROUP2:-ON}"
BUILD_GROUP3="${BUILD_GROUP3:-ON}" BUILD_GROUP3="${BUILD_GROUP3:-ON}"
BUILD_GROUP4="${BUILD_GROUP4:-OFF}" BUILD_GROUP4="${BUILD_GROUP4:-ON}"
BUILD_GROUP5="${BUILD_GROUP5:-OFF}" BUILD_GROUP5="${BUILD_GROUP5:-ON}"
BUILD_GROUP6="${BUILD_GROUP6:-OFF}" BUILD_GROUP6="${BUILD_GROUP6:-ON}"
BUILD_GROUP7="${BUILD_GROUP7:-OFF}" BUILD_GROUP7="${BUILD_GROUP7:-ON}"
BUILD_GROUP8="${BUILD_GROUP8:-OFF}" BUILD_GROUP8="${BUILD_GROUP8:-ON}"
BUILD_GROUP9="${BUILD_GROUP9:-OFF}" BUILD_GROUP9="${BUILD_GROUP9:-ON}"
BUILD_GROUP10="${BUILD_GROUP10:-OFF}" BUILD_GROUP10="${BUILD_GROUP10:-ON}"
BUILD_GROUP11="${BUILD_GROUP11:-OFF}" BUILD_GROUP11="${BUILD_GROUP11:-ON}"
BUILD_GROUP12="${BUILD_GROUP12:-OFF}" BUILD_GROUP12="${BUILD_GROUP12:-ON}"
BUILD_VIEWER_ONLY="${BUILD_VIEWER_ONLY:-OFF}" BUILD_VIEWER_ONLY="${BUILD_VIEWER_ONLY:-OFF}"
RUN_CTEST="${RUN_CTEST:-ON}" RUN_CTEST="${RUN_CTEST:-ON}"
TESTS_ONLY="${TESTS_ONLY:-OFF}" TESTS_ONLY="${TESTS_ONLY:-OFF}"
@@ -1502,7 +1502,7 @@ run_build_group() {
if [[ "${enabled}" == "ON" ]]; then if [[ "${enabled}" == "ON" ]]; then
log_info "Building ${group_id}: ${targets[*]}" log_info "Building ${group_id}: ${targets[*]}"
# Use || true to continue if optional targets (e.g., svcWirelessLocationSystem) are not configured # Use || true to continue if optional targets (e.g., svcWirelessLocationSystem) are not configured
make -j1 "${targets[@]}" 2>&1 | tee "${log_file}" || true make -j10 "${targets[@]}" 2>&1 | tee "${log_file}" || true
else else
log_info "Skipping ${group_id}" log_info "Skipping ${group_id}"
fi fi
@@ -1563,6 +1563,7 @@ fi
ensure_database ensure_database
export RTI_LICENSE_FILE=/workspace/rti_license.dat export RTI_LICENSE_FILE=/workspace/rti_license.dat
export DDS_PATH=/workspace/external/rti_connext_dds-7.7.0
export QT_QPA_PLATFORM=offscreen export QT_QPA_PLATFORM=offscreen
# Setup ArcGIS SDK if enabled # Setup ArcGIS SDK if enabled
@@ -1580,7 +1581,7 @@ cd /workspace/qt-migration-legatus/qt6-after/qt6-migrated-legatus
# Clean build directory (running as root inside container) # Clean build directory (running as root inside container)
# Use find to handle permission issues from previous runs with different UID # Use find to handle permission issues from previous runs with different UID
if [ -d build4 ]; then if [ -d build4 ]; then
find build4 -mindepth 1 -delete 2>/dev/null || true rm -rf build4
fi fi
mkdir -p build4 mkdir -p build4
cd build4 cd build4
@@ -1601,6 +1602,7 @@ cmake .. \
-DCMAKE_CXX_DEPENDENCIES_USE_COMPILER=OFF \ -DCMAKE_CXX_DEPENDENCIES_USE_COMPILER=OFF \
-DCMAKE_CXX_STANDARD=17 \ -DCMAKE_CXX_STANDARD=17 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DRTI_DIR=/workspace/external/rti_connext_dds-7.7.0 \
-DCMAKE_PREFIX_PATH="${QT_BASE_DIR}/${QT_VERSION}/${QT_ARCH_DIR}${BUILD_ARCGIS:+;/workspace/qt-migration-legatus/qt6-after/qt6-migrated-legatus/external/ArcGIS/MapsSDK_Qt_300.0.0/ArcGIS_Maps_SDK_Qt_300.0.0/qt300.0.0/sdk};/usr/local" -DCMAKE_PREFIX_PATH="${QT_BASE_DIR}/${QT_VERSION}/${QT_ARCH_DIR}${BUILD_ARCGIS:+;/workspace/qt-migration-legatus/qt6-after/qt6-migrated-legatus/external/ArcGIS/MapsSDK_Qt_300.0.0/ArcGIS_Maps_SDK_Qt_300.0.0/qt300.0.0/sdk};/usr/local"
read -r -a GROUP1_ARRAY <<< "${GROUP1_TARGETS}" read -r -a GROUP1_ARRAY <<< "${GROUP1_TARGETS}"
@@ -1690,6 +1692,8 @@ docker run --rm \
-e QT_ARCH \ -e QT_ARCH \
-e QT_ARCH_DIR \ -e QT_ARCH_DIR \
-e QT_BASE_DIR \ -e QT_BASE_DIR \
-e DDS_PATH \
-e RTI_LICENSE_FILE \
-e APT_PACKAGES_STRING="${APT_PACKAGES_STRING}" \ -e APT_PACKAGES_STRING="${APT_PACKAGES_STRING}" \
-e GROUP1_TARGETS="${GROUP1_TARGETS_STRING}" \ -e GROUP1_TARGETS="${GROUP1_TARGETS_STRING}" \
-e GROUP2_TARGETS="${GROUP2_TARGETS_STRING}" \ -e GROUP2_TARGETS="${GROUP2_TARGETS_STRING}" \
@@ -1,10 +1,7 @@
#----------------------------------------------------------------- #-----------------------------------------------------------------
# Issued to: Test on Wed Sep 23 17:48:43 2026 # Issued to: Rheinmetall Electronics GmbH(RHEINMET08) on Wed Oct 28 15:38:47 2026
# Contact: Moi Meme Phone: ... # Contact: Live Simulation Framework Phone: ...
# email: berrux@outlook.de # email: ...
# Do NOT edit this file. # Do NOT edit this file.
SERVER <embedded> ffffffff 1700 SERVER <embedded> ffffffff 1700
FEATURE RTIPRO RTI 4. 20-nov-2026 0 F8031B976E72D17E8B03 "License=Evaluation;Company=Test;Contact=Moi Meme;Email=berrux@outlook.de;Verbosity=warn;ExpiredAction=exit;Production=no;IssueTimestamp=1790185723;CreatedBy=Test;Telemetry=on" FEATURE RTIPRO RTI 4. 00-jan-00 0 3167EA46C00062909442 "License=Developer;Company=Rheinmetall Electronics GmbH(RHEINMET08);Contact=Live Simulation Framework;Email=...;Verbosity=silent;ExpiredAction=continue;Production=yes"
FEATURE RTISECURITY RTI 5. 20-nov-2026 0 B6F179F2381FC5CAE4DF "License=Evaluation;Company=Test;Contact=Moi Meme;Email=berrux@outlook.de;Verbosity=warn;ExpiredAction=exit;Production=no;IssueTimestamp=1790185723;CreatedBy=Test;Telemetry=on"
FEATURE RTIRWT RTI 6. 20-nov-2026 0 EE2FBD16BE636F7CAD9E "License=Evaluation;Company=Test;Contact=Moi Meme;Email=berrux@outlook.de;Verbosity=warn;ExpiredAction=exit;Production=no;IssueTimestamp=1790185723;CreatedBy=Test;Telemetry=on"
FEATURE RTICDS RTI 6. 20-nov-2026 0 15B75FC1054D5E39A55D "License=Evaluation;Company=Test;Contact=Moi Meme;Email=berrux@outlook.de;Verbosity=warn;ExpiredAction=exit;Production=no;IssueTimestamp=1790185723;CreatedBy=Test;Telemetry=on"