Commit Graph

12343 Commits

Author SHA1 Message Date
Brad King
fd467241a4 Merge topic 'FindCUDAToolkit-cufftw-static'
3e7113e644 FindCUDAToolkit: Add missing cufftw_static target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7093
2022-03-22 08:43:29 -04:00
Brad King
7e642a6fa0 Merge topic 'ghs_predefined_targets'
399e73b89a GHS: release note
829e946c69 GHS: Update tests for updated binary layout
93c1acd8ff GHS: List predefined targets before user targets in GUI
bdb213819c GHS: Do not include WindowsPaths
b3e9c72901 GHS: use INSTALL target
a645287784 GHS: update build command
724b5491ef GHS: Rearrange project files in binary directory
edff0f6a1d GHS: Use Custom Target for ALL_BUILD
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7079
2022-03-21 14:36:42 -04:00
Brad King
a4b04e62fc Merge topic 'LINK_LIBRARY-WHOLE_ARCHIVE'
dabe56de58 genex-LINK_LIBRARY: Add feature WHOLE_ARCHIVE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: huangqinjin <huangqinjin@gmail.com>
Merge-request: !7064
2022-03-21 14:35:59 -04:00
Robert Maynard
3e7113e644 FindCUDAToolkit: Add missing cufftw_static target
Fixes #23347
2022-03-21 09:40:17 -04:00
Brad King
367aed1433 Merge topic 'r2022a'
6032213456 FindMatlab: Add R2022a => 9.12 version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7086
2022-03-18 08:20:59 -04:00
Michael Hirsch
6032213456 FindMatlab: Add R2022a => 9.12 version 2022-03-18 07:22:42 -04:00
Brad King
91228fe512 Merge topic 'FindPython-pypy-specify-versions'
2834cea155 FindPython: fix various problems using pypy interpreters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7081
2022-03-18 07:18:05 -04:00
Brad King
528a426c8e Merge topic 'FindPython-pypy-specify-versions' into release-3.23
2834cea155 FindPython: fix various problems using pypy interpreters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7081
2022-03-18 07:18:04 -04:00
Fred Baksik
bdb213819c GHS: Do not include WindowsPaths
This causes issues where CMAKE_SYSTEM_PREFIX_PATH contains incorrect
paths. GHS is a cross-compiler toolchain and doesn't use anything in
these locations.

Also WindowsPaths are always wrong on Linux hosts.
2022-03-17 19:11:46 -04:00
Marc Chevrier
dabe56de58 genex-LINK_LIBRARY: Add feature WHOLE_ARCHIVE 2022-03-17 23:07:59 +01:00
Brad King
8fb43af04a Merge topic 'FindPostgreSQL-doc-versions'
fcc0119af0 FindPostgreSQL: Update known versions in documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7080
2022-03-17 11:04:00 -04:00
Marc Chevrier
2834cea155 FindPython: fix various problems using pypy interpreters
* add more possible directories for include file search
* enhance version detection from library and include files
* search for file pypy_decl.h when PyPy.h is not defined
2022-03-17 14:53:40 +01:00
Kai Pastor
fcc0119af0 FindPostgreSQL: Update known versions in documentation 2022-03-17 09:41:57 -04:00
Brad King
7f36e0ff6e Merge topic 'cuda-arch-native'
ff8c0e9c10 ci: Clamp CUDA 'native' architecture to values supported by its toolkit

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7074
2022-03-17 09:12:07 -04:00
Brad King
ff8c0e9c10 ci: Clamp CUDA 'native' architecture to values supported by its toolkit
The `native` architecture compiles for the host's GPUs, but our CI jobs
may may run on hosts with GPUs newer than supported by their version of
the CUDA toolkit.  Add an undocumented environment variable to tell
CMake to clamp the native architecture to that supported by the toolkit.

Without this, we may try to compile for architectures not supported by
the CUDA Toolkit, which fails.  Since commit d1b48bfabd (CUDA: Add
support for CUDA_ARCHITECTURES=native, 2022-03-04), our CUDA 9.2 CI job
fails when it runs on a CI host with a GPU architecture newer than that
CUDA 9.2 supports.  Clamping the architecture level fixes that.

Do not document this clamp behavior publicly, at least for now.
Users can be responsible for building with a CUDA toolkit recent
enough to support their host's GPUs.

Issue: #22375
2022-03-16 13:14:51 -04:00
Brad King
0766687b2a Merge topic 'findzlib-static'
185723461f FindZLIB: more library names + option to prefer static library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7067
2022-03-16 11:23:24 -04:00
Brad King
bc1fd4b606 Merge topic 'doc-list-semicolons'
8abd714176 Help: Clarify that ENVIRONMENT test properties take ;-separated lists
02cf404ace Help: Add advice for dealing with semicolons in lists
c4117d9116 ExternalProject: Document that LIST_SEPARATOR works for CMAKE_ARGS too

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !7066
2022-03-16 11:14:59 -04:00
Brad King
b2ba662ca6 Merge topic 'doc-list-semicolons' into release-3.23
8abd714176 Help: Clarify that ENVIRONMENT test properties take ;-separated lists
02cf404ace Help: Add advice for dealing with semicolons in lists
c4117d9116 ExternalProject: Document that LIST_SEPARATOR works for CMAKE_ARGS too

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !7066
2022-03-16 11:14:58 -04:00
Brad King
768d070180 Merge topic 'binutils-llvm-ar-apple'
fee36b7a78 BinUtils: Restore llvm-ar fallback on Apple platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7077
2022-03-16 11:09:45 -04:00
Brad King
1925a5ccc2 Merge topic 'binutils-llvm-ar-apple' into release-3.23
fee36b7a78 BinUtils: Restore llvm-ar fallback on Apple platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7077
2022-03-16 11:09:44 -04:00
Brad King
2db936e59a Merge branch 'binutils-llvm-ar-apple' into release-3.22
Merge-request: !7077
2022-03-16 10:51:03 -04:00
Brad King
fee36b7a78 BinUtils: Restore llvm-ar fallback on Apple platforms
Since commit 29ea94e17c (BinUtils: Avoid llvm-ar on Apple platforms,
2022-03-03, v3.21.6~1^2) we do not consider `llvm-ar` at all on Apple
platforms.  However, there are existing cross-compiling use cases in
which the toolchain has `llvm-ar` but not `ar`.  Prior to the
re-ordering in commit cf82300a63 (BinUtils: Clarify search logic and
make it more consistent, 2021-05-27, v3.21.0-rc1~119^2~2), we preferred
`ar` and then `llvm-ar`.  Restore the original order for Apple.

Fixes: #23320
2022-03-16 10:46:11 -04:00
Brad King
37f7d0d295 Merge topic 'AppleClang-cxx20-cxx23-flags'
683e4e9cab AppleClang: Add C++20 and C++23 flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7063
2022-03-15 12:46:33 -04:00
Brad King
941605e427 Merge topic 'AppleClang-cxx20-cxx23-flags' into release-3.23
683e4e9cab AppleClang: Add C++20 and C++23 flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7063
2022-03-15 12:46:32 -04:00
Peter Würth
185723461f FindZLIB: more library names + option to prefer static library
Adds additional library names `zlibstat[d]` and `zlibvc[d]` for Windows,
when zlib is built using one of the Visual Studio solutions under
`zlib/contrib/vstudio`.

Adds a `ZLIB_USE_STATIC_LIBS` option that is equivilent to similar
settings in other modules such as FindProtobuf, FindOpenSSL, etc.

Implements #18029 and #23140
2022-03-12 17:55:57 +01:00
Brad King
c4117d9116 ExternalProject: Document that LIST_SEPARATOR works for CMAKE_ARGS too
Since `CMAKE_ARGS` is used to construct the default `CONFIGURE_COMMAND`
for CMake-based external projects, the `LIST_SEPARATOR` option works for
it too.
2022-03-11 11:15:53 -05:00
Brad King
7523a1da6e Merge branch 'AppleClang-cxx20-cxx23-flags' into release-3.22
Merge-request: !7063
2022-03-11 10:33:16 -05:00
Ken Matsui
683e4e9cab AppleClang: Add C++20 and C++23 flags
Follow up commit 886e27062b (Clang/MSVC: C++20 final flag, C++23
support, 2021-05-29, v3.20.4~7^2) with support for AppleClang.
2022-03-11 10:00:21 -05:00
Brad King
edee7c18e8 Merge topic 'cuda-arch-native'
d1b48bfabd CUDA: Add support for CUDA_ARCHITECTURES=native
632752d62e CUDA: Add FIXME comments about deferring architecture testing
45e9ab0372 Tests: Rename CudaOnly.{All => ArchSpecial}

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7050
2022-03-11 08:53:25 -05:00
Brad King
34c25f6451 Merge topic 'FindX11-xcb-components'
ce28748ced FindX11: add xcb-xtest and xcb-keysyms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7052
2022-03-11 08:50:07 -05:00
planc
ce28748ced FindX11: add xcb-xtest and xcb-keysyms 2022-03-10 11:41:31 -05:00
Brad King
d1b48bfabd CUDA: Add support for CUDA_ARCHITECTURES=native
CUDA 11.6 added the `nvcc -arch=native` flag to automatically compile
for the host GPUs' architectures.  Add support for specifying this
special `native` value in `CMAKE_CUDA_ARCHITECTURES` and
`CUDA_ARCHITECTURES`.  During the compiler ABI detection step,
detect the native architectures so we can pass them explicitly
when using Clang or older versions of nvcc.

Fixes: #22375
2022-03-10 09:27:29 -05:00
Brad King
632752d62e CUDA: Add FIXME comments about deferring architecture testing
Issue: #23161
2022-03-10 09:26:13 -05:00
Brad King
d4f12c2097 Merge topic 'cuda-arch-off'
7024596a26 Tests: Fix testing CMAKE_CUDA_ARCHITECTURES=OFF with Clang
2a79b647fa CUDA: Restore support for CMAKE_CUDA_ARCHITECTURES=OFF

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7058
2022-03-10 09:08:05 -05:00
Brad King
ed663af8a2 Merge topic 'cuda-arch-off' into release-3.23
7024596a26 Tests: Fix testing CMAKE_CUDA_ARCHITECTURES=OFF with Clang
2a79b647fa CUDA: Restore support for CMAKE_CUDA_ARCHITECTURES=OFF

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7058
2022-03-10 09:08:04 -05:00
Brad King
8a5e16070d Merge topic 'irsl-oneapi-linux'
3e84a06b3a IRSL: Add paths for Intel oneAPI compilers on Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7057
2022-03-10 06:43:11 -05:00
Brad King
e3b9338e97 Merge topic 'irsl-oneapi-linux' into release-3.23
3e84a06b3a IRSL: Add paths for Intel oneAPI compilers on Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7057
2022-03-10 06:43:10 -05:00
Attila Krasznahorkay
3e84a06b3a IRSL: Add paths for Intel oneAPI compilers on Linux
They are stored in a slightly different place with oneAPI than they
used to be in PSXE.

A similar change was made for Windows by commit 956160bb9a (IRSL: Fix
search for Windows redist files with Intel Classic compiler, 2021-09-23,
v3.22.0-rc1~88^2), which left a comment about the locations relative to
the Classic and oneAPI compilers.

Fixes: #23310
2022-03-09 12:53:37 -05:00
Robert Maynard
2a79b647fa CUDA: Restore support for CMAKE_CUDA_ARCHITECTURES=OFF
Fixes: #23309
2022-03-09 12:30:12 -05:00
Brad King
51e81d1f73 Merge topic 'color-diagnostics'
6ab9fbd43b color: Add tests for CMAKE_COLOR_DIAGNOSTICS
78adb1b952 color: Add CMAKE_COLOR_DIAGNOSTICS environment variable
884d9de8b7 color: Introduce CMAKE_COLOR_DIAGNOSTICS variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Frank Dana <ferdnyc@gmail.com>
Merge-request: !6990
2022-03-09 12:15:53 -05:00
Brad King
4802b27e64 Merge topic 'FindX11--xcb-randr'
364798fa6b FindX11: Add xcb_randr library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7046
2022-03-09 12:14:16 -05:00
Brad King
28da3780c7 Merge topic 'binutils-llvm-mt'
73d0d4e4b5 BinUtils: Avoid llvm-mt because it is missing 'mt' features we use

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7054
2022-03-09 12:10:15 -05:00
Brad King
0402d35168 Merge topic 'binutils-llvm-mt' into release-3.23
73d0d4e4b5 BinUtils: Avoid llvm-mt because it is missing 'mt' features we use

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7054
2022-03-09 12:10:14 -05:00
Brad King
a7474dac87 Merge topic 'iar-cmp0057'
bd3e23a605 IAR: Fix detection of modern C++ version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7053
2022-03-09 12:09:03 -05:00
Matthew Smith
364798fa6b FindX11: Add xcb_randr library 2022-03-08 22:18:46 +00:00
Semyon Kolton
78adb1b952 color: Add CMAKE_COLOR_DIAGNOSTICS environment variable 2022-03-08 16:38:13 -05:00
Semyon Kolton
884d9de8b7 color: Introduce CMAKE_COLOR_DIAGNOSTICS variable
Add a variable to control both makefile color messages and compiler
color diagnostics.

Fixes: #15502
2022-03-08 16:37:08 -05:00
Brad King
3f737ba2ec Merge branch 'binutils-llvm-mt' into release-3.22
Merge-request: !7054
2022-03-08 11:55:16 -05:00
Brad King
73d0d4e4b5 BinUtils: Avoid llvm-mt because it is missing 'mt' features we use
Since commit cf82300a63 (BinUtils: Clarify search logic and make it more
consistent, 2021-05-27, v3.21.0-rc1~119^2~2) we correctly prefer the
more-specific name `llvm-mt` over `mt` when using Clang.  However, the
`llvm-mt` tool does not yet support all the flags we need in the
implementation of `vs_link_{exe,dll}`.  Prefer plain `mt` for now.

Fixes: #23305
2022-03-08 11:48:30 -05:00
Kenneth Soerensen
bd3e23a605 IAR: Fix detection of modern C++ version
The change in commit cc4da8d13a (IAR/CXX: Fix compatibility with CMP0057
OLD, 2022-01-29, v3.23.0-rc1~46^2) broke the detection of C++ version
because the `IN_LIST` operator cannot work directly on a list but
requires a variable.
2022-03-08 09:34:48 -05:00