Commit Graph

53309 Commits

Author SHA1 Message Date
Robert Maynard 2e86e50c2f HIP: Add HIP to all the Check* modules 2021-06-07 19:25:33 +00:00
Robert Maynard 947dbed0aa HIP: Automatically inject the hip::device runtime target
Any target that might need to link to hip code needs the `hip::device`
target
2021-06-07 19:25:33 +00:00
Robert Maynard b50bfc8913 HIP: Add language to CMake 2021-06-07 19:25:33 +00:00
Robert Maynard ff0d2858e1 HIP: Extract clang compiler details from hipcc 2021-06-07 19:25:33 +00:00
Robert Maynard bd844387df ROCMClang: Add the ROCm toolkit derived clang compiler to CMake 2021-06-07 19:25:28 +00:00
Zack Galbreath 590553f322 Compilers: protect use of __has_include
If the compiler does not have __has_include, pretend the answer is always no
2021-06-07 19:25:09 +00:00
Brad King ed3aad97e3 cmGeneratorTarget: Clear cached link implementation when a source is added
Adding a source file at generate time can cause the linker language or
other settings to change that affect `GetLinkImplementationLibraries`
and friends.
2021-06-04 12:14:04 -04:00
Brad King 26e75b474b Merge topic 'env-toolchain-file'
6c34ed9b87 cmake: Allow CMAKE_TOOLCHAIN_FILE to be set by environment variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6188
2021-06-04 07:00:43 -04:00
Brad King c61782917d Merge topic 'implicit-link-static'
1d7fddca8e CMakeParseImplicitLinkInfo: Honor GNU static runtime library flags
629eb3926b Tests: Extend ParseImplicit*Info with static GNU runtime library flags
9d0f8c3e56 Tests: Teach RunCMake.ParseImplicitLinkInfo to match output by regex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6185
2021-06-04 06:59:37 -04:00
Brad King ccaaca4e7d Merge topic 'ci-clang-analyzer'
da14f4e19e gitlab-ci: add job to build with clang-analyzer
adc38da49f ci: add clang-analyzer to Fedora base image
b6c4d93dcd clang-analyzer: Suppress warnings in intentional use-after-move cases
c1b575f4d1 clang-analyzer: rename from scan-build in comments
dbfb50cd72 cmFileAPICodemodel: Assert input in DirectoryObject::DumpInstaller
410bf8ed4f cmStandardLevelResolver: Fix size assertion in constructor
82584b99e3 jsoncpp: Revert "Code style: add missed explicit 'this->'"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6189
2021-06-04 06:57:51 -04:00
Brad King c845b7ef37 Merge branch 'release-3.20' 2021-06-04 06:53:47 -04:00
Brad King e7dd507f3f Merge topic 'ci-sccache-consistent-builds'
95faf9cb96 Merge branch 'master' into ci-sccache-consistent-builds
9d7ebb47ea ci: use consistent sccache builds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6156
2021-06-04 06:53:47 -04:00
Brad King 451b1a8321 Merge topic 'ci-sccache-consistent-builds' into release-3.20
9d7ebb47ea ci: use consistent sccache builds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6156
2021-06-04 06:53:46 -04:00
Kitware Robot 186e6aa66f CMake Nightly Date Stamp 2021-06-04 00:01:10 -04:00
Brad King da14f4e19e gitlab-ci: add job to build with clang-analyzer
Update the exceptions in `CTestCustom.cmake.in` to match this job's
needs.  Drop exceptions needed only by our previous nightly build.
2021-06-03 15:06:42 -04:00
Brad King adc38da49f ci: add clang-analyzer to Fedora base image 2021-06-03 14:59:55 -04:00
Brad King b6c4d93dcd clang-analyzer: Suppress warnings in intentional use-after-move cases 2021-06-03 14:59:55 -04:00
Brad King c1b575f4d1 clang-analyzer: rename from scan-build in comments 2021-06-03 14:59:55 -04:00
Brad King dbfb50cd72 cmFileAPICodemodel: Assert input in DirectoryObject::DumpInstaller
This tells clang-analyzer that the `gen` argument is never `nullptr`.
2021-06-03 14:59:55 -04:00
Brad King 410bf8ed4f cmStandardLevelResolver: Fix size assertion in constructor
Assert sizes of the constructed vectors, not the moved-from inputs.
2021-06-03 14:59:55 -04:00
Kitware Robot 82584b99e3 jsoncpp: Revert "Code style: add missed explicit 'this->'"
Revert the part of commit 209daa20b2 (Code style: add missed explicit
'this->', 2021-01-05, v3.20.0-rc1~213^2) that updated third-party code.
2021-06-03 14:59:42 -04:00
Brad King 6c34ed9b87 cmake: Allow CMAKE_TOOLCHAIN_FILE to be set by environment variable
When no `CMAKE_TOOLCHAIN_FILE` is explicitly specified while creating
a new build tree, check for an environment variable of the same name.
2021-06-03 08:32:44 -04:00
Brad King 95faf9cb96 Merge branch 'master' into ci-sccache-consistent-builds 2021-06-03 08:18:32 -04:00
Brad King 1d7fddca8e CMakeParseImplicitLinkInfo: Honor GNU static runtime library flags
With flags like `-static-libstdc++` or `-static-libgfortran`, the GNU
compiler driver adds `-Bstatic ... -Bdynamic` around its language
runtime library.  Convert the libraries in between these to absolute
paths so that mixed-language linking honors the static runtime
libraries.
2021-06-03 08:12:58 -04:00
Brad King 629eb3926b Tests: Extend ParseImplicit*Info with static GNU runtime library flags
Generate sample input data with GNU 10.2.1 compilers using flags like
`-static-libstdc++` and `-static-libgfortran`.
2021-06-03 08:12:11 -04:00
Brad King 9d0f8c3e56 Tests: Teach RunCMake.ParseImplicitLinkInfo to match output by regex
As in commit 6bc6fc2a7f (Tests: Teach RunCMake.ParseImplicitIncludeInfo
to match output by regex, 2019-04-08, v3.14.2~5^2~1).
2021-06-03 08:12:11 -04:00
Brad King 9c33ff4dda Merge topic 'find_item-NO_CACHE'
87b71eec62 find_*: Add support for option NO_CACHE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6181
2021-06-03 08:11:04 -04:00
Brad King e6bcd5e45a Merge topic 'doc_regex'
0d210b92fa Help: links to CMake regex syntax

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6179
2021-06-03 08:09:34 -04:00
Brad King 4297357087 Merge topic 'ctest-coverage-no-dir'
5d5610b04f CTest: Exit coverage handling early if no binary dir

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6144
2021-06-03 08:08:42 -04:00
Brad King dcadb290ad Merge topic 'ninja-multi-config-default-configs-doc'
dbe3f8eee7 Help: Clarify default value of CMAKE_CONFIGURATION_TYPES for NMC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6184
2021-06-03 08:07:21 -04:00
Brad King 9f7c6a67e5 Merge topic 'update-kwsys'
1b6fbdf1d7 Merge branch 'upstream-KWSys' into update-kwsys
fc5b7905ed KWSys 2021-06-02 (ad35b3ba)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6183
2021-06-03 08:06:32 -04:00
Brad King bf0d56a1fb Merge topic 'depfile-no-vstlog'
f0e9d74a2d cmake_transform_depfile: Remove unused incomplete vstlog support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6182
2021-06-03 08:05:42 -04:00
Kitware Robot 2ff2085fb8 CMake Nightly Date Stamp 2021-06-03 00:01:11 -04:00
Ben Boeckel 9d7ebb47ea ci: use consistent sccache builds 2021-06-02 15:43:16 -04:00
Marc Chevrier 87b71eec62 find_*: Add support for option NO_CACHE
Request that find result is stored in a normal variable rather than a
cache entry.

Fixes: #20687
Issue: #20743
2021-06-02 14:55:00 -04:00
Michael Hirsch 0d210b92fa Help: links to CMake regex syntax 2021-06-02 10:30:21 -04:00
Kyle Edwards dbe3f8eee7 Help: Clarify default value of CMAKE_CONFIGURATION_TYPES for NMC
Fixes: #22266
2021-06-02 08:57:43 -04:00
Joseph Snyder 5d5610b04f CTest: Exit coverage handling early if no binary dir
Check for the existence of the Binary directory string before checking
for coverage files.  If the directory is not specified, write an error
message and do not do any checking.

Fixes: #22102
2021-06-02 08:41:09 -04:00
Brad King 1b6fbdf1d7 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2021-06-02 (ad35b3ba)
2021-06-02 07:46:47 -04:00
KWSys Upstream fc5b7905ed KWSys 2021-06-02 (ad35b3ba)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit ad35b3bae42fe21b8ea1d35799c8f141c9d5a2ec (master).

Upstream Shortlog
-----------------

Adriaan de Groot (1):
      e65c5693 testSystemTools: apply root-check to more systems
2021-06-02 07:46:47 -04:00
Brad King f0e9d74a2d cmake_transform_depfile: Remove unused incomplete vstlog support
In commit b2c14bc774 (cmake -E: Add cmake_transform_depfile internal
command, 2020-10-02, v3.20.0-rc1~684^2~2) a partial implementation for
converting MSBuild "TLog" format files was added.  However, it is
unused and incomplete:

* Does not enforce absolute paths as TLog docs require.
* Does not upper-case paths as TLog docs recommend.
* The TLog format semantics are not equivalent to `out: in`.

Remove the unused TLog transform infrastructure to avoid confusion.

Issue: #20286
2021-06-02 07:41:05 -04:00
Brad King cf470d8dac Merge topic 'command_target'
1cb4f592a0 add_custom_command: Target-dependent generator expression support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6176
2021-06-02 07:39:44 -04:00
Brad King 399a321a64 Merge topic 'get-runtime-dependencies-file-filter'
a12639e658 file(GET_RUNTIME_DEPENDENCIES): Add POST_{IN,EX}CLUDE_FILES arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6170
2021-06-02 07:38:17 -04:00
Brad King 8ff61f93d8 Merge branch 'release-3.20' 2021-06-02 07:32:31 -04:00
Brad King e092ded1a1 Merge topic 'msvc_cxx20_23' into release-3.20
886e27062b Clang/MSVC: C++20 final flag, C++23 support
3aaf1d91bf MSVC: C++20 final flag, C++23 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6174
2021-06-02 07:32:30 -04:00
Brad King b25225bb61 Merge topic 'msvc_cxx20_23'
886e27062b Clang/MSVC: C++20 final flag, C++23 support
3aaf1d91bf MSVC: C++20 final flag, C++23 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6174
2021-06-02 07:32:30 -04:00
Kitware Robot 2104cfe388 CMake Nightly Date Stamp 2021-06-02 00:01:11 -04:00
Kyle Edwards a12639e658 file(GET_RUNTIME_DEPENDENCIES): Add POST_{IN,EX}CLUDE_FILES arguments 2021-06-01 09:02:33 -04:00
Brad King 02957bb589 Merge topic 'install-imported-runtime-artifacts'
f7ba3a0589 FileAPI: Populate information for IMPORTED_RUNTIME_ARTIFACTS
df7040a271 install(): Add IMPORTED_RUNTIME_ARTIFACTS mode
60e752ced8 Refactor: Move common methods into cmInstallGenerator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6162
2021-06-01 08:42:16 -04:00
Brad King 5eb2aa1f57 Merge topic 'link-objects-first'
3941555d93 target_link_libraries: Place $<TARGET_OBJECTS> before libraries
f530b3a267 OpenWatcom: Add infrastructure to link to object files
8a4ca110e4 cmComputeLinkInformation: Improve type safety of item IsPath member
83ad066ed1 cmComputeTargetDepends: Factor out helper to add object library dependency
7f506b95a7 cmGeneratorTarget: Refactor link item lookup
96809a8541 cmGeneratorTarget: Give temporary link impl item an explicit name
ddffbb8adb cmMakefile: Register explicit object sources more efficiently
18e42d3e63 cmGeneratorExpressionNode: Constify local variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6166
2021-06-01 08:35:56 -04:00