Commit Graph

6111 Commits

Author SHA1 Message Date
Brad King
12830cc2a9 Merge topic 'verify-interface-header-sets-interface-library-source-language' into release-3.24
41f15193e5 VERIFY_INTERFACE_HEADER_SETS: Fall back to global languages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7517
2022-07-28 08:12:09 -04:00
Kyle Edwards
41f15193e5 VERIFY_INTERFACE_HEADER_SETS: Fall back to global languages
If a target doesn't have any source files, fall back to the global
list of enabled languages to determine the language of the header
file to verify.

Fixes: #23774
2022-07-27 13:29:09 -04:00
Brad King
d4336c9c99 Merge topic 'doc-if-PATH_EQUAL' into release-3.24
37e01773e4 Help: Clarify behavior of path-based equality conditions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7503
2022-07-26 09:22:28 -04:00
Brad King
aa0a7c3c4a Merge topic 'verify-interface-header-sets-interface-libraries' into release-3.24
f5dd1817d1 Help: Clarify that VERIFY_INTERFACE_HEADER_SETS supports interface libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7507
2022-07-26 09:21:27 -04:00
Brad King
feba099ba3 Merge topic 'FindVulkan-relnotes' into release-3.24
0b538e4002 FindVulkan: Add missing 3.24 release notes
db66c384fc FindVulkan: Format component documentation as definition list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7502
2022-07-26 09:19:16 -04:00
MACHIZAUD Andréa
0b538e4002 FindVulkan: Add missing 3.24 release notes 2022-07-25 14:04:43 -04:00
Kyle Edwards
f5dd1817d1 Help: Clarify that VERIFY_INTERFACE_HEADER_SETS supports interface libraries 2022-07-25 13:24:18 -04:00
Brad King
22c5352990 Merge topic 'doc-find_package-BYPASS_PROVIDER' into release-3.24
4f7a0c25d2 Help: Document BYPASS_PROVIDER keyword for find_package()
76370e06b8 Help: Minor grammar fix for the Using Dependencies manual

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7501
2022-07-25 12:02:19 -04:00
Craig Scott
e305fec8ad Merge topic 'doc-CMP0097-FetchContent' into release-3.24
1796ffbde9 Help: CMP0097 applies to FetchContent as well

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7504
2022-07-25 08:04:34 -04:00
Craig Scott
c7ab76e0ff Help: Fix wrong syntax for $<PATH:REPLACE_EXTENSION,...> 2022-07-24 17:11:58 +10:00
Craig Scott
1796ffbde9 Help: CMP0097 applies to FetchContent as well
The omission of FetchContent_Declare() in the original policy docs
was just an oversight.
2022-07-24 16:23:36 +10:00
Craig Scott
37e01773e4 Help: Clarify behavior of path-based equality conditions
The docs for if(PATH_EQUAL) did not mention the component-wise
nature of the checks. It also claimed no normalization was
performed, but multiple separators are effectively collapsed
(part of normalization). Improve the wording to clarify both of
these points.

Also update the corresponding description of cmake_path(COMPARE),
which had the same inaccuracy.

Fixes: #23758
2022-07-24 16:03:20 +10:00
Craig Scott
4f7a0c25d2 Help: Document BYPASS_PROVIDER keyword for find_package()
Fixes: #23669
2022-07-23 21:43:49 +10:00
Craig Scott
76370e06b8 Help: Minor grammar fix for the Using Dependencies manual 2022-07-23 21:30:53 +10:00
Brad King
70c26a65b7 Help: Clarify execute_process OS-specific command-line encoding
Issue: #23557
2022-07-20 11:46:23 -04:00
Brad King
de8df25a20 Merge topic 'doc-example-target-sources' into release-3.24
c7c5a50b97 Help: Add missing PRIVATE keyword to target_sources() example

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7490
2022-07-20 08:45:53 -04:00
Brad King
d6db6ffae8 Merge topic 'doc-restructure-genex-manual' into release-3.24
d6af935467 Help: Add Whitespace And Quoting section to genex manual
044c22e121 Help: Restructure reference sections of genex manual
3666486c28 Help: Move reference content to its own section at end of genex manual
22f8a626c3 Help: Add missing versionadded for CUDA genexes
c57c3dbbec Help: Genex manual typo, grammar, formatting, wording fixes
2b102438f8 Help: Boolean genex conditions must evaluate to 1 or 0
d2cb36861f Help: Fix cross-references in genex manual that linked to wrong genexes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7479
2022-07-20 08:44:58 -04:00
Craig Scott
c7c5a50b97 Help: Add missing PRIVATE keyword to target_sources() example
Fixes: #23746
2022-07-20 20:19:37 +10:00
Craig Scott
d6af935467 Help: Add Whitespace And Quoting section to genex manual 2022-07-19 21:13:54 +10:00
Craig Scott
044c22e121 Help: Restructure reference sections of genex manual
As part of the general restructuring, also move the notes of a more
introductory nature out of what was the "String-Valued Generator
Expressions" section and up to the dedicated Introduction. This gives
the reader a bit more of a foundation before they get to the heavier
detail of the reference section.
2022-07-19 21:13:52 +10:00
Craig Scott
3666486c28 Help: Move reference content to its own section at end of genex manual
This involves moving the Debugging section up to just after the
introduction. The content of that section is unchanged.
The reference section then follows, and since it is a dedicated
section, all existing sections thereunder were demoted one level.

Move the note about deviating from the usual CMake docs convention
of using angle brackets around placeholders out of the Introduction
and to the start of the reference section. No placeholders are used
before that point, so that content no longer belongs in the introduction.
Apply some minor wording cleanup to the content in the Introduction
that remained.
2022-07-19 21:11:27 +10:00
Craig Scott
22f8a626c3 Help: Add missing versionadded for CUDA genexes 2022-07-19 17:25:23 +10:00
Craig Scott
c57c3dbbec Help: Genex manual typo, grammar, formatting, wording fixes 2022-07-19 16:45:04 +10:00
Craig Scott
2b102438f8 Help: Boolean genex conditions must evaluate to 1 or 0 2022-07-19 16:04:56 +10:00
Craig Scott
d2cb36861f Help: Fix cross-references in genex manual that linked to wrong genexes 2022-07-19 14:18:01 +10:00
Craig Scott
f585c61667 Help: LINK_LIBRARIES_ONLY_TARGETS also checks injected direct libraries
The INTERFACE_LINK_LIBRARIES_DIRECT property can add direct
link dependencies to the target at the head of the dependency chain.
The checks associated with LINK_LIBRARIES_ONLY_TARGETS also apply
to these link items, but the documentation wasn't updated to reflect
this when the INTERFACE_LINK_LIBRARIES_DIRECT support was added.
2022-07-10 18:15:22 +10:00
Craig Scott
6b103dd58a Help: Fix wrong property name INTERFACE_PROPERTY_LINK_DIRECT
This is the name of a placeholder used for some documentation in
`Help/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT.txt` that is included in
multiple documents.  During development iterations, much of the content
was moved to just `Help/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT.rst`,
but the placeholder was not correctly replaced by its property name.
2022-07-08 09:19:54 -04:00
Marc Chevrier
913ea78d7a Genex LINK_LIBRARY and LINK_GROUP: check supported properties
Refines check for properties supporting these genex.
Enhance error message.

Fixes: #23699
2022-07-06 16:15:43 +02:00
Brad King
a5a442d9e5 Merge topic 'doc-cpack-archive-component' into release-3.24
5fa14ddecb Help: Document that CPack Archive Generator <component> is all uppercase

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7438
2022-07-05 17:33:54 -04:00
Brad King
7de107ca56 Merge topic 'doc-TARGET_FILE-depends' into release-3.24
a4f0321ddc Help: Document $<TARGET_FILE> dependency behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7431
2022-07-05 17:32:27 -04:00
David Faure
5fa14ddecb Help: Document that CPack Archive Generator <component> is all uppercase 2022-07-05 11:36:29 -04:00
Robert Maynard
a4f0321ddc Help: Document $<TARGET_FILE> dependency behavior
Fixes: #23686
2022-07-05 11:31:23 -04:00
Michael Hirsch
ee6b429498 Help: Clarify that option() is a boolean
Also describe `option()` behavior in project vs. script mode.
2022-07-05 11:05:54 -04:00
Craig Scott
703900d166 Help: Mention CMP0131 in LINK_LIBRARIES docs 2022-07-05 11:08:56 +10:00
Craig Scott
2a336d8554 Merge topic 'doc-LINK_LIBRARY_genex' into release-3.24
d185f7c0a8 Help: Rework $<LINK_LIBRARY>, $<LINK_GROUP> and related docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7413
2022-07-03 00:50:44 -04:00
Craig Scott
d185f7c0a8 Help: Rework $<LINK_LIBRARY>, $<LINK_GROUP> and related docs
These changes restructure the docs to improve readability and flow,
correct grammar and typos, and fix errors and inconsistencies in
some of the examples.

Fixes: #23684
2022-07-03 14:34:41 +10:00
Brad King
f0740662a6 Merge topic 'depguide-fetchcontent-versioning' into release-3.24
8d8d8ac772 Help: Mark features new to 3.24 in Using Dependencies Guide

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7411
2022-06-28 09:21:13 -04:00
Da Quexian
3fac3d365d Help: Mention CMP0126 in CMAKE_OSX_* variable documentation
Signed-off-by: Da Quexian <daquexian566@gmail.com>
2022-06-27 13:36:13 -04:00
FeRD (Frank Dana)
8d8d8ac772 Help: Mark features new to 3.24 in Using Dependencies Guide
The sections on FetchContent's FIND_PACKAGE_ARGS and on
Dependency Providers only apply to CMake 3.24+, so add
versionadded markers at the start of both sections.
2022-06-27 13:26:46 -04:00
Brad King
0bc85cced5 Merge topic 'rel-win-arm64' into release-3.24
6108ced377 Help: Add release note for windows-arm64 binary

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7404
2022-06-23 09:25:58 -04:00
Brad King
fd83847b14 Merge topic 'vs-compile-batching' into release-3.24
9a0a94fdaa VS: Add variable to to turn off Visual Studio compile batching
a7ebb73929 Help: Improve formatting in VS_NO_COMPILE_BATCHING docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7405
2022-06-23 09:23:55 -04:00
Brad King
9a0a94fdaa VS: Add variable to to turn off Visual Studio compile batching
Extend the change from commit b764c7c273 (VS: Add property to turn off
Visual Studio compile batching, 2022-02-07, v3.24.0-rc1~710^2) by
adding a variable to initialize the property on every target.

Issue: #23179
Fixes: #23639
2022-06-22 12:07:03 -04:00
Brad King
a7ebb73929 Help: Improve formatting in VS_NO_COMPILE_BATCHING docs 2022-06-22 11:59:55 -04:00
Brad King
6108ced377 Help: Add release note for windows-arm64 binary
Since commit 41ea4d4de8 (ci: Rebuild Qt 6.3.0 windows-arm64 dependency
with LLVM/Clang, 2022-06-17) the release binary package now includes a
working `cmake-gui`, and is ready for general usage.

Fixes: #21902
2022-06-22 11:47:42 -04:00
Brad King
7e4adcac82 FindPkgConfig: Revert "Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET."
Revert commit 020976d637 (FindPkgConfig: Populate
_STATIC_LINK_LIBRARIES. Add STATIC_TARGET., 2021-12-31,
v3.24.0-rc1~105^2).  Several regressions have been reported.
Revert the feature pending further discussion and design work.

Issue: #21714
Fixes: #23642
2022-06-22 10:13:00 -04:00
Michael Hirsch
75aedb1204 Help: Clarify PROJECT_IS_TOP_LEVEL behavior w.r.t. add_subdirectory
Clarify documentation added by commit 2df4badc5f (Help: Note
PROJECT_IS_TOP_LEVEL behavior w.r.t. ExternalProject, 2021-07-05,
v3.21.0-rc3~1^2).

Fixes: #23511
2022-06-14 08:06:02 -04:00
Brad King
012eb49263 Merge topic 'fetchcontent-global-targets' into release-3.24
f19b48e0b8 FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
1305bade56 Help: Add missing version directive for find_package() GLOBAL keyword

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7347
2022-06-11 06:13:57 -04:00
Craig Scott
ce0be99b30 Help: Minor cleanups of 3.24 release notes 2022-06-10 11:12:20 -04:00
Craig Scott
35ecc6e39b Help: Trivial grammar fixup in LINK_GROUPS genex 2022-06-10 11:12:20 -04:00
Brad King
ec08bc1752 CheckIPOSupported: Compile check using flags of calling project
Forward `CMAKE_<LANG>_FLAGS` and `CMAKE_<LANG>_FLAGS_DEBUG` from the
calling project into the test project.  The set of flags may affect the
availability of IPO support.  Since this may change the result of the
check for existing projects, add a policy for compatibility.

This was discovered after commit 5fcadc481e (MSVC: Default to -ZI
instead of /Zi for x86 and x64, 2022-05-24) introduced policy CMP0138 to
switch our default for MSVC's debug info flag.  The `-ZI` flag is
incompatible with the `-GL` flag used for IPO, so CMP0138 was reverted
pending future work on an alternative solution.  Re-use the CMP0138
policy number for this change to CheckIPOSupported instead.

Fixes: #23607
2022-06-10 09:12:43 -04:00