Commit Graph

54601 Commits

Author SHA1 Message Date
Brad King
36966f63ca Merge topic 'hip-no-hipcc'
cb93f72624 HIP: Simplify detection of HIP runtime CMake package
a71f0fc9c7 HIP: Remove ROMClang compiler id and use Clang directly
b125e9809a HIP: Detect ROCm path earlier
735f41fc2d HIP: Use 'rocm_agent_enumerator' to determine CMAKE_HIP_ARCHITECTURES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Raul Tambre <raul@tambre.ee>
Acked-by: Axel Huebl <axel.huebl@plasma.ninja>
Merge-request: !6533
2021-09-20 12:38:44 -04:00
Brad King
c03a216ca8 Merge branch 'release-3.21' 2021-09-20 12:23:19 -04:00
Brad King
e2b63802c6 Merge branch 'release-3.20' into release-3.21 2021-09-20 12:23:07 -04:00
Brad King
5b7651f9b7 Merge branch 'release-3.20' 2021-09-20 12:22:49 -04:00
Brad King
0d3bfda22a CMake 3.20.6 v3.20.6 2021-09-20 11:28:01 -04:00
Brad King
c179ab6491 Merge topic 'test-symlink'
6ea883d652 Tests: Avoid output when running symlink check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6536
2021-09-20 10:02:25 -04:00
Kitware Robot
ed0139e606 CMake Nightly Date Stamp 2021-09-20 00:02:28 -04:00
Kitware Robot
96c3849384 CMake Nightly Date Stamp 2021-09-19 00:01:37 -04:00
Marc Chevrier
e4ad87c5dd Merge topic 'VersionCompare-use-std_string'
7e154ebd59 cmSystemTools::VersionCompare: use std::string for arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6535
2021-09-18 11:06:15 -04:00
Kitware Robot
4c54b26623 CMake Nightly Date Stamp 2021-09-18 00:01:14 -04:00
Brad King
7b09ff186e Merge branch 'release-3.21' 2021-09-17 09:35:10 -04:00
Brad King
1a1e8aaceb Merge branch 'release-3.20' into release-3.21 2021-09-17 09:35:04 -04:00
Brad King
e05e620059 Merge branch 'release-3.20' 2021-09-17 09:34:51 -04:00
Brad King
e1e24fa63d Merge branch 'release-3.21' 2021-09-17 09:33:45 -04:00
Brad King
c23e8411e5 Merge topic 'android-PATH'
94f3776774 Android: Restore searching PATH for executables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6528
2021-09-17 09:33:45 -04:00
Brad King
1127b591ec Merge topic 'android-PATH' into release-3.21
94f3776774 Android: Restore searching PATH for executables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6528
2021-09-17 09:33:44 -04:00
Brad King
3767c612e0 Merge branch 'release-3.21' 2021-09-17 09:32:50 -04:00
Brad King
dfb31d3a3f Merge topic 'iar-enable-in-list-operator'
f77ffbc0e3 IAR: Restore support for projects not enabling policy CMP0057

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6527
2021-09-17 09:32:50 -04:00
Brad King
58ac1eaa70 Merge topic 'iar-enable-in-list-operator' into release-3.21
f77ffbc0e3 IAR: Restore support for projects not enabling policy CMP0057

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6527
2021-09-17 09:32:49 -04:00
Brad King
6ea883d652 Tests: Avoid output when running symlink check
Since commit 58d10cf6f1 (Alternative symlink-creating mode for
file(INSTALL ...), 2021-08-02) we test creating a symlink during
configuration to decide whether to activate some tests.  Capture
the process output during the check to avoid leaking the error
message on failure.
2021-09-17 09:28:57 -04:00
Marc Chevrier
7e154ebd59 cmSystemTools::VersionCompare: use std::string for arguments 2021-09-17 11:58:46 +02:00
Kitware Robot
241048d6ce CMake Nightly Date Stamp 2021-09-17 00:01:19 -04:00
Craig Scott
0d2719d311 Merge topic 'xcode-embed-libraries'
6ef7bfbb64 Xcode: add support for embedding dynamic libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6490
2021-09-16 17:46:09 -04:00
Brad King
cb93f72624 HIP: Simplify detection of HIP runtime CMake package
It only makes sense to use the CMake package from the same ROCm
installation that the compiler uses.  Ask the HIP compiler to report the
location of the ROCm installation.  Verify up front that it contains the
expected CMake package file.
2021-09-16 15:33:53 -04:00
Brad King
a71f0fc9c7 HIP: Remove ROMClang compiler id and use Clang directly
Since commit bd844387df (ROCMClang: Add the ROCm toolkit derived clang
compiler to CMake, 2020-08-28, v3.21.0-rc1~66^2~6) and commit ff0d2858e1
(HIP: Extract clang compiler details from hipcc, 2020-10-21,
v3.21.0-rc1~66^2~5), the separate `ROCMClang` compiler id for `hipcc`
has caused a few problems:

* The compiler id changed from behavior of CMake 3.20 and below,
  breaking projects that already built with `hipcc` treated as `Clang`.

* The implementation of `target_compile_features` was incomplete for
  the `ROCMClang` identity.

* Only `hipcc` was identified as `ROCMClang`, so after it is unwrapped
  to the underlying `clang++`, future runs of new CMake versions on
  an existing build tree would not repeat this.

* Clang should be usable as a HIP compiler without the `hipcc` wrapper.

Remove the `ROMClang` compiler identity, and revise HIP language support
to work directly with a Clang compiler.

Reject direct `hipcc` usage as a HIP compiler.  For now it cannot be
supported because it interferes with flags CMake needs to pass to Clang.

Fixes: #22536, #22460, #22593
2021-09-16 15:33:47 -04:00
Brad King
b125e9809a HIP: Detect ROCm path earlier
Fail early if it is not found.

Use the detected location as a hint to find `rocm_agent_enumerator`.

Also remove the leading `_` prefix in case we want to document this
publicly later.
2021-09-16 14:45:07 -04:00
Zack Galbreath
735f41fc2d HIP: Use 'rocm_agent_enumerator' to determine CMAKE_HIP_ARCHITECTURES 2021-09-16 14:41:30 -04:00
Brad King
c9c6e8d6e8 Merge branch 'android-PATH' into release-3.20
Merge-request: !6528
2021-09-16 09:03:07 -04:00
hhb
94f3776774 Android: Restore searching PATH for executables
Since commit a7f41a7ee4 (Android: Fix find_* search order within NDK for
unified toolchains, 2020-10-13, v3.20.0-rc1~610^2), we turn off
`CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH`.  This breaks `find_program`
searching `PATH` for host executables.  Fortunately, the setting turns
out not to be necessary, perhaps since commit cbc51a8be3 (Android:
restructure android search paths, 2020-11-06, v3.20.0-rc1~509^2).
Without it, none of NDK tests fail, so remove it to restore pre-3.20
behavior.

Fixes: #22634
2021-09-16 08:45:33 -04:00
Jean-Marc Hengen
f77ffbc0e3 IAR: Restore support for projects not enabling policy CMP0057
Since commit 5b9bfe738c (IAR: Moved search logic to BinUtils.,
2021-07-19, v3.21.1~14^2), we use the `IN_LIST` operator in the
`CMakeFindBinUtils` module.  Set policy `CMP0057` to ensure it is
available regardless of the project's policy settings.

Fixes: #22640
2021-09-16 08:30:51 -04:00
Brad King
ffb9978e95 Merge topic 'clarify_cmake_policy_warning_doc'
1230ceb97e Help: Improve explanation on CMAKE_POLICY_WARNING warnings occur

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6522
2021-09-16 08:24:56 -04:00
Brad King
f5445e321e Merge topic 'enh-CPack-SetOption-accepts-new-types'
7fce78982b Use new SetOption signatures
7aeb262278 cmCPackGenerator::SetOption accepts cmProp or std::string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6526
2021-09-16 08:22:06 -04:00
Brad King
9858381ba8 Merge topic 'enh-CTest-SetOption-accepts-new-types'
8f52451682 Use new SetOption signatures
8d0ae460de cmCTestGenericHandler::SetOption accepts cmProp or std::string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6525
2021-09-16 08:20:30 -04:00
Brad King
98f78af88b Merge topic 'update-curl'
412189bce7 curl: Set build options the way we need for CMake
8ecd95845c Merge branch 'upstream-curl' into update-curl
386467c9dc curl 2021-09-14 (8e82f2a0)
a8ae9c7055 curl: Update script to get curl 7.79.0
3cfd89add5 cmCurl: Fix file:// URLs with spaces for curl 7.78+
63b5a6869e cmCurl: Adopt helper to fix file:// URLs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6523
2021-09-16 08:19:37 -04:00
Brad King
b3f4a05761 Merge branch 'release-3.21' 2021-09-16 08:16:54 -04:00
Brad King
1b91aaecd8 Merge topic 'vs2022'
b6ac10394b VS: Update Visual Studio 17 2022 generator for Preview 4
f200f4d5a7 VS: Fix managed C++ project generation for VS 2022

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6524
2021-09-16 08:16:54 -04:00
Brad King
64aac043ee Merge topic 'vs2022' into release-3.21
b6ac10394b VS: Update Visual Studio 17 2022 generator for Preview 4
f200f4d5a7 VS: Fix managed C++ project generation for VS 2022

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6524
2021-09-16 08:16:53 -04:00
Brad King
86d0d78f2e Merge topic 'msvc-pch-obj-restriction'
3b9e04accb PCH: MSVC: Restrict OBJECT library INTERFACE_LINK_LIBRARIES usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6518
2021-09-16 08:15:31 -04:00
Kitware Robot
038c416f93 CMake Nightly Date Stamp 2021-09-16 00:01:13 -04:00
Brad King
412189bce7 curl: Set build options the way we need for CMake 2021-09-15 15:28:53 -04:00
Brad King
8ecd95845c Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2021-09-14 (8e82f2a0)
2021-09-15 15:28:38 -04:00
Curl Upstream
386467c9dc curl 2021-09-14 (8e82f2a0)
Code extracted from:

    https://github.com/curl/curl.git

at commit 8e82f2a04a238c54ba91e553e9a8452e6d405965 (curl-7_79_0).
2021-09-15 15:28:31 -04:00
Brad King
a8ae9c7055 curl: Update script to get curl 7.79.0 2021-09-15 15:28:20 -04:00
Brad King
3cfd89add5 cmCurl: Fix file:// URLs with spaces for curl 7.78+
Since curl 7.78, URLs with spaces that are not encoded as `%20` or `+`
are now correctly rejected with `CURLUE_MALFORMED_INPUT`.  However,
CMake has long accepted `file://` URLs with spaces in the path due to
curl 7.77 and below accidentally allowing them.  Preserve this by
explicitly encoding spaces in such URLs before handing them to curl.

See also upstream curl commit `b67d3ba73` (curl_url_set: reject spaces
in URLs w/o CURLU_ALLOW_SPACE, 2021-05-31, curl-7_78_0~133).
2021-09-15 15:28:01 -04:00
Brad King
63b5a6869e cmCurl: Adopt helper to fix file:// URLs
Migrate and generalize the helper added by commit e63dcb1378 (Encoding:
Use encoding libcurl expects with file: urls., 2014-11-05,
v3.2.0-rc1~420^2).
2021-09-15 15:03:22 -04:00
Brad King
b6ac10394b VS: Update Visual Studio 17 2022 generator for Preview 4 2021-09-15 13:20:02 -04:00
Brad King
f200f4d5a7 VS: Fix managed C++ project generation for VS 2022
VS 2022 expects managed `.vcxproj` files to have a `ManagedAssembly`
element.

Fixes: #22583
2021-09-15 13:19:37 -04:00
Marc Chevrier
7fce78982b Use new SetOption signatures 2021-09-15 18:30:49 +02:00
Marc Chevrier
7aeb262278 cmCPackGenerator::SetOption accepts cmProp or std::string 2021-09-15 18:30:41 +02:00
Marc Chevrier
8f52451682 Use new SetOption signatures 2021-09-15 18:08:19 +02:00