Commit Graph

33961 Commits

Author SHA1 Message Date
Alexander Neundorf
df58dbb0e9 VS: Add CMake input files to ZERO_CHECK
Add all cmake input files to the `ZERO_CHECK` project.  Place files
under `CMAKE_SOURCE_DIR` in a folder structure matching the directory
structure.  This way they are easier to find, and Visual Studio does not
close them when reloading the project.

Fixes: #24557
2023-04-25 17:35:39 -04:00
Alexander Neundorf
659e9ae937 cmGlobalVisualStudio8Generator: Collect CMake input files earlier 2023-04-25 16:48:41 -04:00
Brad King
827d5b75d4 Merge topic 'CMake-uses-cmList-class'
e08ba229ee CMake code rely on cmList class for CMake lists management (part. 1)
51b0d45d91 cmExpandList and cmExpandLists rely on cmList class

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8423
2023-04-25 09:52:40 -04:00
Kitware Robot
26087d558f CMake Nightly Date Stamp 2023-04-25 00:01:06 -04:00
Marc Chevrier
e08ba229ee CMake code rely on cmList class for CMake lists management (part. 1) 2023-04-24 10:41:10 +02:00
Kitware Robot
3c952e97e2 CMake Nightly Date Stamp 2023-04-24 00:01:26 -04:00
Marc Chevrier
51b0d45d91 cmExpandList and cmExpandLists rely on cmList class 2023-04-23 14:48:36 +02:00
Kitware Robot
ec4331d7b5 CMake Nightly Date Stamp 2023-04-23 00:01:08 -04:00
Marc Chevrier
59c674917b Merge topic 'Link_instruction_in_RSP'
e0364eb20d Add support of CMAKE_<LANG>_USE_RESPONSE_FILE_FOR_LIBRARIES variable.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8409
2023-04-22 04:29:30 -04:00
Kitware Robot
79d0deccc7 CMake Nightly Date Stamp 2023-04-22 00:01:07 -04:00
Kitware Robot
3cf8206412 CMake Nightly Date Stamp 2023-04-21 00:01:07 -04:00
Marc Chevrier
c36f03bfec Merge topic 'GenEx-list'
31675964e7 GenEx LIST: list operations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8410
2023-04-20 11:02:14 -04:00
Kitware Robot
4862d3e90d CMake Nightly Date Stamp 2023-04-20 00:01:06 -04:00
Kitware Robot
bd94194334 CMake Nightly Date Stamp 2023-04-19 00:01:11 -04:00
Kitware Robot
79499f9e71 CMake Nightly Date Stamp 2023-04-18 00:01:06 -04:00
Craig Scott
b79c444e53 Merge topic 'export-file-set-old-cmake-versions'
42e5be8cef install(EXPORT): Fall back to set_property(APPEND) for FILE_SET

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8408
2023-04-17 05:58:05 -04:00
Kitware Robot
911b285640 CMake Nightly Date Stamp 2023-04-17 00:01:25 -04:00
Marc Chevrier
31675964e7 GenEx LIST: list operations
Fixes: #24550, #24547
2023-04-16 12:00:20 +02:00
Kitware Robot
fee5bd296b CMake Nightly Date Stamp 2023-04-16 00:01:06 -04:00
Kitware Robot
ef51f3007f CMake Nightly Date Stamp 2023-04-15 00:01:08 -04:00
Kitware Robot
0991023c30 CMake Nightly Date Stamp 2023-04-14 00:01:08 -04:00
Matthieu Ribiere
e0364eb20d Add support of CMAKE_<LANG>_USE_RESPONSE_FILE_FOR_LIBRARIES variable.
We add a function in cmNinjaNormalTargetGenerator.cxx to check for the state of the option (as it was done for Makefile). This will be checked to add or not the `$LINK_PATH` and `$LINK_LIBRARIES` to the Ninja file.
The default behavior is adding those libraries.
Fixes: #24681
2023-04-13 11:10:00 +02:00
Kitware Robot
cf6a580e89 CMake Nightly Date Stamp 2023-04-13 00:01:07 -04:00
Kyle Edwards
42e5be8cef install(EXPORT): Fall back to set_property(APPEND) for FILE_SET
FILE_SET was introduced in CMake 3.23, so install(EXPORT) puts it
behind a version gate. However, this results in the include directories
not being picked up by older versions of CMake. Fall back to
set_property(APPEND) for versions of CMake older than 3.23.

Fixes: #24787
2023-04-12 09:33:24 -04:00
Kitware Robot
e256e35daa CMake Nightly Date Stamp 2023-04-12 00:01:08 -04:00
Kitware Robot
6c11f7e4a8 CMake Nightly Date Stamp 2023-04-11 00:01:07 -04:00
Craig Scott
e245b4df75 Merge topic 'automoc-macro-names'
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
2023-04-10 18:06:06 -04:00
Craig Scott
453cf8a196 Merge topic 'ninja-nvhpc-fortran-Werror'
6b58cdd4cf Ninja: Exclude NVHPC -Werror flags during Fortran preprocessing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8393
2023-04-10 17:34:47 -04:00
Kitware Robot
83525bfd7a CMake Nightly Date Stamp 2023-04-10 00:01:51 -04:00
Orkun Tokdemir
c5c3aff1f5 Autogen: Add INTERFACE_AUTOMOC_MACRO_NAMES target property
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
2023-04-09 20:51:15 +10:00
Marc Chevrier
ffd0759c7a Merge topic 'list-command-uses-cmList'
e8c581606d list(): rely on cmList class

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8401
2023-04-09 05:42:59 -04:00
Kitware Robot
c271ee5ba9 CMake Nightly Date Stamp 2023-04-09 00:01:06 -04:00
Marc Chevrier
e8c581606d list(): rely on cmList class
Fixes: #24549
2023-04-08 12:55:42 +02:00
Kitware Robot
9080ea4e6c CMake Nightly Date Stamp 2023-04-08 00:01:06 -04:00
Kitware Robot
9af53e9bcf CMake Nightly Date Stamp 2023-04-07 00:01:10 -04:00
Brad King
0dcb545602 Merge topic 'cmList-class'
72d116ee68 GenEx: list oriented genexes use cmList class
9f60f19ee9 cmList: CMake list implementation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8375
2023-04-06 09:16:31 -04:00
Brad King
fbdb509efe Merge topic 'vs-sdk-selection'
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
2023-04-06 09:13:31 -04:00
Kitware Robot
857dc67d54 CMake Nightly Date Stamp 2023-04-06 00:01:06 -04:00
Orkun Tokdemir
69cf9700e6 Autogen: Defer setup until Generate step
It is better to set variables up once all target dependencies are known.
2023-04-05 16:12:16 -04:00
Orkun Tokdemir
7cecb6353e cmGeneratorTarget: Factor out EvaluatedTargetProperty infrastructure
Make it available outside the `cmGeneratorTarget` implementation.
In particular, we will later use it in `cmQtAutoGenInitializer`.
2023-04-05 16:12:15 -04:00
Brad King
2daba01ddf cmGeneratorTarget: Avoid incidental include-what-you-use warning
Avoid `warning: Extra tokens on pragma line` from IWYU.
2023-04-05 16:12:15 -04:00
Brad King
8ecb645934 VS: Select Windows SDK matching WindowsSDKVersion env var
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
2023-04-05 12:06:22 -04:00
Brad King
f90c8ab54e VS: Select latest available Windows SDK version by default
Add policy `CMP0149` to stop preferring SDKs exactly matching
`CMAKE_SYSTEM_VERSION` over the latest SDK.

Fixes: #16202
2023-04-05 12:06:22 -04:00
Brad King
b512c53d43 VS: Add support for setting WindowsTargetPlatformVersion to 10.0
VS 2019 and above support this value to select a SDK version
automatically.

Fixes: #21403
2023-04-05 12:06:22 -04:00
Brad King
2f3d945f83 VS: Add CMAKE_GENERATOR_PLATFORM field to control Windows SDK selection
Add a `version=` field to explicitly control the SDK version selection
without relying on `CMAKE_SYSTEM_VERSION`.

Fixes: #16713
2023-04-05 12:06:22 -04:00
Brad King
f0a67b6291 VS: Parse comma-separated fields from CMAKE_GENERATOR_PLATFORM 2023-04-05 12:06:22 -04:00
Brad King
e259063b0a VS: Defer Windows SDK selection until CMAKE_GENERATOR_PLATFORM is known
Prepare to teach `CMAKE_GENERATOR_PLATFORM` to affect SDK selection.
2023-04-05 12:06:22 -04:00
Brad King
8499374c6a VS: Simplify logic to require SDK for Windows Store
Revise logic added by commit d7e863c1c1 (VS: Do not fail on Windows 10
with VS 2015 if no SDK is available, 2016-01-21, v3.4.3~1^2) to make the
requirement decision locally and simplify signatures.
2023-04-05 12:06:21 -04:00
Marc Chevrier
72d116ee68 GenEx: list oriented genexes use cmList class
Fixes: #24654
2023-04-05 17:55:04 +02:00
Marc Chevrier
9f60f19ee9 cmList: CMake list implementation
Fixes: #24548
2023-04-05 17:54:55 +02:00