This commit is contained in:
1 file changed
+93
@@ -1,5 +1,98 @@
|
||||
# Qt5/C++11 → Qt6/C++17 Migration Status
|
||||
|
||||
## Session 030: BUILD_RTI Schutz für THP und Build-Erfolg (2026-08-28)
|
||||
|
||||
### ✅ THP-Haupttarget mit BUILD_RTI-Schutz versehen
|
||||
|
||||
**Problem:** THP-Application benötigte SituationMapPlugin/Gui/SituationMap/AdapterDds, welches `sitmapdds_export.h` benötigt. Dieser Header wird nur bei `BUILD_RTI=ON` generiert.
|
||||
|
||||
**Lösung:** Gesamtes THP-Target mit `IF(BUILD_RTI)` umschlossen:
|
||||
|
||||
#### Lts/Application/THP/CMakeLists.txt
|
||||
- **Änderung:** `ADD_SUBDIRECTORY(THP-Starter)` und `FIND_PACKAGE(VLC)` mit `IF(BUILD_RTI)` geschützt
|
||||
- **Betroffene Targets:** thp_viewer, THP-Starter
|
||||
- **Begründung:** THP verwendet SitmapDds und SituationMapPlugin (nur bei BUILD_RTI verfügbar)
|
||||
|
||||
**Vorher:**
|
||||
```cmake
|
||||
# THP-Viewer
|
||||
ADD_SUBDIRECTORY(THP-Starter)
|
||||
FIND_PACKAGE(VLC REQUIRED)
|
||||
```
|
||||
|
||||
**Nachher:**
|
||||
```cmake
|
||||
# THP-Viewer
|
||||
IF(BUILD_RTI)
|
||||
ADD_SUBDIRECTORY(THP-Starter)
|
||||
FIND_PACKAGE(VLC REQUIRED)
|
||||
...
|
||||
ENDIF(BUILD_RTI)
|
||||
```
|
||||
|
||||
### ✅ Vollständiger Build im Docker-Container erfolgreich
|
||||
|
||||
**Test-Konfiguration:**
|
||||
```bash
|
||||
cmake -S qt6-after/qt6-migrated-legatus \
|
||||
-B build \
|
||||
-G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Debug \
|
||||
-DBUILD_ARCGIS=OFF \
|
||||
-DBUILD_RTI=OFF \
|
||||
-DWITH_VLC=OFF \
|
||||
-DWITH_SCHUSSTAFEL=OFF \
|
||||
-DWITH_ARCGIS=OFF
|
||||
```
|
||||
|
||||
**Build-Ergebnisse:**
|
||||
- ✅ CMake Configure: **SUCCESS**
|
||||
- ✅ Build abgeschlossen: **exit code 0**
|
||||
- ✅ Alle RTI-abhängigen Targets korrekt übersprungen
|
||||
- ✅ Alle ArcGIS-abhängigen Targets korrekt übersprungen
|
||||
- ✅ THP mit BUILD_RTI-Schutz kompiliert
|
||||
|
||||
### ✅ Kumulierte Build-Fixes dieser Session
|
||||
|
||||
**Include-Pfad-Korrekturen:**
|
||||
- ✅ FilterManagement Plugin Interfaces: `flt.hpp` → `handler_aes_filter.h`
|
||||
- ✅ LtsUtilsCore: PUBLIC Include-Pfad-Export hinzugefügt
|
||||
- ✅ THP: Hardcoded Pfade zu relativen Pfaden korrigiert
|
||||
|
||||
**Qt6-API-Fixes:**
|
||||
- ✅ THP/thp_html_widget.cpp: `QStringRef` → `QStringView`
|
||||
- ✅ THP/thp_html_widget.cpp: `splitRef()` → `split()`, `midRef()` → `mid()`
|
||||
- ✅ THP/thp_html_widget.cpp: `QWebEnginePage::print` Callback-Signatur aktualisiert
|
||||
|
||||
**CMake Conditional-Blocks:**
|
||||
- ✅ Lts/Tools/CMakeLists.txt: ParticipantDataGenerator/VulnerabilityStateGenerator mit IF(BUILD_RTI)
|
||||
- ✅ Lts/Application/OpApp/CMakeLists.txt: IF(BUILD_RTI) Block hinzugefügt
|
||||
- ✅ Lts/Application/THP/CMakeLists.txt: Gesamtes Target mit IF(BUILD_RTI) umschlossen
|
||||
- ✅ Lts/Services/CentralEffectSimulation/CMakeLists.txt: IF(BUILD_ARCGIS) korrigiert
|
||||
- ✅ Lts/Plugins/PlanEditor/CMakeLists.txt: IF(BUILD_ARCGIS) hinzugefügt
|
||||
- ✅ Explosions-Plugin: IF(BUILD_ARCGIS) hinzugefügt
|
||||
- ✅ PlanEditor/Test: IF(BUILD_ARCGIS) hinzugefügt
|
||||
|
||||
### Migration Summary (Cumulative)
|
||||
- **Total CMakeLists.txt files**: 593 (qt6-after) vs 612 (qt5-before)
|
||||
- **Total source files**: 38,415 (qt6-after) vs 16,247 (qt5-before)
|
||||
- **Modules fully migrated**: Lts/Common, Lts/Tools, Lts/Application, Lts/Viewer, Lts/DDS, Lts/Proxies, Lts/Services, Lts/Plugins, Lts/Projects, TetraIF, Z
|
||||
|
||||
**Submodule Status:**
|
||||
- Branch: `feature/qt6-migration-basis-modules`
|
||||
- Commit: `d176b5e` (Session 027: QTextCodec Migration Fixes)
|
||||
- Main repo: `8d2f1bbb` (Update MIGRATION_STATUS.md with Session 026 results)
|
||||
|
||||
### Next Steps
|
||||
1. ✅ THP mit BUILD_RTI-Schutz versehen
|
||||
2. ✅ Vollständiger Build im Docker erfolgreich
|
||||
3. → Tests mit ctest im Docker-Container ausführen
|
||||
4. → Policy-Check: `python3 ci/check_pr_policies.py`
|
||||
5. → Nächste Submodule bearbeiten (Lts/Services mit 47, Lts/Plugins mit 60)
|
||||
6. → Changes commiten und separat pushen
|
||||
|
||||
---
|
||||
|
||||
## Session 029: Qt6 Location Module Made Optional (2026-08-26)
|
||||
|
||||
### ✅ Qt6 Location/Positioning Modules Made Optional
|
||||
|
||||
Reference in new issue
Block a user