[qt/qt/qtbase]: Summary of bulk changes made

KDE Git Services - Bulk Change <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git repository change summary for qt/qt/qtbase
Pushed by mirror-service into branch '6.11'.
Changed from c22005267f8079d482c4bf9e69a6636607ceb262 to 309a4ba1f7efbd7148f87bc989efaf3cb820c7f5
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit 0a1623704500a7c2fd2502e4c76229a0710fbf27 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Set SBOM_INSTALL_DIR for multiple_project_calls_same_doc test

The new test didn't set the SBOM_INSTALL_DIR dir for the child
subprojects, which led to CMP0174 warnings.

Amends cfd0a3f084486758ea7d42596e45d77cb30ba753

Pick-to: 6.8
Change-Id: I147c235515367951b21afc3f1e3d4c8a95832214
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 773d65fe3f5c30a595ca2dff70c5b9fc8bcb6491)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 1277bce22ce8962efe45ebd9c7b5729b622fe12d)
https://invent.kde.org/qt/qt/qtbase/-/commit/0a1623704500a7c2fd2502e4c76229a0710fbf27

Git commit 283143460bb34c76710f5aeea4199f519bd7319e by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Refactor sbom test infrastructure

Merge CommonResultGen.cmake and CommonResultGenIntro.cmake into a new
SbomTestGenHelpers.cmake file, with the code wrapped in new functions
or macros.

Move most of the code in check.cmake to a new
SbomTestCheckHelpers.cmake file again wrapped in functions and macros.

Include SbomTestGenHelpers.cmake in CMakeLists.txt so the helpers are
available in each test case.

Replace the manual inclusions of CommonResultGenIntro.cmake and
CommonResultGen.cmake with calls to sbom_test_begin() and
sbom_test_end().

Clean up some stale comments.

There should be no behavior changes. The change paves way for
improving the test infrastructure in a follow up change.

Pick-to: 6.8
Change-Id: I802a82ab829302ef0d754f96f3c14b99fac07b4f
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 5ed5bcc9acf7a7ae40fa3a12f0f16d4dd50bc202)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 77e0fd627ba41f35799b4a4e25b9bf20b3fcaf34)
https://invent.kde.org/qt/qt/qtbase/-/commit/283143460bb34c76710f5aeea4199f519bd7319e

Git commit 4e3775d0a645fd57aa6b83fd2f337e3e67968d97 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Collect all built SBOM documents in a global property

Collect all sbom document spdx ids in a
_qt_internal_sbom_generated_projects global property. This will be
used by tests to confirm presence or absence of documents.

Pick-to: 6.8
Change-Id: Ia1b1f321d1e50e92a04a25703cf9ca8db3be4d75
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit c805e40952cecefdecaaad06cd8fc4f5c670dcb4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 775f20aa19422878f2ae52bfa9cb73e90cda8825)
https://invent.kde.org/qt/qt/qtbase/-/commit/4e3775d0a645fd57aa6b83fd2f337e3e67968d97

Git commit 0eeb8819c2a767b28090b454800d23d9d7906832 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Add current project SBOM document path getter

This will be used by tests to confirm presence or absence of a
document.

Pick-to: 6.8
Change-Id: I14a1c3964a838a79033aed2293c28802e8d97c1c
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 35185945f2b9864effa81c2821878c09d612f358)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 67ad5df62d4e74d61422511c0812fac4fafb48ac)
https://invent.kde.org/qt/qt/qtbase/-/commit/0eeb8819c2a767b28090b454800d23d9d7906832

Git commit 45c124a1422576abcf9dc892a1994c90efa25118 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Rework SBOM test helpers to handle multiple documents

Previously, the SBOM test helpers created multiple result.cmake
files that were all included and thus overwrote the same set of
variables.

The code also used parent scope variables to pass information which
was error prone.

Both of this made testing of multiple SBOM documents created by a
single CMake run impossible.

Rework the SBOM test helpers to use global properties to record
information per document about known targets, document ids, etc.
Then generate a single result.cmake file that includes all the
information.

Use that information to do the various checks like spdx document
lookups, cyclonedx target and dependency lookups, as well as checking
of presence of the various SBOM format documents on disk.

Each sbom_begin_project call is now expected to be followed by a
sbom_test_record_project call to record the document paths and
spdx id of the project.
This was not wrapped into a separate function like
sbom_test_begin_project, to make the tests resemble actual example
CMake projects more closely.

All the install-check.cmake files were removed, and the checks are now
always done in main check.cmake file.

The bubble_up_extra_result_code calls were all removed because they
are not needed anymore, state is passed through global properties.

Pick-to: 6.8
Change-Id: I7ee5ea2fabe1a3ac4f7c8c949ff6ef9fca441881
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 9e92872f71a5a16d143d9df8a3927f6af21df985)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 6864ecbb7a8012f36bf7c59510a188d85027dbe2)
https://invent.kde.org/qt/qt/qtbase/-/commit/45c124a1422576abcf9dc892a1994c90efa25118

Git commit a630b29e0d9c8e377737352df1f26a8f9bdc9d34 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Add support for MODULE_LIBRARY for SBOM generation

Marking a MODULE_LIBRARY target with the LIBRARY SBOM entity type
would cause an error like:

CMake Error at QtPublicSbomFileHelpers.cmake:207 (message):
  Unsupported target type: MODULE_LIBRARY
Call Stack (most recent call first):
  QtPublicSbomHelpers.cmake:1672
    (_qt_internal_sbom_handle_target_binary_files)
  QtPublicSbomHelpers.cmake:2060 (_qt_internal_sbom_add_target)
  QtPublicSbomHelpers.cmake:825 (_qt_internal_finalize_sbom)

Add support for MODULE_LIBRARY targets, by treating them like
SHARED_LIBRARY targets, they install a single config-aware library
binary file.

Adjust the tests.

Pick-to: 6.8
Change-Id: I81cc84e7aa6966b7c429e1fa9219d77a16033139
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 118f84b08c4cab7c2364b708b290ee95891cb620)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 6e1921d8dc16242bd88fedd26b67759651fc6812)
https://invent.kde.org/qt/qt/qtbase/-/commit/a630b29e0d9c8e377737352df1f26a8f9bdc9d34

Git commit fb88da89837f5423276991005ba32dbb08387458 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Install another set of test sbom documents

These documents that are part of new separate CMake packages, will be
used in the target_relationships_external test to verify more kinds of
sbom relationships.

Pick-to: 6.8
Change-Id: I85ec274ef915712fe911640acad9fde6b64d3e1e
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit eeed9771d39998dc1f8aaf8d3f6e3130710ebb55)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 93751b4a4ffb75d5ebdcc3b589891dca6edcb6e5)
https://invent.kde.org/qt/qt/qtbase/-/commit/fb88da89837f5423276991005ba32dbb08387458

Git commit 7bd6530fdf698c98d7cc120b60e93a4c7f51a666 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Fix SBOM external reference handling to be per-format

When creating an SBOM, targets can have relationships to other targets
that are part of external SBOM documents.

Previously the code didn't manage to handle per-format external
references correctly:
- if the _qt_sbom_spdx_relative_installed_repo_document_path
  exported property was unset, a CycloneDX-only dependency could be
  dropped entirely when only CycloneDX was enabled
- if a dependency's external document didn't exist in a given format,
  the relationship was still added in that format's document and
  referred to an external reference that doesn't exist
- External CycloneDX components were always recorded even
  when their external document had no CycloneDX serial number,
  creating an invalid bom link
- two different targets could register the same SPDX document ref id
  or CycloneDX serial number without an error

Make the following changes to fix these issues:

- compute, per format, whether the info needed to add the external
  dependency is available
- add the external reference document only for the formats that are
  both enabled and available
- skip recording a CycloneDX external component when the external
  document has no bom serial number
- as a safety net, skip serializing a relationship whose external
  document is not found
- track CycloneDX external documents per serial number, mirroring the
  existing SPDX ref id tracking
- error out when a different target reuses an already recorded SPDX
  ref id or CycloneDX serial number.

Adapt the tests to cover the new behavior

Pick-to: 6.8
Change-Id: I86f4d8bddb86ad3073f0c43c2aea29093647083b
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 69550506479620482d7b5526d56324af1e1bc856)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit f867896bf840a31bad6e273a44bbe1f48d9069bc)
https://invent.kde.org/qt/qt/qtbase/-/commit/7bd6530fdf698c98d7cc120b60e93a4c7f51a666

Git commit 309a4ba1f7efbd7148f87bc989efaf3cb820c7f5 by Qt Cherry-pick Bot (on behalf of Alexandru Croitor) on 16/07/2026 at 11:19..
CMake: Add more SBOM entity types

Add SBOM entity types for sources, object libraries, archives and
installers, generic files, frameworks, to allow more specific
choices, until generic support for sbom entity types is added.

There is no big meaning for them, aside from the package purpose.
Frameworks and object libraries currently don't get their files auto
installed.

Archives are meant as zip archives.
Installers are meant as .msi-like files.
Sources are a collection of sources like .cpp files.
Files are just generic files.

Pick-to: 6.8
Change-Id: I4b64546ad4021ca1e8c6fa58e6b98feb88207847
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 09203bdd18a7723f316058376ceff8a0a9995c08)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit f85524331e56f95bbf0939694288becbdbcad5b1)
https://invent.kde.org/qt/qt/qtbase/-/commit/309a4ba1f7efbd7148f87bc989efaf3cb820c7f5
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.