Commit Graph

31569 Commits

Author SHA1 Message Date
Brendan O'Rourke 144e8dcf40 cmOutputConverter: Quote hyphens in response files
Fixes: #20070
2021-11-08 12:14:53 -06:00
Brad King befcd6ea1d Merge topic 'cpack-drop-osxx11'
4ef974e6cb CPack: Remove undocumented deprecated OSXX11 generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6704
2021-11-08 12:40:00 -05:00
Brad King c0e23058f6 Merge topic 'vs-framework-version'
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:48 -05:00
Kitware Robot 8e752379ff CMake Nightly Date Stamp 2021-11-08 00:01:12 -05:00
Kitware Robot df2ffa30a7 CMake Nightly Date Stamp 2021-11-07 00:02:07 -04: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
Kitware Robot 30c0bc8cd7 CMake Nightly Date Stamp 2021-11-06 00:02:08 -04:00
Brad King 4ef974e6cb CPack: Remove undocumented deprecated OSXX11 generator
This CPack generator was never documented, and has been deprecated since
commit 2ed00e8ef8 (CPack: Deprecate OSXX11 generator, 2020-01-31,
v3.17.0-rc1~45^2).

Issue: #20235
2021-11-05 12:39:22 -04:00
Brad King e479650b41 Merge topic 'nmc-cross-config-target-deps'
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:28 -04:00
Brad King 65ba25c2f8 Merge topic 'source-cleanup'
b86b6aaa4a Source: Cleanup and simplify some code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6673
2021-11-05 10:06:21 -04:00
Kitware Robot 3fe938801a CMake Nightly Date Stamp 2021-11-05 00:01:08 -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
Rose b86b6aaa4a Source: Cleanup and simplify some code 2021-11-04 09:20:48 -04:00
Brad King 10bebbf7a8 Merge topic 'msvc-cxx-modules-scanDependencies'
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:40 -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 30be83c8a2 Merge topic 'ninja-pdb-dir'
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:02 -04:00
Kitware Robot 909f435b93 CMake Nightly Date Stamp 2021-11-04 00:01:07 -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
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 6251239a1c Merge topic 'C++-headers'
6f4727aaa0 Source: Replace C headers with C++ ones

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6657
2021-11-03 10:41:11 -04:00
Brad King 73b84db62d Ninja: Fix creation of Windows import library directory
Call `EnsureParentDirectoryExists` with our internal representation
of the path, not the representation quoted/encoded for Ninja.

Fixes: #22841
2021-11-03 10:08:48 -04:00
Brad King bd36735f65 cmNinjaTargetGenerator: Replace "their" with "there" in comment 2021-11-03 10:08:47 -04:00
Kitware Robot 47846c5063 CMake Nightly Date Stamp 2021-11-03 00:02:13 -04:00
Rose 6f4727aaa0 Source: Replace C headers with C++ ones
In applicable areas only, of course.
2021-11-02 14:45:29 -04:00
Brad King 4e84a4763d Merge topic 'support_nvcc_native_flag'
14d8a2768d CUDA: Support nvcc 11.5 new -arch=all|all-major flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6652
2021-11-02 08:55:13 -04:00
Brad King 3b1f23b789 Merge topic 'update-kwsys'
37c2f722fc find_program: Explicitly skip WindowsApps/python*.exe app installer links
d8b5b0c7e4 Merge branch 'upstream-KWSys' into update-kwsys
e9ab6eeeb5 KWSys 2021-11-01 (572f2a65)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6679
2021-11-02 08:51:34 -04:00
Kitware Robot fed54aa362 CMake Nightly Date Stamp 2021-11-02 00:02:10 -04:00
Brad King e06f186c20 Merge topic 'vs-instance'
195d47e213 VS: Allow CMAKE_GENERATOR_INSTANCE to specify portable instance
ec8d37b3b1 VS: Support version specification in CMAKE_GENERATOR_INSTANCE
8e6d930e8c VS: Parse comma-separated fields from CMAKE_GENERATOR_INSTANCE
5d1f377737 cmVSSetupHelper: Factor out helper to load MSVC toolset version
006fe1e919 cmVSSetupHelper: Convert wide to narrow strings early
f5dfc788b8 cmVSSetupHelper: Drop unused InstanceId field
3213e2595d cmVSSetupHelper: Drop unused ullVersion field
152f9978dd Help: De-duplicate VS instance selection documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6651
2021-11-01 16:24:54 -04:00
Robert Maynard 14d8a2768d CUDA: Support nvcc 11.5 new -arch=all|all-major flags 2021-11-01 14:57:58 -04:00
Brad King 4c68a0e71a Merge topic 'envmod-test-modifying-existing'
9c4d6404eb Tests/Environment: also test modifying ambient values
7d52d48a32 cmCTestRunTest: get the default value from the environment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6682
2021-11-01 09:08:11 -04:00
Brad King 562ee8a50b Merge topic 'misc-messages'
dbe33b20bd install: Add context to {PUBLIC,PRIVATE}_HEADER/RESOURCE DESTINATION warnings
1a25f057da cmComputeLinkInformation: Add context to warning about linking a directory
4862f3b2c8 cmcmd: Write progress and tar errors directly to stderr
efc6c23a47 bootstrap: Do not declare cmSystemTools functions that are not implemented

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6680
2021-11-01 09:07:13 -04:00
Brad King 37c2f722fc find_program: Explicitly skip WindowsApps/python*.exe app installer links
Windows provide a "python" executable like this:

    %USERPROFILE%\AppData\Local\Microsoft\WindowsApps\python.exe

It is actually a Windows app exec link.  If it points to an app
installer, avoid mistaking it for a working Python.
2021-11-01 09:03:51 -04:00
Brad King d8b5b0c7e4 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2021-11-01 (572f2a65)
2021-11-01 09:03:45 -04:00
Kitware Robot f13b8a52ee CMake Nightly Date Stamp 2021-11-01 00:01:12 -04:00
Kitware Robot 56717f4c3c CMake Nightly Date Stamp 2021-10-31 00:02:09 -04:00
Kitware Robot 22f3892f9a CMake Nightly Date Stamp 2021-10-30 00:02:17 -04:00
Brad King 195d47e213 VS: Allow CMAKE_GENERATOR_INSTANCE to specify portable instance
Previously the `CMAKE_GENERATOR_INSTANCE` value was used only to filter
the instances reported by the Visual Studio Installer tool.  If the
specified install location is not known to the VS Installer, but the
user provided a `version=` field, check for the installation directly
on disk.

Fixes: #21639, #22197
2021-10-29 11:52:58 -04:00
Brad King ec8d37b3b1 VS: Support version specification in CMAKE_GENERATOR_INSTANCE 2021-10-29 11:52:58 -04:00
Brad King 8e6d930e8c VS: Parse comma-separated fields from CMAKE_GENERATOR_INSTANCE 2021-10-29 11:52:58 -04:00
Brad King 5d1f377737 cmVSSetupHelper: Factor out helper to load MSVC toolset version 2021-10-29 11:52:58 -04:00
Brad King 006fe1e919 cmVSSetupHelper: Convert wide to narrow strings early 2021-10-29 11:52:58 -04:00
Brad King f5dfc788b8 cmVSSetupHelper: Drop unused InstanceId field
Minimize the amount of information needed about a VS instance.
2021-10-29 11:52:57 -04:00
Brad King 3213e2595d cmVSSetupHelper: Drop unused ullVersion field
The field has not been used since commit 3fd65f5ca6 (VS: Compare VS
instance versions as strings, 2021-06-17, v3.21.0-rc1~11^2~1).
2021-10-29 11:52:57 -04:00
Ben Boeckel 7d52d48a32 cmCTestRunTest: get the default value from the environment
This only works due to some assumptions about how the `ENVIRONMENT`
property is processed. Comments have been added to notify anyone
modifying the behavior about where to look.

Fixes: #22819
2021-10-29 10:54:02 -04:00
Brad King 7a31aeffe8 Merge topic 'ifw-archive-format'
62ef2729ee CPackIFW: add support for archive format and compression level options

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6666
2021-10-29 08:54:23 -04:00
Brad King 0486f9e56e Merge topic 'swift-win32-property'
c782f140d4 Swift: Ignore WIN32_EXECUTABLE property outside of Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6658
2021-10-29 08:53:26 -04:00