summaryrefslogtreecommitdiff
path: root/Help
Commit message (Collapse)AuthorAgeFilesLines
* cmGeneratorExpressionNode: implement `COMPILE_ONLY` genexBen Boeckel2023-04-122-1/+23
| | | | | | | | | | | | | | | | This generator expression is the inverse of `LINK_ONLY` and only coveys usage requirements for the purposes of compilation. Its intended use is to avoid needing to export targets that do not have link usage requirements (e.g., header-only libraries) when used by another target. It will also be used to represent private usage requirements on exported C++ module-containing targets in the future. Eventually there should be logic to collapse nesting of `$<COMPILE_ONLY>` and `$<LINK_ONLY>` when generating instances of either. A TODO is left in the code for this case. See: #15415
* Merge topic 'automoc-macro-names'Craig Scott2023-04-104-2/+101
|\ | | | | | | | | | | | | | | | | | | | | c5c3aff1f5 Autogen: Add INTERFACE_AUTOMOC_MACRO_NAMES target property 69cf9700e6 Autogen: Defer setup until Generate step 7cecb6353e cmGeneratorTarget: Factor out EvaluatedTargetProperty infrastructure 2daba01ddf cmGeneratorTarget: Avoid incidental include-what-you-use warning 850b4d990c IWYU: Add mapping for 'std::remove_reference<Defer &>::type' Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8391
| * Autogen: Add INTERFACE_AUTOMOC_MACRO_NAMES target propertyOrkun Tokdemir2023-04-094-2/+101
| | | | | | | | | | | | | | | | | | | | Add this target property to specify macro names that propagate to dependents as `AUTOMOC_MACRO_NAMES`. The dependents will automatically generate MOC files for source files that contain the inherited macro names. Co-Authored-By: Craig Scott <craig.scott@crascit.com> Fixes: #19679
* | Merge topic 'vs-sdk-selection'Brad King2023-04-067-13/+126
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8ecb645934 VS: Select Windows SDK matching WindowsSDKVersion env var f90c8ab54e VS: Select latest available Windows SDK version by default b512c53d43 VS: Add support for setting WindowsTargetPlatformVersion to 10.0 2f3d945f83 VS: Add CMAKE_GENERATOR_PLATFORM field to control Windows SDK selection f0a67b6291 VS: Parse comma-separated fields from CMAKE_GENERATOR_PLATFORM e259063b0a VS: Defer Windows SDK selection until CMAKE_GENERATOR_PLATFORM is known 8499374c6a VS: Simplify logic to require SDK for Windows Store 1c8d4b4bf1 Tests: Teach RunCMake_TEST_FILTER to account for test variant description Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8389
| * | VS: Select Windows SDK matching WindowsSDKVersion env varBrad King2023-04-051-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In an environment established by `vcvarsall.bat` or similar, this environment variable may be set to select a Windows SDK version. If the VS generator is used in such an environment, use that SDK. This is similar to how `CMAKE_GENERATOR_INSTANCE` defaults using a `VS##0COMNTOOLS` environment variable. Fixes: #17992
| * | VS: Select latest available Windows SDK version by defaultBrad King2023-04-053-0/+51
| | | | | | | | | | | | | | | | | | | | | Add policy `CMP0149` to stop preferring SDKs exactly matching `CMAKE_SYSTEM_VERSION` over the latest SDK. Fixes: #16202
| * | VS: Add support for setting WindowsTargetPlatformVersion to 10.0Brad King2023-04-051-0/+4
| | | | | | | | | | | | | | | | | | | | | VS 2019 and above support this value to select a SDK version automatically. Fixes: #21403
| * | VS: Add CMAKE_GENERATOR_PLATFORM field to control Windows SDK selectionBrad King2023-04-055-12/+50
| | | | | | | | | | | | | | | | | | | | | Add a `version=` field to explicitly control the SDK version selection without relying on `CMAKE_SYSTEM_VERSION`. Fixes: #16713
| * | VS: Parse comma-separated fields from CMAKE_GENERATOR_PLATFORMBrad King2023-04-051-2/+14
| | |
* | | Merge topic 'doc-typo'Brad King2023-04-061-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 045fbbb47c Help: Remove duplicated word in COMPILE_OPTIONS target property docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8396
| * | | Help: Remove duplicated word in COMPILE_OPTIONS target property docsBrad King2023-04-051-1/+1
| | | | | | | | | | | | | | | | Fixes: #24673
* | | | Merge branch 'release-3.26'Brad King2023-04-041-2/+2
|\ \ \ \ | |/ / / | | / / | |/ / |/| |
| * | CMake 3.26.3v3.26.3Brad King2023-04-041-2/+2
| | |
* | | Help: Clarify that {add,target}_compile_options are not used for linkingBrad King2023-03-316-3/+31
| | | | | | | | | | | | | | | | | | Link to alternatives that can be used for adding link options. Issue: #24662
* | | Help: Clarify that CMAKE_<LANG>_FLAGS are used when driving linkingBrad King2023-03-312-12/+23
| | | | | | | | | | | | | | | | | | | | | | | | State explicitly that these flags are used when driving either compiling or linking. For linking, document their order w.r.t. link flags specified by commands. Fixes: #24662
* | | Help: Link to COMPILE_LANGUAGE genex from add_compile_optionsBrad King2023-03-311-0/+4
| |/ |/| | | | | | | | | | | Follow-up commit e2830cf16b (Help: Link to COMPILE_LANGUAGE genex from target_compile_options, 2023-03-28). Issue: #24639
* | Merge topic 'remove-FindPythonInterp-FindPythonLibs'Brad King2023-03-313-0/+36
|\ \ | | | | | | | | | | | | | | | | | | | | | a4c5b91f80 FindPython{Interp,Libs}: Add policy to remove these modules Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8380
| * | FindPython{Interp,Libs}: Add policy to remove these modulesBrad King2023-03-303-0/+36
| | | | | | | | | | | | | | | | | | The `FindPythonInterp` and `FindPythonLibs` modules have been deprecated since CMake 3.12. Add a policy to pretend they do not exist in order to encourage projects to port to `FindPython` or `FindPython{2,3}`.
* | | presets: Add trace options to configure presetsArtin Alavi2023-03-302-0/+156
|/ / | | | | | | | | | | Add JSON schema version 7 to support them. Fixes: #22543
* | Merge branch 'release-3.26'Brad King2023-03-291-3/+3
|\ \ | |/
| * CMake 3.26.2v3.26.2Brad King2023-03-291-3/+3
| |
* | Help: Link to COMPILE_LANGUAGE genex from target_compile_optionsBrad King2023-03-282-0/+8
| | | | | | | | Issue: #24639
* | Merge topic 'lint-genex'Brad King2023-03-285-0/+27
|\ \ | | | | | | | | | | | | | | | | | | | | | 099934e313 Add generator expression support to static code analysis hooks Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8361
| * | Add generator expression support to static code analysis hooksStefan Schober2023-03-275-0/+27
| | | | | | | | | | | | | | | | | | Teach target properties `<LANG>_CPPCHECK`, `<LANG>_CPPLINT`, `<LANG>_CLANG_TIDY` and `<LANG>_INCLUDE_WHAT_YOU_USE` to accept generator expressions.
* | | Merge topic 'FindPython-Windows-ARM'Brad King2023-03-281-0/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9913c28ebb FindPython: Add Windows/ARM support Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: David Lechner <david@lechnology.com> Merge-request: !8354
| * | | FindPython: Add Windows/ARM supportMarc Chevrier2023-03-261-0/+5
| | | | | | | | | | | | | | | | Fixes: #24587
* | | | Merge topic 'file-GET_RUNTIME_DEPENDENCIES-windows-casing'Brad King2023-03-282-9/+23
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5922c86ed6 file(GET_RUNTIME_DEPENDENCIES): Document case-preserving change on Windows 7dffe99ad8 Tests: Restore CudaOnly.RuntimeControls cudart verification on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !8367
| * | | | file(GET_RUNTIME_DEPENDENCIES): Document case-preserving change on WindowsBrad King2023-03-272-9/+23
| | |/ / | |/| | | | | | | | | | | | | | | | | | In commit fa45594407 (file(GET_RUNTIME_DEPENDENCIES): Preserve casing for Windows PE binaries, 2023-03-06) we neglected to update associated documentation.
* | | | Merge topic 'crosscompiling-warn-reset'Brad King2023-03-271-5/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4d23636694 Warn if CMAKE_CROSSCOMPILING is true without CMAKE_SYSTEM_NAME set Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8358
| * | | | Warn if CMAKE_CROSSCOMPILING is true without CMAKE_SYSTEM_NAME setMartin Storsjö2023-03-241-5/+5
| |/ / / | | | | | | | | | | | | | | | | Also clarify the `CMAKE_CROSSCOMPILING` documentation to state that CMake sets the variable automatically.
* | | | Help: Clarify that set(VAR) unsets VARBrad King2023-03-243-12/+21
|/ / / | | | | | | | | | | | | | | | | | | | | | Also call out possible exposure of an existing cache entry of the same name, as we have for the `unset` command since commit 1a0f1a25a4 (Help: Clarify the unset command, 2018-08-17, v3.13.0-rc1~199^2). Issue: #24633
* | | Merge branch 'release-3.26'Brad King2023-03-231-0/+12
|\ \ \ | | |/ | |/|
| * | CMake 3.26.1v3.26.1Brad King2023-03-231-0/+12
| | |
| * | Merge branch 'release-3.25' into release-3.26Brad King2023-03-081-0/+7
| |\ \
| * \ \ Merge branch 'release-3.25' into release-3.26Brad King2023-03-081-0/+7
| |\ \ \
* | \ \ \ Merge topic 'autogen-exe-vars'Brad King2023-03-235-0/+40
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | b3d1797508 Autogen: Add CMAKE_AUTO*_EXECUTABLE variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8352
| * | | | Autogen: Add CMAKE_AUTO*_EXECUTABLE variablesOrkun Tokdemir2023-03-225-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the `CMAKE_AUTOMOC_EXECUTABLE`, `CMAKE_AUTOUIC_EXECUTABLE`, and `CMAKE_AUTORCC_EXECUTABLE` variables to initialize the corresponding `AUTO{MOC,UIC,RCC}_EXECUTABLE` target properties. Fixes: #20071
* | | | | Help: Replace link with its permanent redirectBrad King2023-03-181-1/+1
| | | | |
* | | | | Merge topic 'vs-windows-min-version'Brad King2023-03-164-3/+27
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6546305b01 VS: Add CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION variable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8319
| * | | | | VS: Add CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION variablehalx992023-03-154-3/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a way to initialize the `VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION` target property on targets. It sets `WindowsTargetPlatformMinVersion` in `.vcxproj` files.
* | | | | | Merge topic 'doc_varreq'Brad King2023-03-167-1/+30
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9e1b30121f Help:toolchain: refer to CheckSourceCompiles cf48022dc5 Help:Check*: include CMAKE_REQUIRED_* vars to dedupe Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8300
| * | | | | | Help:toolchain: refer to CheckSourceCompilesscivision2023-03-141-1/+1
| | | | | | |
| * | | | | | Help:Check*: include CMAKE_REQUIRED_* vars to dedupescivision2023-03-146-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMAKE_REQUIRED_FLAGS now notes that space-delimited string, not ;-list is required, which could be surprising compared to similar options that do use ;-list
* | | | | | | Help: Improve file command signaturesMatthew Woehlke2023-03-151-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a couple of file command signatures that were not using angle brackets to mark arguments.
* | | | | | | Help: Convert signatures of file commandMatthew Woehlke2023-03-153-931/+899
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert `file` command to use new `signature` directive. Use '<HASH>' rather than 'HASH' for relevant signature targets, as this is arguably more correct, results in less need to specify explicit targets, but still produces '#hash' as the HTML anchor. Although actual textual changes to `file` are fairly minimal, large portions of the content have been re-indented and in many cases, re-flowed. Some tabular content in literal text blocks has also been converted to actual tables.
* | | | | | | Help: Convert signatures of list and set commandsMatthew Woehlke2023-03-152-277/+248
| |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert documentation of the `list` and `set` commands to use new `signature` directive. Use new `cref` role in the `list` introduction so that the subcommands there are links rather than just text. Turn references into `string` subcommands into actual links. Reformat some prose as definition lists.
* | | | | | Utilities/Sphinx: Add 'cref' roleMatthew Woehlke2023-03-141-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a role that can be used to create local links (a la '`LINK`_'), but that also applies literal style. This is particularly useful for referring to subcommands within the command's documentation in a style that is consistent with ':command:`BAR <foo(BAR)>`' but is much less verbose. Although this is intended for subcommands, it works with any local reference. Co-authored-by: Brad King <brad.king@kitware.com>
* | | | | | Merge topic 'smart-wrap-signatures'Brad King2023-03-141-0/+17
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 39ecaa5da1 Utilities/Sphinx: Improve word wrap of signatures Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8317
| * | | | | | Utilities/Sphinx: Improve word wrap of signaturesMatthew Woehlke2023-03-131-0/+17
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement logic to support several styles of parsing in the new signature directive that control where line breaks are allowed in a signature. The default is 'smart', which forbids breaks inside of square- or angle-brackets. The 'verbatim' option forbids all breaks. In all cases, breaks are always allowed where a newline appears in the source. This seems to Just Work for most writers, but HTML needs some special handling that is accomplished by a new CSS rule and assigning the 'nbsp' class to spaces that are not allowed to break. (ROFF's line wrapping is rather unfortunate here, as it prefers splitting and hyphenating words rather than breaking at a space.)
* | | | | | Merge topic 'genex-explicit-target'Brad King2023-03-142-0/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2e37a20f02 Utilities/Sphinx: Allow explicit target for genex Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !8321