Commit Graph
95 Commits
Author SHA1 Message Date
torsten d7a0cd2319 Adds jenkins, rpmbuild as submods into repo 2026-08-19 12:10:02 +02:00
torsten d6e5a5c45b Adds immediate migration results in progress 2026-08-19 11:30:24 +02:00
torstenandCopilot f17b7f5854 Update Jenkinsfile to DEB terminology for Ubuntu 26.04
- Changed stage names from 'Build RPM'/'Publish RPM' to 'Build DEB'/'Publish DEB'
- Updated parameter descriptions to reference DEB packages
- Updated comments to reference make_rpm_ubuntu26.py
- Changed artifact repository path from cts-rpms to cts-debs

Part of Qt5/C++11 to Qt6/C++23 migration project.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M0CH79QV1X40QYRYX2FJ835F
2026-08-19 10:11:53 +02:00
torstenandCopilot e8acaf64f6 Submodule update: Qt6 DDS-Stubs und Build-Fixes
- 81 DDS-Stub-Header für alle Module generiert
- NGL_ADD_LIBRARY2: 87 CMakeLists.txt für Export-Header
- INGLLogger: Duplikat entfernt, Logging-Makros fix
- SymbolAppearance, BuildingComponentFilter, AesFilter definiert
- Include-Pfade: core_types.h, QtGui/QImage, aes.hpp
- Enum-Class-Streaming Support in INGLLogger.h
- QRegExp→QRegularExpression, .underlying() Fixes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M0C37PCVWHKVZ88VCX8F7F15
2026-08-19 06:07:25 +02:00
torsten 00507a988e Update submodule with comprehensive BUILD_RTI fixes
- 78 files changed with BUILD_RTI conditional wrappers
- All DDS-dependent libraries now properly guarded
- Qt6 compatibility fixes for Poppler, LtsCoordTrans, LtsMultiMonitor
- Enables clean build with BUILD_RTI=ON or BUILD_RTI=OFF

Entire-Checkpoint: 01M0BEXYC9XW7NYA9V6R9JKMR4
2026-08-19 00:12:35 +02:00
torsten 3a66e5f92e Update qt-migration-legatus submodule to fix LtsWidgets BUILD_RTI issue
- Submodule commit includes IF(BUILD_RTI) wrapper for LtsWidgets library
- Fixes include paths for export header generation
- Enables LtsWidgets to build when BUILD_RTI=ON and BUILD_WS=ON

Entire-Checkpoint: 01M0BEW4METXK5F9X7WEHEAQCY
2026-08-19 00:11:35 +02:00
torstenandCopilot efa959c9d1 Update Jenkinsfile for Ubuntu 26.04 Qt6 migration
- Changed spec_suffix_for_os['26.04'] from '' to '26.04'
- This selects lts26.04.spec for Ubuntu 26.04 builds
- Updated comments to reflect Ubuntu 26.04 as target platform

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M0B40E71R875JD5R4PBDV0SE
2026-08-18 21:01:41 +02:00
torsten ab94e9fd61 Adds copilot-cli prompts for migration work 2026-08-18 10:26:12 +02:00
torstenandCopilot 4cd1a76c35 Update submodule branch and Docker tag to ubuntu26.04
- .gitmodules: Set submodule branch to feature/qt6-migration-basis-modules
- app/Dockerfile: Update FROM ubuntu:24.04 to ubuntu:26.04
- files/qt6-submodule-migration-changes.md: Update status with successful test results

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M08CV4EFR0GM7NSVCTBC16K5
2026-08-17 19:38:22 +02:00
torstenandCopilot cf75745f8b Qt6 migration: Update Docker tag to ubuntu26.04 and fix submodule paths
Cosmetic changes for readability and consistency:
- Update Docker image tag from ubuntu22.04 to ubuntu26.04 in all scripts
- Align with Dockerfile base image (ubuntu:26.04)

Files updated:
- app/run_docker.sh
- migration/automate_migrate_Lts_DDS.sh
- migration/migrate_module.sh
- final-migration/run_final_migration.sh
- .github/workflows/qt6-migration.yml (submodules: recursive)
- migration/run_clang_tidy_common.sh

Documentation:
- files/qt6-submodule-migration-changes.md: Added note about qt6-after being empty

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M08C7DVVVDNBXGPN4M02CFB5
2026-08-17 19:27:36 +02:00
torsten 0a0988376f Adds entire env 2026-08-17 18:15:20 +02:00
torsten 75d0c06158 Moves lts folder to self-hosted gitea repo 2026-08-17 18:01:57 +02:00
torsten 352c292879 Adds latest head of porting branch submod 2026-08-17 17:58:06 +02:00
torsten 516bdfd3c9 Adds migration run time requiremnts 2026-08-14 12:24:46 +02:00
torsten be8cf8f533 Adds migration repo as submod 2026-08-14 12:17:07 +02:00
torsten 46c8d8de3e Saves latest changes made in migration effort 2026-08-13 18:43:10 +02:00
torsten f2a640242c Add stub ProjectDataManagement/pdm_enums.hpp to allow migration-build progress\n\nPlaceholder header to satisfy includes during TetraIF migration; replace with real generated header later.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-22 12:33:51 +02:00
torsten 33cf8cd3b3 Expose NGLLogger include dir as INTERFACE and include ProjectDataManagement in TetraIF migration build\n\n- Add to NGLLogger INTERFACE include dirs so consumers can include <NGLLogger/...>.\n- When MIGRATE_MODULE=TetraIF also add_subdirectory(Lts/Plugins/ProjectDataManagement) to ensure ProjectDataManagement headers are available.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-22 12:32:19 +02:00
torsten b190fb33e7 CMake: when migrating TetraIF, also include Lts/Proxies/TrainingAreaBase and Z/src in build tree\n\nThis ensures generated training_area header and NGLLogger are present when building TetraIF in an isolated migration run.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 15:30:47 +02:00
torsten 1e438ffb37 Z/tcpserver: include <QObject> in workerbase.h (Qt6 compatibility)\n\nFix invalid use of incomplete QObject type under Qt6 by adding missing include.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 15:28:01 +02:00
torsten f1d08c5da2 CMake: fix MIGRATE_MODULE matching syntax (remove backslash line-continuation) 2026-07-21 15:24:00 +02:00
torsten 5aaef2b631 CMake: improve MIGRATE_MODULE subdir matching to handle nested paths (e.g., Lts/Proxies/TrainingAreaBase)\n\nInclude subdirectories when MIGRATE_MODULE contains the subdir as a path component so nested module selection works.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 15:23:35 +02:00
torsten 835c977905 Lts/Proxies/TrainingAreaBase: prefer Qt6 and fallback to Qt5 for Core/Sql/Network targets\n\nUse Qt6::Core/Sql/Network when available to support Qt6 migration; fall back to Qt5 to keep compatibility.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 15:21:17 +02:00
torsten 6603c6563f TetraIF/CoPrtCnv: link Qt Core to expose Qt includes (Qt6 when available)\n\nAdd Qt6::Core/Qt5::Core to CoPrtCnv target link libraries so Qt headers (QString, QJsonDocument, etc.) are found during migration builds.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 14:15:17 +02:00
torsten a33d44382b TetraIF/LogView: guard add_dependencies for generated helper targets (avoid missing training_area_telegrams.h_bin error during configure)\n\nOnly add dependencies if helper targets exist so configure succeeds in migration builds where those generators are absent.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 14:14:44 +02:00
torsten 70cdf12c82 Z: make ngltools Qt smoke test build standalone when library target missing; use DTG format for stable round-trip\n\nEnsure smoke test links directly to implementation if ngltools target isn't present so migration builds can run tests without producing the full library.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-21 14:14:01 +02:00
torsten fe78be0afa devops: add RPM prepare and external installers; extend Dockerfile and run_docker.sh for --run-rpm 2026-07-18 18:24:31 +02:00
torsten 89f048a312 tools: add RPM prepare and external-install helper scripts (ArcGIS, GeographicLib, RTI) 2026-07-18 18:23:30 +02:00
torsten 0a9284ca91 Removes otherways hosted strip script 2026-07-18 17:23:09 +02:00
torsten 7f035543e2 Adds rpm specs to migration repo 2026-07-18 17:22:25 +02:00
torsten acee7b8766 migrate(Lts/Common): apply clang-tidy modernization fixes\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-18 16:48:13 +02:00
torsten 6822817a63 tools: use sudo in run_clang_tidy_common.sh for apt operations 2026-07-17 17:54:32 +02:00
torsten 0d5990f127 tools: add run_clang_tidy_common.sh to apply clang-tidy fixes for Lts/Common 2026-07-17 17:51:14 +02:00
torsten 5c1896a930 build: include CommonUnitTestsPlaceholder when present for migration smoke-tests 2026-07-17 17:35:12 +02:00
torsten b75302083b tests: add Common placeholder smoke/gtest tests and MockCoordTrans 2026-07-17 17:34:33 +02:00
torsten 90f7f8a474 tests: adapt GTest smoke-tests to MockDDS annotated payload format (seq:payload) 2026-07-17 17:31:54 +02:00
torsten bec34480c8 tests: richer MockDDS (subscriptions, queues, seq) and link into Qt/GTest smoke-tests 2026-07-17 17:30:57 +02:00
torsten 69d30bc20a tests: link MockDDS.cpp into GTest smoke executables 2026-07-17 17:28:28 +02:00
torsten 7372bdc766 tests: add MockDDS and use it in GTest smoke-tests to simulate publish/subscribe flows 2026-07-17 17:27:42 +02:00
torsten b44bb09891 tests: add optional GoogleTest-based smoke-tests and CMake support (BUILD_GTEST_SMOKE) 2026-07-17 17:24:50 +02:00
torsten f4d1602d87 ci: apt-install libgtest-dev/libgmock-dev and add build_gtest.sh in Dockerfile 2026-07-17 17:24:09 +02:00
torsten 25588135fa ci: add app/build_gtest.sh to build and install GoogleTest from system sources 2026-07-17 17:23:52 +02:00
torsten 3d490bea2e tests: add BUILD_SMOKE_TESTS option to enable smoke-tests in full-builds 2026-07-17 17:15:14 +02:00
torsten 8ea74a81ad tests: make smoke-tests Qt6-safe (use QStringLiteral/QLatin1) 2026-07-17 17:12:43 +02:00
torsten 3988248897 tests: upgrade DDS smoke-tests to Qt Test-based checks (QString, QVariant, containers) 2026-07-17 17:12:07 +02:00
torsten 80a09df7b9 tests: add smoke-test executables for Lts/DDS placeholders during migration 2026-07-17 17:08:59 +02:00
torsten 4d7de6c733 revert: remove PlaceholderInternalTargets include (caused target conflicts) 2026-07-17 17:05:33 +02:00
torsten 372d50acec tests: add placeholder CTest entries for Lts/DDS during migration 2026-07-17 17:04:55 +02:00
torsten adf548cb06 migration: allow skipping Strix via SKIP_STRIX=1 in automate_migrate_Lts_DDS.sh 2026-07-17 16:57:47 +02:00
torsten b5c6f9f18b migration: add automate_migrate_Lts_DDS.sh to run clang-tidy and Strix (best-effort) inside Docker image\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 16:48:58 +02:00
torsten 946695c57e cmake: set KDReports_FOUND when KDReports-qt6 detected so LtsPrinting guard behaves correctly 2026-07-17 15:28:50 +02:00
torsten 398c1fe981 cmake: extend FindKDReports to detect KDReports-qt6 installed under /usr/local and provide imported target shim 2026-07-17 15:28:16 +02:00
torsten 7e661079b1 cmake: add FindGrantlee5.cmake shim to gracefully skip Grantlee when unavailable (avoids Qt5/Qt6 mixing)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 14:01:27 +02:00
torsten 3a4f72d59f build(docker): fix COPY placement and apt package name for geographiclib; run build scripts outside RUN copy (Dockerfile syntax)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:38:03 +02:00
torsten c028a5622c build(docker): attempt apt install libgrantlee5/libkdreports; add build_grantlee.sh and build_kdreports.sh invocation from Dockerfile\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:37:06 +02:00
torsten f613b4f266 build(docker): add build_grantlee.sh and build_kdreports.sh to install or build Grantlee and KDReports from source\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:36:41 +02:00
torsten 5a74df95f2 chore(cmake): honor -DMIGRATE_MODULE to add only necessary subdirectories for per-module migration builds\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:28:53 +02:00
torsten 1c6e1fa8b3 chore(cmake): guard test_nglpdfwidget by TARGET nglwidgets to avoid linking if library missing\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:22:23 +02:00
torsten 13eab6258d build(docker): call ./app/build_log4qt.sh from Dockerfile; move Log4Qt build out of Dockerfile\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:17:07 +02:00
torsten fd7ba24128 build(docker): extract Log4Qt build into ./app/build_log4qt.sh; keep Dockerfile simple (builds call script)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:16:48 +02:00
torsten c7abae2727 chore(cmake): skip unit tests that require not-yet-migrated internal targets (guard by TARGET LtsElevation)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:15:28 +02:00
torsten ae2c674b81 chore(repo): replace app symlink/submodule with in-repo app directory; enable committing app/Dockerfile and tooling\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 13:13:02 +02:00
torstenandCopilot a12270ad01 build(docker): add external deps (GeographicLib, Grantlee, KDReports) and build-from-source fallbacks; note RTI is proprietary
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-17 13:12:46 +02:00
torsten 7556893505 chore(CMake): guard Lts/Tests add_subdirectory when BUILD_TESTING is ON to allow partial checkouts 2026-07-17 12:59:58 +02:00
torsten 033a94917a chore(cmake): make RTI codegen macro tolerant when RTI is not installed (skip RTIDDSGEN) 2026-07-17 12:59:36 +02:00
torsten 647f817a04 chore(CMake): make KDReports optional for LtsPrinting to allow configure without printing deps 2026-07-17 12:59:03 +02:00
torsten 5cc294a919 chore(CMake): make GeographicLib optional for LtsCoordTrans to allow partial configure during migration 2026-07-17 12:58:22 +02:00
torsten 7401dbf3fd fix(migrate): sanitize module name correctly for build dir 2026-07-17 12:57:48 +02:00
torsten f6089bcdca fix(migrate): use per-module build dir to avoid permission conflicts with existing /repo/build 2026-07-17 12:57:31 +02:00
torsten 699d745a6a chore(CMake/migrate): relax Grantlee/RTI requirements and avoid permission issues in fallback docker run\n\n- Make Grantlee optional and skip codegen_grantlee when missing
- Keep RTI optional (no REQUIRED)
- Use host UID:GID when running fallback docker run to allow cleaning build dir
\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-17 12:55:35 +02:00
torsten 3dbbcc1303 chore(CMake): make Lts top-level resilient to partial checkouts and optional RTI/doxygen\n\n- Guard ADD_DOXYGEN_TARGET with existence check
- Add only existing Lts subdirectories to allow partial migrations
- Make RTI optional in Lts/Common/CodeGen and guard RTI target properties
\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-17 12:52:28 +02:00
torsten d7491140fa fix(migrate): fallback to direct docker run when app/run_docker.sh fails to forward args; build image if needed 2026-07-17 12:50:06 +02:00
torsten 70872e468c fix(migrate): use absolute repo path when invoking app/run_docker.sh; compute MODULE_ABS relative to repo root\n\nThis avoids ambiguous '../sandbox' usage and ensures CMD_ARGS are forwarded into the container correctly.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 12:48:41 +02:00
torsten 0a43c6bc5c ci: add GitHub Actions workflow for Qt6 migration (Lts/Common, Lts/DDS, final full run)\n\nCreates CI job that runs migration/migrate_module.sh for Lts/Common and Lts/DDS and then final-migration/run_final_migration.sh.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-17 12:44:55 +02:00
torsten fa48db111e Continues migration with DDS, Common 2026-07-17 12:41:42 +02:00
torsten 9b15cee841 Add migration helpers: migrate_module.sh and MIGRATION_CHECKLIST.md\n\nProvide a repeatable migration script and checklist to standardize adding modules (./Lts, ./...) for Qt6/C++20 migration.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-16 08:40:13 +02:00
torsten 6ef0af4fd7 Ignore build/ and remove tracked build artifacts from repository\n\nRemove build artifacts from version control; build/ is in .gitignore now.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 2026-07-16 08:29:42 +02:00
torstenandCopilot 0fbb79cbac Update CHANGELOG: list migrated subfolders (./Z, ./TetraIF)
Document which subfolders were actually migrated to Qt6.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-15 13:25:29 +02:00
torstenandCopilot be24318131 Move CHANGELOG to repository root
Move release note into ./CHANGELOG for top-level visibility.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 23:50:45 +02:00
torstenandCopilot 5bf9957c6e Add release note for qt6-migration-2026.07.14
Add CHANGELOG entry summarizing Qt6 migration and verification steps.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 23:49:23 +02:00
torstenandCopilot 8b1e103ab4 Merge branch 'qt6/fix-qsqlquery-copy-warnings' into main
Merge fixes for QSqlQuery deprecation and Qt6 warnings

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 23:36:18 +02:00
torstenandCopilot e1b5c2f918 Fix QSqlQuery copy and Qt6 deprecation issues
- Suppress deprecated QSqlQuery copy-constructor warning locally in NSqlQuery::operator=
- Replace qChecksum overload with QByteArrayView
- Use QTimeZone::utc(), QLibraryInfo::path(), check QTranslator::load return values
- Replace deprecated operator+ for key combinations and other small Qt6 fixes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 23:32:33 +02:00
torstenandCopilot f7c94bed68 Fix LD_LIBRARY_PATH usage in final-migration runner (use default if unset)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 23:00:17 +02:00
torstenandCopilot b3c45b8c7c Add final-migration/run_final_migration.sh: dockerized clean configure, build and test runner
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:59:40 +02:00
torstenandCopilot 4a0fab6d3c Merge qt6/replace-qasconst into main
Apply Qt6 migration refactors: replace qAsConst->std::as_const, update QMouseEvent::position, reduce compiler warnings.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:57:32 +02:00
torstenandCopilot 3904b43cf8 Refactor: replace qAsConst with std::as_const across TetraIF; reduce compiler deprecation warnings
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:48:58 +02:00
torsten dfdc6e299d Remove sensitive .env-swy from index and ignore build/ and runtime artifacts
Ensure .env-swy is not tracked and add .gitignore entries for build/ and strix_runs/.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:44:44 +02:00
torsten 8af436f09a Reduce compiler warnings: replace qAsConst with std::as_const and update event localPos() to position()
Replaced deprecated qAsConst usages in built modules and updated QMouseEvent::localPos() to position() per Qt6 deprecation guidance.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:44:14 +02:00
torstenandCopilot 46e673f660 replace qAsConst with std::as_const in nglpdfdocument
Reduce Qt deprecation warnings

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:39:18 +02:00
torstenandCopilot 3546d1c7aa nglcompression: set m_success after buffer uncompress so waitForFinished succeeds
Ensures _uncompressBuffer sets m_success before returning true so success() reflects completed operation; fixes nglcomp_test::testUncompressMemory. Also add .gitignore to ignore runtime strix_runs/ artifacts.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-14 22:33:40 +02:00
torsten 8ef3c1861f qt6: pdfwidget fixes — replace deprecated layout margin API, adapt Poppler Qt6 unique_ptr API to existing code (use unique_ptr m_doc), fix std::min types 2026-07-14 20:41:40 +02:00
torsten 58f7124c49 qt6: widgets fixes — replace QDesktopWidget, use QGuiApplication::primaryScreen; switch dialog button map to QMultiMap; fix QFlags init and layout API; QtConcurrent lambda wrappers 2026-07-14 20:40:09 +02:00
torsten f744a8c37a qt6: nglcompression, widgets, dialog fixes: remove QTextCodec, QStringRef/splitRef, QDesktopWidget, use QMultiMap and Qt6 APIs; adjust QtConcurrent::run wrappers; replace endl with newline 2026-07-14 20:38:30 +02:00
torsten 17f1c61c9e Adds q2 repos to migrate 2026-07-14 12:07:36 +02:00
torsten d3e9309e83 Initial commit 2026-07-14 11:39:40 +02:00