Commit Graph

60774 Commits

Author SHA1 Message Date
Brad King
2d5675e4fa Merge topic 'doc-3.26-relnotes'
385435cf78 Help: Organize and revise 3.26 release notes
4c63f031c1 Help: Consolidate 3.26 release notes
bc1ba6d56b Help: Document experimental feature gate affecting CXX_SCAN_FOR_MODULES
71f9c1943d FindImageMagick: Fix documentation syntax in usage example

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8148
2023-02-01 14:41:03 -05:00
Brad King
385435cf78 Help: Organize and revise 3.26 release notes
Add section headers similar to the 3.25 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.

Add a bullet for `FindImageMagick` that was accidentally left out
when its changes were made.
2023-02-01 14:02:17 -05:00
Brad King
4c63f031c1 Help: Consolidate 3.26 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move
notes from `Help/release/dev/*` into `Help/release/3.26.rst`.
2023-02-01 13:58:23 -05:00
Brad King
bc1ba6d56b Help: Document experimental feature gate affecting CXX_SCAN_FOR_MODULES
Also drop the release note for `CXX_SCAN_FOR_MODULES`, as the rest of
the C++ modules support has not yet been mentioned in release notes
(since it is still experimental).
2023-02-01 13:58:23 -05:00
Brad King
71f9c1943d FindImageMagick: Fix documentation syntax in usage example 2023-02-01 13:58:23 -05:00
Brad King
8ec1c9ab6a Merge topic 'configure-log'
5252c88569 try_compile: Record propagated CMake variables in configure log
0a48d8fe5c ConfigureLog: De-duplicate event backtrace and check key generation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8140
2023-02-01 11:47:46 -05:00
Brad King
5252c88569 try_compile: Record propagated CMake variables in configure log
These provide more detailed information about how the test project was
configured.

Issue: #23200
2023-02-01 09:32:42 -05:00
Brad King
0a48d8fe5c ConfigureLog: De-duplicate event backtrace and check key generation
All event kinds have these fields, so centralize their implementation.
2023-02-01 09:32:42 -05:00
Brad King
e86bebfd14 Merge topic 'update-kwsys'
11d59c9ed6 Merge branch 'upstream-KWSys' into update-kwsys
187389d9e1 KWSys 2023-02-01 (cafea4c8)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8147
2023-02-01 09:31:34 -05:00
Brad King
11d59c9ed6 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2023-02-01 (cafea4c8)
2023-02-01 09:12:57 -05:00
KWSys Upstream
187389d9e1 KWSys 2023-02-01 (cafea4c8)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit cafea4c84a581703c4bed5c725c421611c4bf358 (master).

Upstream Shortlog
-----------------

Brad King (1):
      5df8c0a1 RegularExpression: Extend max paren groups from 10 to 32
2023-02-01 09:12:56 -05:00
Brad King
0292cf3c96 Merge topic 'xcode-header-search'
8527f42b96 Xcode: Explicitly disable deprecated user include path feature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8143
2023-02-01 09:11:45 -05:00
Brad King
b2ceca6553 Merge topic 'doc-ipo'
d7c60ab6b0 Help: mark the directory properties INTERPROCEDURAL_OPTIMIZATION as deprecated
6ed026592e Help: improve docs for INTERPROCEDURAL_OPTIMIZATION target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8141
2023-02-01 09:10:38 -05:00
Brad King
ce0139a1df Merge topic '_hm_swift_threads_pthread'
d7963aa9ee FindThreads: Filter -pthread out for compatibility with Swift linker

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8142
2023-02-01 09:09:52 -05:00
Brad King
a58b0baca2 Merge topic 'cmTarget-refactorings'
33f629184f cmTarget: simplify `CheckLinkLibraryPattern`
22b9ce73e7 cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE usage requirements
332d2f8f52 cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT usage requirements
15eec07500 cmTarget: refactor INTERFACE_LINK_LIBRARIES usage requirements
e80689d101 cmTarget: refactor LINK_LIBRARIES usage requirements
4f009d2121 cmTarget: refactor LINK_DIRECTORIES usage requirements
99e783e735 cmTarget: refactor LINK_OPTIONS usage requirements
fd295dd263 cmTarget: refactor SOURCES usage requirements
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8127
2023-02-01 09:07:58 -05:00
Brad King
29d19e0e5a Merge topic 'cmTarget-property-grouping'
a7c29f3ebd cmTarget: use static string views for per-config properties
47315d817c cmTarget: group remaining properties
32d21f215f cmTarget: put build graph-related properties into a group
6f9821d179 cmTarget: put static analysis (co-compile) properties in a group
ead9ff61f9 cmTarget: put linking-related properties in a group
9bb824a237 cmTarget: put compile-related properties in a group

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8135
2023-02-01 09:07:06 -05:00
Brad King
6b2c52b25b Merge topic 'ccg-index-type'
91a26ce041 cmComputeComponentGraph: use `size_t` for component indices
65c0a64dc5 cmComputeComponentGraph: use a name for "invalid component"
50abdaab93 IWYU: exclude `__decay_and_strip<int>` as well

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8128
2023-02-01 09:06:07 -05:00
Kitware Robot
4e9db2a8fa CMake Nightly Date Stamp 2023-02-01 00:01:16 -05:00
Brad King
8527f42b96 Xcode: Explicitly disable deprecated user include path feature
The `ALWAYS_SEARCH_USER_PATHS` feature is documented [1] to search the
paths in `USER_HEADER_SEARCH_PATHS` before `HEADER_SEARCH_PATHS`.  The
behavior has been long discouraged and was deprecated by Xcode 8.3.
Furthermore, Xcode explicitly disables this setting when creating new
projects.  We can do that too since we do not generate any user header
search paths anyway.

Previously we always set `USE_HEADERMAP` to `NO` to prevent Xcode's
warning about an ancient "header map" feature deprecation.  However,
this somehow breaks Xcode 14's "Build Documentation" feature.  Setting
`ALWAYS_SEARCH_USER_PATHS` to `NO` seems to prevent the header map
warning too, so drop `USE_HEADERMAP` to fix the documentation feature.

[1] https://developer.apple.com/documentation/xcode/build-settings-reference

Fixes: #24379
2023-01-31 14:21:20 -05:00
Ben Boeckel
33f629184f cmTarget: simplify CheckLinkLibraryPattern
Now that usage properties have more of a representation, the function
can just take the requirement directly.
2023-01-31 10:07:02 -05:00
Ben Boeckel
22b9ce73e7 cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
332d2f8f52 cmTarget: refactor INTERFACE_LINK_LIBRARIES_DIRECT usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
15eec07500 cmTarget: refactor INTERFACE_LINK_LIBRARIES usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
e80689d101 cmTarget: refactor LINK_LIBRARIES usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
4f009d2121 cmTarget: refactor LINK_DIRECTORIES usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
99e783e735 cmTarget: refactor LINK_OPTIONS usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
fd295dd263 cmTarget: refactor SOURCES usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
b21ab2638f cmTarget: refactor PRECOMPILE_HEADERS usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
8566336776 cmTarget: refactor COMPILE_DEFINITIONS usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
70555450fe cmTarget: refactor COMPILE_FEATURES usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
03b9240d6b cmTarget: refactor COMPILE_OPTIONS usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
91561103de cmTarget: refactor INCLUDE_DIRECTORIES usage requirements 2023-01-31 10:07:02 -05:00
Ben Boeckel
f644fc8aca cmTarget: introduce a UsageRequirementProperty structure
This structure will encapsulate the behaviors of usage requirements.
There are a number of them now and they all behave very similarly, so
try to reduce the code duplication as much as possible.
2023-01-31 10:07:02 -05:00
Alexander Neundorf
d7c60ab6b0 Help: mark the directory properties INTERPROCEDURAL_OPTIMIZATION as deprecated
These properties actually never existed, so move the documentation
to "Deprecated" and refer to the target properties.
2023-01-31 09:46:02 -05:00
Alexander Neundorf
6ed026592e Help: improve docs for INTERPROCEDURAL_OPTIMIZATION target property
The documentation now mentions the per-config target property.

Fixes: #24285
2023-01-31 09:45:48 -05:00
Brad King
29fb1367b6 Merge topic 'doc-CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS'
8c57f7b45e Help: Clarify CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8136
2023-01-31 09:35:31 -05:00
Brad King
a5e2986244 Merge topic 'doc-add_custom_command'
abddcd370f Help: Clarify add_custom_command OUTPUT relative path behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8137
2023-01-31 09:34:39 -05:00
Brad King
2f5b0ac34e Merge topic 'CMakePackageConfigHelpers-ARCH_INDEPENDENT'
77982de955 CMakePackageConfigHelpers: only emit arch check if needed

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8133
2023-01-31 09:33:53 -05:00
Ben Boeckel
91a26ce041 cmComputeComponentGraph: use size_t for component indices
This avoids using casts everywhere when dealing with the sizes.
2023-01-31 09:27:06 -05:00
Ben Boeckel
65c0a64dc5 cmComputeComponentGraph: use a name for "invalid component"
This is to prepare for making the graph use `size_t`.
2023-01-31 09:27:06 -05:00
Brad King
18631c5089 Merge topic 'iwyu-ci-choose-target'
d5ee82104f ci: support debugging IWYU in CI

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8138
2023-01-31 09:14:20 -05:00
Brad King
1a5bc71c59 Merge topic 'update-curl'
8443dfa946 curl: Work around missing OpenSSL symbol on machine with LCC 1.23
f9f5957884 Merge branch 'upstream-curl' into update-curl
dac458ddbf curl 2022-12-21 (c12fb3dd)
39dcf9469d curl: Update script to get curl 7.87.0
b2fe717a49 file: Avoid using deprecated curl progress callback
1cd38de47f ctest: Drop unnecessary use of deprecated CURLOPT_PUT

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8131
2023-01-31 09:13:24 -05:00
Harry Mallon
d7963aa9ee FindThreads: Filter -pthread out for compatibility with Swift linker 2023-01-31 09:11:08 +00:00
Kitware Robot
4dc058270d CMake Nightly Date Stamp 2023-01-31 00:01:11 -05:00
Ben Boeckel
d5ee82104f ci: support debugging IWYU in CI
Instead of requiring setting up a mock CI environment with the official
image locally. While such docs would be handy anyways, requiring that
entire setup to get a small piece of information from a build is
unnecessary.
2023-01-30 15:25:24 -05:00
Robert Maynard
8c57f7b45e Help: Clarify CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS behavior
Fixes: #24373
2023-01-30 14:45:14 -05:00
Brad King
abddcd370f Help: Clarify add_custom_command OUTPUT relative path behavior
Issue: #24372
2023-01-30 13:50:01 -05:00
Brad King
1c4825066b Merge topic 'msvc-showIncludes'
8f82e755f3 Ninja: Fix detection of MSVC showIncludes prefix in Italian
d6e7e4d4a1 Tests: Extend RunCMake.Ninja ShowIncludes cases to cover more languages
9596305c0b Tests: Generalize RunCMake.Ninja ShowIncludes test infrastructure
c6dd4fa21d Tests: Extend RunCMake.Ninja ShowIncludes case with sample path
a9d97492fd Ninja: Record showIncludes detection in configure log

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8129
2023-01-30 10:23:31 -05:00
Brad King
09cb6c48e2 Merge topic 'iwyu-better-ci-logs'
bf3425c3d2 ci: add a comment to run IWYU in verbose mode
25f0b4f397 CMake: add an option to run IWYU in verbose mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8130
2023-01-30 10:19:31 -05:00
Brad King
28ef53b55b Merge topic 'cxxmodules-export-iface-names-test'
f755296f9d Tests/RunCMake/CXXModules: add tests which don't export C++ module properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8126
2023-01-30 10:18:51 -05:00