Commit Graph

11483 Commits

Author SHA1 Message Date
Brad King a444929cf4 Merge topic 'autogen-ui-rebuild'
5363bebc1e Autogen: Fix compilation of unchanged source files
68ea116380 Autogen: Fix autogen test separation bugs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9660
2024-07-19 10:01:43 -04:00
Brad King 4e867bab6c Merge topic 'ctest-failure-summary-labels'
49e9f817de ctest: Display test labels in failure summary

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9652
2024-07-19 09:56:58 -04:00
Brad King a8d8f26828 Merge topic 'aix-archive-shared-libraries'
d27fe9dfba AIX: Add option to archive shared libraries
98013ad1ca cmXCOFF: Add support for editing binary inside an archive

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9606
2024-07-19 09:55:58 -04:00
Brad King de8e176113 Merge topic 'parallel-install'
159ba027b9 Install: Add parallel installation option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9611
2024-07-18 09:04:47 -04:00
Brad King 89dc9a6c41 Merge topic 'ninja-custom-target-build-event-dollar'
c3c14f04f2 Ninja: Fix build event commands with $-sign on custom targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9662
2024-07-18 09:00:30 -04:00
Brad King 4221d6b220 Merge topic 'implicit-link-static'
b3c9b317ff CMakeParseImplicitLinkInfo: Honor gfortran -static-libquadmath flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9664
2024-07-18 08:59:13 -04:00
Wim Colgate 49e9f817de ctest: Display test labels in failure summary
In a complex test environment, there may be a desire to add a test
property label to indicate context. Here is one such example:

    set_property(TEST mygoofytest PROPERTY LABELS might-fail-on-config-change)

Upon looking at the failed test summary, one can quickly decide whether
the failure might be expected or not.

    198 - mygoofytest (Failed)                might-fail-on-config-change
2024-07-17 13:56:01 -04:00
Orkun Tokdemir 5363bebc1e Autogen: Fix compilation of unchanged source files
Since generated `ui` headers are added as byproducts of the autogen
target, it causes to compilation of unchanged files.

This commits adds generated `ui` headers to byproducts of the
timestamp target instead of the autogen target's.

Fixes: #25436
Fixes: #26135
2024-07-17 18:12:04 +02:00
Orkun Tokdemir 68ea116380 Autogen: Fix autogen test separation bugs
When 6ee5c431 is merged, `autogen_test_number`
is put into the wrong scope. The problem is that RunCmake.Autogen_Qt5_X
tests are created only Qt6 prefix is provided. This commit moves it to
the upper scope.

Fix Xcode specific bug where `foreach(exe IN ITEMS Moc Uic Rcc)` should
be removed.
2024-07-17 18:12:04 +02:00
Aditya Vidyadhar Kamath d27fe9dfba AIX: Add option to archive shared libraries
Add option `CMAKE_AIX_SHARED_LIBRARY_ARCHIVE`.

There will no versions for the shared objects when this option is used.

Closes: #26033
2024-07-17 11:52:09 -04:00
Dávid Péter Jánosa c3c14f04f2 Ninja: Fix build event commands with $-sign on custom targets
Fixes: #26143
2024-07-17 09:27:35 -04:00
Brad King b3c9b317ff CMakeParseImplicitLinkInfo: Honor gfortran -static-libquadmath flag
Extend commit 1d7fddca8e (CMakeParseImplicitLinkInfo: Honor GNU static
runtime library flags, 2021-06-02, v3.21.0-rc1~85^2) to cover the
`quadmath` library.
2024-07-16 16:42:18 -04:00
Martin Duffy 159ba027b9 Install: Add parallel installation option
Fixes: #26000
2024-07-15 11:49:29 -04:00
Orkun Tokdemir 9ffac91e37 Autogen: Revert "Add timestamp file for CMAKE_GLOBAL_AUTORCC_TARGET"
In the commit 8d99e71b, a new timestamp file was added to prevent
unneeded `AUTORCC` triggering after successful builds when
`CMAKE_GLOBAL_AUTORCC_TARGET` is ON. This caused a regression that
configuration fails when multiple `.qrc` files are added to a target.
This commits reverts 8d99e71b.

Issue: #26059
Fixes: #26126
2024-07-10 15:22:02 +02:00
Brad King ead3548bed Merge topic 'xdg-config-dir'
5b3fbd5f64 cmSystemTools: Add CMake config directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9615
2024-07-08 11:23:33 -04:00
Brad King 639346f319 Merge topic 'ios-mac-catalyst'
2785364b7b iOS: Add support for Mac Catalyst

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9595
2024-07-08 11:13:09 -04:00
Brad King d3088a8eea Merge topic 'vs-dotnet-sdk-custom-command'
c7e5ebd0a8 VS: Support add_custom_command in .Net SDK-style projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9616
2024-07-08 10:17:28 -04:00
Kyle Edwards e24af20340 Merge topic 'TRANSITIVE_LINK_PROPERTIES_isnt_usage'
2fc9e482a9 Evaluation of TRANSITIVE_LINK_PROPERTIES isn't considered a usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9643
2024-07-08 10:04:24 -04:00
Robert Maynard 2fc9e482a9 Evaluation of TRANSITIVE_LINK_PROPERTIES isn't considered a usage
Fixes #26108
2024-07-05 13:16:47 -04:00
Brad King 9c330283d6 Merge topic 'cmArgumentParser-Derived-Classes'
5fc2bad167 cmArgumentParser: Support binding with derived classes
e0f9d81f09 STL: extend type_traits to deal with member pointers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9634
2024-07-04 10:10:07 -04:00
Brad King 0a22c97e06 Merge topic 'test-ExternalProject'
fe8dc3012e Tests: Fix RunCMake.ExternalProject when git is not available

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Christoph Grüninger <foss@grueninger.de>
Merge-request: !9639
2024-07-04 10:05:27 -04:00
Raul Metsma 2785364b7b iOS: Add support for Mac Catalyst
Issue: #20132
Signed-off-by: Raul Metsma <raul@metsma.ee>
2024-07-03 11:15:45 -04:00
Brad King fe8dc3012e Tests: Fix RunCMake.ExternalProject when git is not available
Move Git-dependent test cases added by commit 2ef3bd9186
(ExternalProject: Add TLS version options for https connections,
2024-02-26, v3.30.0-rc1~471^2) into the block of cases that run only
when Git is found.

Fixes: #26104
2024-07-03 10:44:15 -04:00
Martin Duffy 5b3fbd5f64 cmSystemTools: Add CMake config directory 2024-07-03 09:34:41 -04:00
Vito Gamberini 5fc2bad167 cmArgumentParser: Support binding with derived classes 2024-07-02 09:58:57 -04:00
Brad King 40ed14a88b Merge topic 'codegen'
197cb419d1 add_custom_command: Add CODEGEN support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9581
2024-07-02 08:18:04 -04:00
Juan Ramos 197cb419d1 add_custom_command: Add CODEGEN support
By specifying CODEGEN as an argument to add_custom_command the
custom command will be added to a codegen build target.

The intent is to provide a convenient way for users to get
their generated files without having to build the whole project.

This can be helpful for code analysis tools which can be useful
for IDEs and CI.
2024-07-01 12:02:49 -04:00
Brad King 9ee9571b2e Merge topic 'vs-framework-references'
0721f9bf0f VS: Add VS_FRAMEWORK_REFERENCES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9626
2024-06-27 11:22:43 -04:00
Brad King e053d6f81b Merge topic 'orkun_26059_24_06_2024'
8d99e71b7e Autogen: Add timestamp file for CMAKE_GLOBAL_AUTORCC_TARGET
003830f14f Autogen: Remove redundant push_back

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9628
2024-06-27 11:20:49 -04:00
Brad King 764c8c9036 Merge topic 'test-autogen-nmc'
8a68ad5233 Autogen: Filter out QtDeployTargets from Ninja Multi-Config tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9627
2024-06-27 11:11:05 -04:00
Calum Robinson 0721f9bf0f VS: Add VS_FRAMEWORK_REFERENCES
Fixes: #26082
2024-06-26 16:44:51 +01:00
Orkun Tokdemir 8d99e71b7e Autogen: Add timestamp file for CMAKE_GLOBAL_AUTORCC_TARGET
When `CMAKE_GLOBAL_AUTORCC_TARGET` is ON and qrc files are not
generated, `<target_name>_arcc_data` is always dirty. So this commit
adds a timestamp file which depens on what `<target_name>_arcc_data`
depends before and ``<target_name>_arcc_data` depends the timestamp
file.

The dependency graph before
(qrcFile, InfoFile) -> _arcc_target

The dependency graph after
(qrcFile, InfoFile) -> global_rcc_timestamp ->_arcc_target

Fixes: #26059
2024-06-26 15:37:41 +02:00
Brad King 033713530a Merge topic 'file-rpath-elf-static'
02f3e5be6a file(RPATH_CHANGE ...): no-op for static binary
ccbbf64552 Tests/RunCMake/file-RPATH: Prepare to cover statically linked binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9623
2024-06-26 08:46:21 -04:00
Brad King f879d3a33f Merge topic 'preset-comments'
7d2cc6ece6 presets: Allow comments in presets files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9608
2024-06-26 08:45:17 -04:00
Brad King a20377e41a Merge topic 'cpack-debian-multiarch'
71c631c435 CPack/DEB: Add Multi-Arch support
55524c48a4 CPack/DEB: Add Multi-Arch support
a022705a2e Tests/RunCMake/CPack: Improve README

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9609
2024-06-26 08:44:02 -04:00
Brad King 0ffdd6b50f Merge topic 'orkun_refactor_autogen_tests_21_06_2024'
6ee5c431d5 Autogen: Separate RunCMake.AutogenQtX tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: alcroito <alexandru.croitor@qt.io>
Merge-request: !9620
2024-06-26 08:41:02 -04:00
Brad King 1736e37740 Merge topic 'issue-26041-filemakedirectory-result-optional-argument'
95323c90a1 file(MAKE_DIRECTORY): Add optional RESULT keyword to capture failure.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9604
2024-06-26 08:39:31 -04:00
Orkun Tokdemir 8a68ad5233 Autogen: Filter out QtDeployTargets from Ninja Multi-Config tests
Since https://codereview.qt-project.org/c/qt/qtbase/+/518683 adds
generation of `.qt/QtDeployTargets-$<CONFIG>.cmake`, those files should
be filtered out from the `Ninja Multi-Config` tests.
2024-06-26 14:04:46 +02:00
Calum Robinson c7e5ebd0a8 VS: Support add_custom_command in .Net SDK-style projects
Fixes: #26048
2024-06-25 13:31:44 +01:00
Aliaksandr Averchanka 7d2cc6ece6 presets: Allow comments in presets files
Co-authored-by: Kanaiym <abdigak@clarkson.edu>
Fixes: #22791
2024-06-24 15:42:46 -04:00
Harmen Stoppels 02f3e5be6a file(RPATH_CHANGE ...): no-op for static binary
Setting `CMAKE_INSTALL_RPATH` on a project that contains statically
linked executables breaks the install step, since rpaths cannot be
changed.

This commit makes rpath adjustments not an error on static libraries.

Fixes #26078
2024-06-24 11:32:30 -04:00
Harmen Stoppels ccbbf64552 Tests/RunCMake/file-RPATH: Prepare to cover statically linked binaries 2024-06-24 11:32:20 -04:00
Brad King d395fb38e5 Merge topic 'apple-framework-bundle-name'
8a06f173d9 Apple: Add CFBundleName to framework Info.plist files
7c1a18655b Tests/RunCMake/Framework: Improve failure messages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Jason Juang <jasjuang@gmail.com>
Merge-request: !9610
2024-06-24 09:28:44 -04:00
Brad King 4cc832f797 Merge topic 'link-feature-attributes-stabilization'
576567f028 Link feature attributes: stabilization
5617c34c31 Libraries processing: update configuration wording

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9607
2024-06-24 09:22:48 -04:00
Brad King c3046ea289 Merge topic 'link-feature-attributes-stabilization' into release-3.30
576567f028 Link feature attributes: stabilization
5617c34c31 Libraries processing: update configuration wording

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9607
2024-06-24 09:22:47 -04:00
Brad King bf6f534451 Merge topic 'nmc-config-list'
b1a804d616 Ninja Multi-Config: Fix crash if config list is changed in subdirectory
9f8afacb3e cmGlobalNinjaGenerator: Reuse local generator caching of config list
48b911e3e5 cmGlobalNinjaGenerator: Factor out helper for global config list lookup
e2c6a54b07 cmGlobalNinjaGenerator: De-duplicate CMAKE_CONFIGURATION_TYPES lookup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9618
2024-06-24 09:21:14 -04:00
Orkun Tokdemir 6ee5c431d5 Autogen: Separate RunCMake.AutogenQtX tests
The RunCMake.AutogenQtX tests occasionally time out so separate
`RunCMake.AutogenQtX` tests.

Example: https://open.cdash.org/tests/1583599782
2024-06-24 15:00:51 +02:00
Robert Schuster 71c631c435 CPack/DEB: Add Multi-Arch support
Fix tests

Fixes: #21445
2024-06-24 09:33:37 +02:00
Asit Dhal 95323c90a1 file(MAKE_DIRECTORY): Add optional RESULT keyword to capture failure.
Fixes: #26041
2024-06-24 02:20:43 +02:00
Robert Schuster 55524c48a4 CPack/DEB: Add Multi-Arch support
Add support for Multi-Arch in control files of Debian packages.
Valid values: same, foreign, allowed

Fixes: #21445
2024-06-21 12:27:50 -04:00