Commit Graph

55017 Commits

Author SHA1 Message Date
Brad King
acc14edd70 libuv: Backport MinGW-w64 compilation fix to CMake 3.22 branch
Backport libuv commit `3e90bc76` (build: fix build failures with MinGW
new headers, 2021-11-03).

Fixes: #22916
2021-11-16 11:58:45 -05:00
Brad King
40ae565832 Merge topic 'doc-tests-labels-dynamic' into release-3.22
250acbb099 Help: Improve cross-referencing of test LABELS and related features
a77bdefa3e Help: Add missing version details for Additional Test Measurements

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6726
2021-11-15 09:24:41 -05:00
Brad King
ca4b81d69f Merge topic 'doc-gtest_discover_tests-filter' into release-3.22
1ef54f3163 Help: Clarify meaning of filter expression in gtest_discover_tests()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6727
2021-11-15 09:21:51 -05:00
Craig Scott
1ef54f3163 Help: Clarify meaning of filter expression in gtest_discover_tests() 2021-11-14 16:49:23 +11:00
Craig Scott
250acbb099 Help: Improve cross-referencing of test LABELS and related features 2021-11-13 20:45:05 +11:00
Craig Scott
a77bdefa3e Help: Add missing version details for Additional Test Measurements 2021-11-13 20:44:05 +11:00
Brad King
fed67fa40d CMake 3.22.0-rc3 v3.22.0-rc3 2021-11-12 09:15:07 -05:00
Brad King
9740573673 Merge topic 'cmp0128-fixup' into release-3.22
e47dfce75d CMP0128: Enable/disable extensions if standard same as default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6723
2021-11-12 09:02:40 -05:00
Brad King
5154dd2450 Merge branch 'release-3.21' into release-3.22 2021-11-12 09:00:05 -05:00
Brad King
bb48c75817 Merge branch 'release-3.20' into release-3.21 2021-11-12 08:59:43 -05:00
Brad King
c1fe4f68e4 Merge topic 'IntelLLVM-Fortran-frontend-variant' into release-3.22
b1edd6e7c7 Fortran: Save frontend variant persistently for IntelLLVM

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6718
2021-11-12 08:58:57 -05:00
Brad King
031ba22de2 Merge topic 'ti-armcl-unknown-arg-warning' into release-3.22
220f78e253 TI: Recognize invalid compiler option warning during try_compile()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6705
2021-11-12 08:55:14 -05:00
Brad King
ad85ab206e Merge topic 'ci-vs2022' into release-3.22
190d2b5d55 gitlab-ci: Update Windows jobs to VS 2022
ac32794983 gitlab-ci: Re-organize Windows job tags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6724
2021-11-12 08:53:21 -05:00
Raul Tambre
e47dfce75d CMP0128: Enable/disable extensions if standard same as default
This was intended to be part of the initial MR (!6177), but accidentally went
missing when debugging nightly failures on less common systems. Noticed during
!6711 review as the comment about this behaviour didn't match the code.

Documentation for CMP0128 is updated to remove a false case and note the two
cases related to this.

Fixes #22224.
2021-11-11 21:55:04 +02:00
Brad King
190d2b5d55 gitlab-ci: Update Windows jobs to VS 2022 2021-11-11 13:12:27 -05:00
Brad King
ac32794983 gitlab-ci: Re-organize Windows job tags
Name the tag groups based on the VS version needed.
2021-11-11 12:51:32 -05:00
Brad King
521c49eebc Merge branch 'IntelLLVM-Fortran-frontend-variant' into release-3.21
Merge-request: !6718
2021-11-11 11:24:01 -05:00
Brad King
09ef62fd98 Merge branch 'IntelLLVM-Fortran-frontend-variant' into release-3.20
Merge-request: !6718
2021-11-11 11:23:35 -05:00
William R. Dieter
b1edd6e7c7 Fortran: Save frontend variant persistently for IntelLLVM
Since commit a90d2a9eed (IntelLLVM: Add support for Intel LLVM-based
compilers, 2020-11-02, v3.20.0-rc1~89^2~20), our IntelLLVM compiler
support populates `CMAKE_Fortran_COMPILER_FRONTEND_VARIANT`.  However,
the frontend variant was not stored in `CMakeCompilerFortran.cmake`.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-11-11 11:22:07 -05:00
Craig Scott
220f78e253 TI: Recognize invalid compiler option warning during try_compile()
Fixes: #22866
2021-11-11 10:53:31 -05:00
Brad King
2ad300ebd7 Merge branch 'release-3.21' into release-3.22 2021-11-11 10:46:12 -05:00
Brad King
e2ceaec991 Merge topic 'IntelLLVM-no-xilink' into release-3.22
48f29b5805 IntelLLVM: Use MSVC linker with MSVC frontend variant

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6719
2021-11-11 10:45:19 -05:00
Brad King
b0ee34373a Merge branch 'IntelLLVM-no-xilink' into release-3.21
Merge-request: !6719
2021-11-10 13:43:41 -05:00
William R. Dieter
48f29b5805 IntelLLVM: Use MSVC linker with MSVC frontend variant
The Intel compiler (pre-LLVM) expected xilink.exe and had special logic to
set xilink.exe.  The newer LLVM-based compiler does not want xilink.exe.
link.exe works better for host code, and is the default, so change
the matching condition such that the old compiler matches (and gets
xilink.exe) and the new compiler gets the default link.exe it expects.

A better solution will be to use the compiler as the linker.  A future
change will switch to compiler as linker by default, but that fix needs
more validation.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-11-10 13:41:06 -05:00
Craig Scott
0b8d692697 Merge topic 'doc-CMP0128' into release-3.22
8371056fbb Help: Correct inaccuracies in wording for CMP0128

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6711
2021-11-10 05:47:33 -05:00
Brad King
95ea17dfd3 Merge topic 'nmc-reuse-from' into release-3.22
244550997f PCH: Fixed Ninja Multi-Config and REUSE_FROM for MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6713
2021-11-09 07:53:18 -05:00
Brad King
2eb96cbe41 Merge topic 'msvc-pch-reuse-config' into release-3.22
95fa27d94d PCH: Fix REUSE_FROM when Debug and RelWithDebInfo configs differ

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6712
2021-11-09 07:52:29 -05:00
Brad King
44849f14b0 Merge topic 'doc-preset-inheritance' into release-3.22
6dc6412477 Help: Use stronger wording in rule about preset inheritance

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6710
2021-11-09 07:51:35 -05:00
Yonggang Luo
6dc6412477 Help: Use stronger wording in rule about preset inheritance 2021-11-08 17:00:08 -05:00
Craig Scott
8371056fbb Help: Correct inaccuracies in wording for CMP0128 2021-11-09 07:37:09 +11:00
Brad King
2b9b64269f Merge topic 'vs-framework-version' into release-3.22
d51246c662 VS: Default TargetFrameworkVersion to v4.7.2 for VS 2022
f97f8537f3 VS: Model a default target framework
e40cedddc0 cmVisualStudio10TargetGenerator: Refactor target framework selection
78782cc7dc cmGlobalVisualStudio8Generator: Refactor SetGeneratorPlatform

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6699
2021-11-08 12:38:47 -05:00
Brad King
5f215253a8 Merge topic 'doc-CUDA_STANDARD' into release-3.22
84667a6f3c Help: Clarify valid versus supported values for CUDA_STANDARD

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6707
2021-11-08 12:36:36 -05:00
Cristian Adam
244550997f PCH: Fixed Ninja Multi-Config and REUSE_FROM for MSVC
The copy_idb_pdb.cmake script would be executed for every configuration
for all configurations.

Debug would still want to get the RelWithDebInfo files, and the other
way around.
2021-11-08 18:16:36 +01:00
Cristian Adam
95fa27d94d PCH: Fix REUSE_FROM when Debug and RelWithDebInfo configs differ
If the Debug configuration contains `/ZI` but the RelWithDebInfo doesn't
then the copy_pdb_idb.cmake script will cause problems due to the fact
that it was common for both configurations but they are incompatible
with each other.
2021-11-08 16:51:18 +01:00
Craig Scott
e131e31e25 Merge topic 'doc-PKG_CONFIG_ARGN' into release-3.22
76c0281421 Help: Clarify how PKG_CONFIG env var initializes cache vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6706
2021-11-08 04:30:07 -05:00
Craig Scott
84667a6f3c Help: Clarify valid versus supported values for CUDA_STANDARD
CMake 3.18 added the first support for any compiler for 17 and 20,
but those were recognized as valid values in earlier CMake versions
even though there was no compiler that supported them. Make this
distinction clear to avoid creating the impression that these standards
could be usefully used before CMake 3.18.

While 98 is recognized as a valid value, it also just gets treated as 03
internally. Document this behavior as well.

Fixes: #22711
2021-11-08 08:17:04 +11:00
Craig Scott
76c0281421 Help: Clarify how PKG_CONFIG env var initializes cache vars
Fixes: #22870
2021-11-07 16:09:42 +11:00
Brad King
d51246c662 VS: Default TargetFrameworkVersion to v4.7.2 for VS 2022
MSBuild defaults to v4.0 but VS 2022 does not install it anymore.
Explicitly specify a newer framework version by default.  Use a
version that VS 2022 installs without selecting a separate component.

Fixes: #22835
2021-11-06 06:08:55 -04:00
Brad King
f97f8537f3 VS: Model a default target framework
Add fields to the VS generator to select a target framework.
Migrate the existing default for VS 12 .NET CF for Windows CE.

Report the values in `CMAKE_VS_*` variables and use them for
the CSharp compiler id project too.

Issue: #22849
2021-11-06 06:08:54 -04:00
Brad King
e40cedddc0 cmVisualStudio10TargetGenerator: Refactor target framework selection
Split the selection from the generation of the resulting element(s).
2021-11-06 06:08:48 -04:00
Brad King
ced697d284 Merge topic 'nmc-cross-config-target-deps' into release-3.22
95f44e00cd Ninja Multi-Config: Fix custom command target dependencies in cross-configs
a883363935 Ninja Multi-Config: Fix internal cross-config target dependency ordering
16e24748c5 Ninja Multi-Config: Fix cross-config custom command dependency tracing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6702
2021-11-05 10:09:27 -04:00
Brad King
2bd4e48486 Merge topic 'CheckLinkerFlag-policies' into release-3.22
58c8d649e1 CheckLinkerFlag: Set policies needed by the implementation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6701
2021-11-05 10:07:57 -04:00
Thomas Dickerson
58c8d649e1 CheckLinkerFlag: Set policies needed by the implementation
The module was added in CMake 3.18 by commit af96c0f4fa
(CheckLinkerFlag: Add module to check validity of linker flags,
2020-05-16, v3.18.0-rc1~103^2), but it is still possible for projects to
use it without setting policies to the 3.18 version level.
2021-11-04 14:01:09 -04:00
Brad King
95f44e00cd Ninja Multi-Config: Fix custom command target dependencies in cross-configs
Generator expressions in a non-cross custom command's `COMMAND`
arguments are evaluated in the command config.  Target-level
dependencies implied by `TARGET_FILE` must therefore be cross
dependencies.  This is important to generate proper target-level
dependencies on the cross-config build statements for the target to
which the custom command is attached.

Fixes: #22855
2021-11-04 13:41:16 -04:00
Brad King
a883363935 Ninja Multi-Config: Fix internal cross-config target dependency ordering
In commit 7abc3d61ac (Ninja Multi-Config: Fix issue with framework
dependencies and Autogen, 2020-02-13, v3.17.0-rc2~18^2) the `cmLinkItem`
comparison operator was updated to order identical strings by the
cross-config boolean.  We need to order identical targets that way too
in order to represent both a cross and non-cross dependency on the same
target.

Issue: #22855
2021-11-04 13:41:13 -04:00
Brad King
16e24748c5 Ninja Multi-Config: Fix cross-config custom command dependency tracing
Process `CMAKE_CROSS_CONFIGS` and friends to properly configure the
generator for cross-config behavior before custom command dependency
tracing.
2021-11-04 12:23:35 -04:00
Brad King
fda948846b Merge branch 'release-3.21' into release-3.22 2021-11-04 12:22:34 -04:00
Brad King
85771bbf00 Merge topic 'doc-TARGET_RUNTIME_DLLS' into release-3.22
001870d451 Help: Clarify TARGET_RUNTIME_DLLS behavior on imported targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !6700
2021-11-04 09:07:47 -04:00
Brad King
753d861a3b Merge topic 'FindHDF5-avoid-duplicate-library-entries' into release-3.22
247f1149e1 FindHDF5: clear language-specific libraries list before discovery
f56963cf05 FindHDF5: clear library output variables at the top of the module

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6698
2021-11-04 09:06:39 -04:00
Brad King
6f995f3825 Merge topic 'msvc-cxx-modules-scanDependencies' into release-3.22
9ed1d7bee6 cmScanDepFormat: Accept P1689r4 files with version 1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6696
2021-11-04 09:05:39 -04:00