Commit Graph

55732 Commits

Author SHA1 Message Date
Brad King
b24da17d9b Merge branch 'release-3.22' 2021-12-16 10:25:55 -05:00
Brad King
3071e27c76 Merge topic 'FindBoost-1.78'
d176ff71c0 FindBoost: Add support for Boost 1.78

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6804
2021-12-16 10:25:54 -05:00
Brad King
cee2d5b1e2 Merge topic 'FindBoost-1.78' into release-3.22
d176ff71c0 FindBoost: Add support for Boost 1.78

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6804
2021-12-16 10:25:53 -05:00
Kitware Robot
2c79dc95a2 CMake Nightly Date Stamp 2021-12-16 00:02:06 -05:00
Brad King
b8e0b40734 Merge branch 'vs-intel-oneapi-toolset' into release-3.21
Merge-request: !6806
2021-12-15 15:58:43 -05:00
William R. Dieter
612c0d49f4 VS: Fix detecting icx.exe with Intel Compiler toolsets newer than 2021
The logic added by commit 7808cbd644 (CMakeDetermineCompilerId: support
Intel DPC++ compiler toolset for VS gen, 2020-12-06, v3.20.0-rc1~330^2)
matches a specific toolset known to be the `icx.exe` compiler, and
assumes all other Intel C++ compilers (that are not DPC++) must be
`icl.exe`.

Since `icx.exe` is officially replacing `icl.exe`, use a regex that
matches the now-fixed set of toolsets known to use `icl.exe`.  Any other
Intel C++ compiler will be assumed to be `icx.exe`.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-12-15 15:56:20 -05:00
Steven Boswell
dff98aa9ca VS: add missing label in C# project-build events 2021-12-15 11:11:48 -07:00
Brad King
1d709ea2f5 cmGeneratorTarget: Propagate backtraces from INTERFACE_LINK_LIBRARIES 2021-12-15 12:29:47 -05:00
Brad King
a84a62e0a7 cmTarget: Record backtraces for INTERFACE_LINK_LIBRARIES 2021-12-15 12:29:44 -05:00
Sumit Bhardwaj
a450cc9533 VS: Set ResolveNugetPackages to false for ALL_BUILD and ZERO_CHECK
When SDK-style targets in a project are restored,
ResolveNugetPackageAssets target is not skipped. However, ALL_BUILD and
ZERO_CHECK do not have any nuget packages to resolve and the build
fails.  This commit sets ResolveNugetPackages to false which skips the
target and the build succeeds.
2021-12-15 12:27:39 -05:00
Sumit Bhardwaj
fa76e5d194 cmVisualStudio10TargetGenerator: Factor out helper for classic MSBuild project
In preparation for generating .Net SDK style project, refactor
cmVisualStudio10TargetGenerato::Generate to split the functionality to
write classic MSBuild project file. This commit only introduces a helper
function and moves the functionality there. A later commit will add
WriteSdkStyleProjectFile, the call to it, and the rest of the .Net
SDK-style changes.
2021-12-15 12:27:06 -05:00
Brad King
d176ff71c0 FindBoost: Add support for Boost 1.78
Update the list of known versions.

Run the command

    cmake -DBOOST_DIR=/path/to/boost_1_78_0 \
      -P Utilities/Scripts/BoostScanDeps.cmake

to extract dependencies from the 1.78.0 source tree.

The dependencies differ from those of 1.77:

* The `log` component no longer depends on `date_time`.

Fixes: #23016
2021-12-15 10:22:53 -05:00
Jukka Aho
ed9ac756e8 FetchContent: Fix typo in documentation 2021-12-15 16:45:27 +02:00
Brad King
029c8f5065 Merge topic 'custom-command-main-dependency'
780341f360 cmCustomCommand: Track main dependency explicitly

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6800
2021-12-15 08:52:52 -05:00
Kitware Robot
7de214699f CMake Nightly Date Stamp 2021-12-15 00:01:12 -05:00
unknown
574b492b47 CUDA: Visual Studio Generator propagates definitions for PTX files
From CUDA 9.0 to CUDA 11.4 the CUDA Visual Studio integration
defines omitted user defines from PTX generation.

With CUDA 11.5 this has been resolved, so we backport the fix
to allow for consistent behavior when using CMake
2021-12-14 14:55:48 -05:00
NAKAMURA Takumi
780341f360 cmCustomCommand: Track main dependency explicitly
Store the main dependency as the first entry in the dependency list plus
a boolean member indicating its existence.  Note that this slightly
changes existing behavior: the main dependency was previously the last
entry of the dependency list.
2021-12-14 10:48:43 -05:00
Brad King
3ad6d09875 Merge branch 'release-3.22' 2021-12-14 09:40:18 -05:00
Brad King
7f6cce63fc Merge topic 'android-system-stl'
38b00f8801 Android: Fix linking android_support for pre-21 system STL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6799
2021-12-14 09:40:17 -05:00
Brad King
29442a4638 Merge topic 'android-system-stl' into release-3.22
38b00f8801 Android: Fix linking android_support for pre-21 system STL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6799
2021-12-14 09:40:16 -05:00
Brad King
25a300b76e Merge topic 'fix-list-transform-invalid-index-crashes'
7dd3e99270 cmListCommand: Handle invalid FOR selector ranges

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6786
2021-12-14 09:36:08 -05:00
Kitware Robot
7a408511bd CMake Nightly Date Stamp 2021-12-14 00:02:09 -05:00
Brad King
cd6b084407 Merge topic 'FindBLAS-openmp-quiet'
8595851d58 FindBLAS: Find OpenMP dependency quietly

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6798
2021-12-13 12:39:03 -05:00
Ryan Prichard
38b00f8801 Android: Fix linking android_support for pre-21 system STL
This typo was introduced in commit 4dca078829 (Android: Link c++abi and
android_support when necessary, 2020-10-29, v3.20.0-rc1~541^2).

Fixes: #23004
2021-12-13 10:43:14 -05:00
Kitware Robot
61ec751d8a CMake Nightly Date Stamp 2021-12-13 00:02:18 -05:00
Kitware Robot
cdaabf45f8 CMake Nightly Date Stamp 2021-12-12 00:01:06 -05:00
Kitware Robot
879f77a195 CMake Nightly Date Stamp 2021-12-11 00:01:12 -05:00
Brad King
8595851d58 FindBLAS: Find OpenMP dependency quietly
The `find_package(OpenMP)` calls added/updated by:

* commit f7f3d8987a (FindBLAS: Add dependency of OpenBLAS on OpenMP for
                     BLA_STATIC, 2020-11-10, v3.20.0-rc1~492^2)
* commit 9ef82d95d8 (FindBLAS: Fix detection of OpenMP as dependency of
                     BLA_STATIC, 2021-04-07, v3.20.1~3^2)

were missing the `QUIET` option.

Fixes: #23000
2021-12-10 09:51:42 -05:00
Brad King
a6fa3fa136 Merge topic 'msbuild-target-inputs-object-depends'
abc6377469 VS: Add OBJECT_DEPENDS as AdditionalDependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6775
2021-12-10 09:15:46 -05:00
Brad King
9f5e0629df Merge topic 'link-iface-usage-reqs-only'
1e49880472 cmGeneratorTarget: Avoid boolean trap in usage requirement lookup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6796
2021-12-10 09:14:53 -05:00
Brad King
114c7e72eb Merge topic 'ci-nmake-jom'
9f5c872ed1 ci: Exclude spuriously failing test from JOM nightly CI job

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6797
2021-12-10 09:13:58 -05:00
Kitware Robot
3abd90ac22 CMake Nightly Date Stamp 2021-12-10 00:01:09 -05:00
Brad King
1e49880472 cmGeneratorTarget: Avoid boolean trap in usage requirement lookup
Replace `bool usage_requirements_only` arguments with a proper
enumeration to clarify meaning at call sites.
2021-12-09 11:00:23 -05:00
Brad King
9f5c872ed1 ci: Exclude spuriously failing test from JOM nightly CI job
Since commit 3b9975d9b5 (ci: Add JOM nightly CI job, 2021-11-17) the
`ExternalProject` test often fails spuriously with an internal error
message from JOM.  Exclude it for now pending further investigation.

Prior to covering JOM in CI, it was covered by a standalone nightly
build that excluded the `ExternalProject` test for the same reason.
2021-12-09 10:42:13 -05:00
Brad King
f22aa2f466 Merge topic 'tests_if_version'
1a813273ca Tests: Add more version comparison tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6791
2021-12-09 10:40:11 -05:00
Brad King
78c20892bf Merge topic 'ctest-add_subdirectory'
7c5a120c38 Tests: Add case covering both ctest subdirectory commands
04deda1d2a CTest: Extract common implementation of add_subdirectory and subdirs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6795
2021-12-09 10:39:20 -05:00
Brad King
01e768850a Merge topic 'simplify-backtrace'
61c46c95ae cmListFileContext: Simplify explicit rule-of-five members
d0ceb409ff cmListFileBacktrace: Remove unused "Depth" method
7b677dbb92 cmListFileBacktrace: Remove unused "bottom" entry
56dc22d488 cmMessenger: Make relative path conversion more explicit
c749982c13 cmTargetPropertyComputer: Simplify by restoring use of cmMakefile
3d378541bb cmMessenger: Adopt backtrace printing functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6794
2021-12-09 10:38:27 -05:00
Dietmar Scheidl
abc6377469 VS: Add OBJECT_DEPENDS as AdditionalDependencies
Fixes: #22733
2021-12-09 16:22:10 +01:00
Kitware Robot
4c23e0272b CMake Nightly Date Stamp 2021-12-09 00:02:09 -05:00
Nick Muggio
7dd3e99270 cmListCommand: Handle invalid FOR selector ranges
Fixes crashes involving invalid ranges specified in list(TRANSFORM ...
FOR ...) calls.
* Report error when step is not positive
* Report error when start is after stop

Fixes: #22985
2021-12-08 20:54:04 -05:00
Brad King
fa5055eb56 Merge topic 'doc-function-naming'
74f1fbb7a1 Help/dev: Cover module function naming in CMake Documentation Guide

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6793
2021-12-08 18:02:08 -05:00
Brad King
74f1fbb7a1 Help/dev: Cover module function naming in CMake Documentation Guide 2021-12-08 17:05:25 -05:00
Paweł Bylica
1a813273ca Tests: Add more version comparison tests 2021-12-08 12:05:36 -05:00
Brad King
7c5a120c38 Tests: Add case covering both ctest subdirectory commands
CTest re-implements the `subdirs` and `add_subdirectory` commands.
Verify that they both work.
2021-12-08 11:36:50 -05:00
friendlyanon
04deda1d2a CTest: Extract common implementation of add_subdirectory and subdirs
The two functions have basically the same functionality in a CTest
context, however the add_subdirectory implementation was missing code
for changing the current working directory similarly to how it was done
for subdirs. This commit extracts the common code and also fixes that
bug.

Issue: #22921
2021-12-08 11:36:43 -05:00
Brad King
61c46c95ae cmListFileContext: Simplify explicit rule-of-five members 2021-12-08 10:31:55 -05:00
Brad King
d0ceb409ff cmListFileBacktrace: Remove unused "Depth" method 2021-12-08 10:31:48 -05:00
Brad King
7b677dbb92 cmListFileBacktrace: Remove unused "bottom" entry
All uses of `GetBottom` by clients have been removed, so drop the
method and its supporting infrastructure.
2021-12-08 10:03:48 -05:00
Brad King
56dc22d488 cmMessenger: Make relative path conversion more explicit
Move the decision to convert to call stacks to relative paths out to the
client.  Avoid using `cmState` to make the decision ourselves.
2021-12-08 10:03:48 -05:00
Brad King
c749982c13 cmTargetPropertyComputer: Simplify by restoring use of cmMakefile
Logically revert commit 390a7d8647 (cmTargetPropertyComputer: Implement
GetProperty without cmMakefile, 2016-10-13, v3.8.0-rc1~445^2~9).
It relied on using `cmListFileBacktrace` to get a scope in which to
look up policies.

This does remove a backtrace from `LOCATION` property errors at generate
time, but the backtrace we reported before was incorrect.  It pointed at
the addition of a target, not to the reference to the property.
2021-12-08 10:03:48 -05:00