# Release 2a Scope Summary (Libraries Only) **Date**: 2025-11-12 **Branch**: story/release-2-cleanup **Submodule Branch**: story/create-release-two-delivery-25_11_2026 ## Overview Release 2a includes **23 library targets only**, excluding all 37 svc* services (planned for Release 2b). ## Build Configuration ### Active Build Groups ```bash export BUILD_GROUP1=ON # AP4: DDS middleware export BUILD_GROUP3=ON # AP3: Shared libraries (23 targets) export BUILD_GROUP5=ON # AP9: DDSView, LogViewer, SqlBrowser export BUILD_GROUP6=ON # AP9: DaoGenerator, lupdate ``` ### GROUP3_TARGETS (23 Library Targets) ```cmake # NGL* Libraries (12) NGLLogger nglapplication nglcompression nglcoreapplication ngldb nglguiapplication nglsettings nglsingleapplication nglsinglecoreapplication ngltools ngltranslator nglwidgets # qtsingle* Libraries (2) qtsingleapplication qtsinglecoreapplication # Other Libraries (4) wms_json_ds tcpserver LtsCoordinate LtsCoordTrans LtsElevation # Test Libraries (5) pdmTests eemTests flmTests srpFtTests ``` ### Excluded Services (37 svc* targets for Release 2b) All svc* services have been removed from GROUP3_TARGETS for Release 2a: - svcAesClient, svcAesCommon, svcAreaEffectSimulation - svcAlmClient, svcAlmCommon, svcAlmServer (require BUILD_RTI/BUILD_GRANTLEE) - svcArincDecoder, svcArincDiscrete, svcArincSensor - svcAttackSuicide - svcBogey - svcC2Receiver, svcC2Transmitter - svcClimate - svcCompass - svcCorridor - svcCubic - svcCylinder - svcDataDistribution - svcDataRecorder - svcDedex - svcElevation - svcEllipse - svcEnvironmental - svcFov - svcFuel - svcGeodetics - svcGravity - svcGroundClutter - svcHeading - svcHeight - svcHolmes - svcHuman - svcInterCom - svcLaser - svcLight - svcLine - svcMagnetic - svcMapping - svcMarker - svcMaterial - svcMeasurement - svcModelConverter - svcOrdnance - svcOrient - svcParticle - svcPathfinder - svcPlane - svcPoint - svcPolygon - svcPolyline - svcPrecipitation - svcRadar - svcRadio - svcRect - svcRoad - svcSensor - svcShock - svcSimManager - svcSky - svcSphere - svcSpherical - svcSpot - svcStar - svcSubModel - svcTemperature - svcTerrain - svcText - svcThermals - svcTrack - svcTrajectory - svcTurn - svcVelocity - svcVersion - svcVisibility - svcWeather - svcWind - svcWingman ## DEB Package Manifests (Release 2a) ### 1. guez-release2-core **Description**: Core shared libraries (AP3) **Dependencies**: qt6-base, qt6-tools, qt6-svg, qt6-3d, qt6-datavis3d **Libraries**: - libngllogger6 - libnglapplication6 - libnglcompression6 - libnglcoreapplication6 - libngldb6 - libnglguiapplication6 - libnglsettings6 - libnglsingleapplication6 - libnglsinglecoreapplication6 - libngltools6 - libngltranslator6 - libnglwidgets6 - libqtsingleapplication6 - libqtsinglecoreapplication6 - libwms-json-ds6 - libtcpserver6 - liblts-coordinate6 - liblts-coord-trans6 - liblts-elevation6 ### 2. guez-release2-dds **Description**: DDS middleware libraries (AP4) **Dependencies**: guez-release2-core, rti-connext-dds-6.1.2 **Libraries**: - libddscore6 - libddsftccore6 - libddsfts6 - libddsconnector6 - libddsqos6 - libsvc-core-client6 ### 3. guez-release2-tools **Description**: Tools and viewers (AP9) **Dependencies**: guez-release2-core, guez-release2-dds **Tools**: - ddsView - logViewer - sqlBrowser - dao-generator - lupdate-toolchain ### 4. guez-release2-dev **Description**: Development files **Dependencies**: guez-release2-core, guez-release2-dds **Files**: - Headers for all libraries - CMake config files - pkg-config files ## Source Directory Structure (Release 2a) Only the following directories contain Release 2a source files: ``` Z/src/ ├── NGLLogger/ ├── nglapplication/ ├── nglcompression/ ├── nglcoreapplication/ ├── ngldb/ ├── nglguiapplication/ ├── nglsettings/ ├── nglsingleapplication/ ├── nglsinglecoreapplication/ ├── ngltools/ ├── ngltranslator/ ├── nglwidgets/ ├── qtsingleapplication/ ├── qtsinglecoreapplication/ ├── wms_json_ds/ ├── tcpserver/ ├── pdmTests/ ├── eemTests/ ├── flmTests/ └── srpFtTests/ Lts/Common/ ├── LtsCoordinate/ ├── LtsCoordTrans/ └── LtsElevation/ include/ ├── NGLLogger/ ├── nglapplication/ ├── nglcompression/ ├── nglcoreapplication/ ├── ngldb/ ├── nglguiapplication/ ├── nglsettings/ ├── nglsingleapplication/ ├── nglsinglecoreapplication/ ├── ngltools/ ├── ngltranslator/ ├── nglwidgets/ ├── qtsingleapplication/ ├── qtsinglecoreapplication/ ├── wms_json_ds/ ├── tcpserver/ ├── pdmTests/ ├── eemTests/ ├── flmTests/ └── srpFtTests/ ``` ## Validation Build Command ```bash cd qt-migration-legatus/qt6-after/qt6-migrated-legatus ./new_docker_build_release2.sh \ --build-group1 ON \ --build-group3 ON \ --build-group5 ON \ --build-group6 ON \ --lts-version 6.0.0 \ --project guez \ --build-number 2a-$(date +%Y%m%d) \ --build-tag release2a-validation \ --package-output-dir /tmp/release2a-packages ``` ## Files Modified 1. `new_docker_build_release2.sh` - Fixed CMake config variable passing (removed extra quotes) - Fixed build_group calls (removed extra quotes) - Added Docker environment variable exports - Updated GROUP3_TARGETS (23 library targets) - Added new options (--run-jenkins-builder, --run-coverage, etc.) 2. `Lts/Common/CMakeLists.txt` - Uncommented LtsCoordinate target 3. `Lts/Services/AreaEffectSimulation/CMakeLists.txt` - Added TARGET_EXISTS for conditional linking ## Next Steps 1. Apply DEB packaging filter to make_rpm_ubuntu26_release2.py (see RELEASE2A_DEB_FILTER_INSTRUCTIONS.md) 2. Execute validation build with DEB packaging 3. Verify DEB package contents 4. Create comprehensive validation report