Commit Graph

55002 Commits

Author SHA1 Message Date
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
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
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
Brad King 274e3fb7f4 Merge topic 'FindHDF5-fix-windows-hl-implib-query' into release-3.22
6f830c5c38 FindHDF5: fix variable name when querying `hdf5_hl`'s implib

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6697
2021-11-04 09:04:41 -04:00
Brad King 7456127e01 Merge topic 'GNUtoMS-vs2022' into release-3.22
571a795d2f GNUtoMS: Add search path for VS 2022 environment scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6695
2021-11-04 09:03:22 -04:00
Brad King b15ac6416c Merge topic 'ninja-pdb-dir' into release-3.22
73b84db62d Ninja: Fix creation of Windows import library directory
bd36735f65 cmNinjaTargetGenerator: Replace "their" with "there" in comment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6694
2021-11-04 09:02:01 -04:00
Brad King d18ba5b226 Merge branch 'doc-TARGET_RUNTIME_DLLS' into release-3.21
Merge-request: !6700
2021-11-03 16:18:29 -04:00
Brad King 001870d451 Help: Clarify TARGET_RUNTIME_DLLS behavior on imported targets
This generator expression does not report the locations of `.dll`
files on imported targets with the `UNKNWON` type, since their
`IMPORTED_LOCATION` refers to the import library and not the DLL.

Fixes: #22845
2021-11-03 16:17:17 -04:00
Brad King 78782cc7dc cmGlobalVisualStudio8Generator: Refactor SetGeneratorPlatform
Re-organize the method to make room for additional
`CMAKE_GENERATOR_PLATFORM` processing.
2021-11-03 15:06:25 -04:00
Ben Boeckel 247f1149e1 FindHDF5: clear language-specific libraries list before discovery 2021-11-03 13:24:30 -04:00
Ben Boeckel f56963cf05 FindHDF5: clear library output variables at the top of the module
This avoids accumulation of `HDF5_LIBRARIES` results when calling
`find_package(HDF5)` multiple times within a single scope.
2021-11-03 13:05:18 -04:00
Ben Boeckel 6f830c5c38 FindHDF5: fix variable name when querying hdf5_hl's implib
Introduced in 4150048a3b (FindHDF5: unset some variables, 2017-07-24).
2021-11-03 11:29:20 -04:00
Brad King 6202af6092 Merge branch 'msvc-cxx-modules-scanDependencies' into release-3.21
Merge-request: !6696
2021-11-03 10:51:37 -04:00
Brad King 9ed1d7bee6 cmScanDepFormat: Accept P1689r4 files with version 1
VS 2022's `cl` 19.30 has a `-scanDependencies` option that produces the
P1689r4 format.  It reports the "version" field with value "1".
2021-11-03 10:50:54 -04:00
Brad King f06f74ede7 Merge topic 'help_cmake_lang_extensions_default' into release-3.22
e9976c8827 Help: Better explain CMAKE_<LANG>_EXTENSIONS_DEFAULT

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6686
2021-11-03 10:39:04 -04:00
Brad King 28d63320f1 Merge topic 'nvhpc-isystem' into release-3.22
92624714c4 NVHPC: Support SYSTEM include directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6691
2021-11-03 10:37:54 -04:00
Brad King ac5932c9e4 Merge branch 'GNUtoMS-vs2022' into release-3.21
Merge-request: !6695
2021-11-03 10:34:05 -04:00
Brad King 571a795d2f GNUtoMS: Add search path for VS 2022 environment scripts
Extend the logic from commit 08c5b3eff0 (GNUtoMS: Add search path for VS
2019 environment scripts, 2020-01-09, v3.16.3~15^2) to consider VS 2022
paths too.

Fixes: #22847
2021-11-03 10:32:14 -04:00