Commit Graph

12297 Commits

Author SHA1 Message Date
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
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
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
Brad King
93f0743ec4 Merge topic 'FindMatlab-minver'
bb2c7b7dc0 FindMatlab: Fix logic error when minimum version is not found

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7047
2022-03-08 08:22:10 -05:00
Brad King
1d9b545390 Merge topic 'FindMatlab-minver' into release-3.23
bb2c7b7dc0 FindMatlab: Fix logic error when minimum version is not found

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7047
2022-03-08 08:22:09 -05:00
Michael Hirsch
bb2c7b7dc0 FindMatlab: Fix logic error when minimum version is not found
Fix logic added by commit 7fdd5128b1 (FindMatlab: Fix version selection
if a version is given, 2021-07-02, v3.22.0-rc1~66^2).  Ensure that
`_list_index` is always initialized to -1, akin to `list(FIND)` not
finding a match.

Issue: #22377
2022-03-07 10:12:43 -05:00
Brad King
49642079e5 Merge topic 'LINK_LIBRARY-libraries'
9fb1dff070 LINK_LIBRARY: Add features for library support on Apple
93a153bc7f Genx-LINK_LIBRARY: simplify framework features definitions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7029
2022-03-07 10:04:13 -05:00
Marc Chevrier
9fb1dff070 LINK_LIBRARY: Add features for library support on Apple 2022-03-05 13:57:45 +01:00
Marc Chevrier
b0fada9964 Genex-LINK_GROUP: Add feature RESCAN
Feature RESCAN can be used to manage circular references between
static libraries.
2022-03-05 12:40:26 +01:00
Marc Chevrier
93a153bc7f Genx-LINK_LIBRARY: simplify framework features definitions 2022-03-04 16:51:53 +01:00
Brad King
4c68c59117 Merge topic 'binutils-llvm-ar-clang-macos'
29ea94e17c BinUtils: Avoid llvm-ar on Apple platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7039
2022-03-04 08:52:06 -05:00
Brad King
71a8b4e63d Merge topic 'binutils-llvm-ar-clang-macos' into release-3.23
29ea94e17c BinUtils: Avoid llvm-ar on Apple platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7039
2022-03-04 08:52:05 -05:00
Brad King
7edc09b4f6 Merge branch 'binutils-llvm-ar-clang-macos' into release-3.22
Merge-request: !7039
2022-03-03 12:58:00 -05:00
Brad King
29ea94e17c BinUtils: Avoid llvm-ar on Apple platforms
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-ar` over `ar` when using Clang.  However, on
Apple platforms, `llvm-ar` does not generate a symbol table that the
Apple linker accepts.  Fall back to `ar` on Apple platforms.

Fixes: #23269
2022-03-03 12:54:10 -05:00
Brad King
0e27bb9356 Merge topic 'cuda-arch-all'
dae3ad08fa Tests: Add cases for CMAKE_CUDA_ARCHITECTURES={all,all-major}
5c1f5357b0 VS: Fix CUDA compiler id with CMAKE_CUDA_ARCHITECTURES={all,all-major}

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7035
2022-03-03 11:48:01 -05:00
Brad King
5c1f5357b0 VS: Fix CUDA compiler id with CMAKE_CUDA_ARCHITECTURES={all,all-major}
Skip the architecture verification check for these values on Visual
Studio.  It cannot be implemented correctly until future work delays the
check to the main compiler test step.

Issue: #23164, #23161
2022-03-02 15:49:14 -05:00
Brad King
cd6341b547 Merge topic 'cuda-arch-all'
2796d6eeca CUDA: Fix CMAKE_CUDA_ARCHITECTURES=all/all-major with NVCC 11.5+
e450d55552 Help: Update CUDA_ARCHITECTURES docs for generic all/all-major support
fe64c49e72 CUDA: Simplify CMAKE_CUDA_ARCHITECTURES special value logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7026
2022-03-02 07:52:18 -05:00
Brad King
04a7200c75 Merge topic 'cuda-arch-all' into release-3.23
2796d6eeca CUDA: Fix CMAKE_CUDA_ARCHITECTURES=all/all-major with NVCC 11.5+
e450d55552 Help: Update CUDA_ARCHITECTURES docs for generic all/all-major support
fe64c49e72 CUDA: Simplify CMAKE_CUDA_ARCHITECTURES special value logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7026
2022-03-02 07:52:17 -05:00
Brad King
2796d6eeca CUDA: Fix CMAKE_CUDA_ARCHITECTURES=all/all-major with NVCC 11.5+
Changes in commit 8f64df0a7c (CUDA: Generic all and all-major support,
2021-12-19, v3.23.0-rc1~23^2) broke our architecture verification checks
when using `-arch={all,all-major}` with NVCC 11.5+.  If we test the
compiler with `-arch={all,all-major}`, we have no expected list of
architectures, so skip the check.

Fixes: #23278
2022-03-01 12:16:40 -05:00
Brad King
d687047f99 Merge topic 'genex-LINK_GROUP'
0a81ea1f12 Genex-LINK_GROUP: Add possibility to group libraries at link step
a9928eb4a5 SunPro C: ensure LINKER: prefix is usable for all versions
01ff75b2ff cmComputeDepends::LinkEntry: introduce enum to specify item type

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7005
2022-03-01 08:46:09 -05:00
Brad King
2e67438cb2 Merge topic 'FindThreads-revert-libc-pthread-flag'
c6da90bd39 FindThreads: Revert "Honor THREADS_PREFER_PTHREAD_FLAG when ... in libc"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7025
2022-03-01 08:38:00 -05:00
Brad King
893ba6c5c3 Merge topic 'FindThreads-revert-libc-pthread-flag' into release-3.23
c6da90bd39 FindThreads: Revert "Honor THREADS_PREFER_PTHREAD_FLAG when ... in libc"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7025
2022-03-01 08:37:58 -05:00
Brad King
fe64c49e72 CUDA: Simplify CMAKE_CUDA_ARCHITECTURES special value logic
Refactor the logic checking `CMAKE_CUDA_ARCHITECTURES` special values.
Switch on the value first, and then make other decisions for each case.
This makes room for other special values to be added later.
2022-02-28 21:30:23 -05:00
Brad King
7a16688f02 Merge branch 'FindThreads-revert-libc-pthread-flag' into release-3.22
Merge-request: !7025
2022-02-28 13:09:19 -05:00
Brad King
02b04f1ca8 Merge branch 'FindThreads-revert-libc-pthread-flag' into release-3.21
Merge-request: !7025
2022-02-28 13:09:00 -05:00
Brad King
c6da90bd39 FindThreads: Revert "Honor THREADS_PREFER_PTHREAD_FLAG when ... in libc"
Revert commit 5efb6fb516 (FindThreads: Honor THREADS_PREFER_PTHREAD_FLAG
when pthread is found in libc, 2021-11-03, v3.21.5~4^2).  The check for
the `-pthread` flag can pass on compilers like XL, that interprets it as
`-p -t hread` and returns zero.  Prior to that commit, we did not use
the check in the `CMAKE_HAVE_LIBC_PTHREAD` code path.  Now we do, it
succeeds, and we incorrectly add the `-pthread` flag for XL.

This change was backported to the 3.21 and 3.22 release series long
after they initially came out.  Since there may be more cases where we
now add `-pthread` incorrectly, it is simplest to revert the change in
all release series pending further investigation.

Fixes: #23270
2022-02-28 12:53:15 -05:00
Marc Chevrier
a9928eb4a5 SunPro C: ensure LINKER: prefix is usable for all versions 2022-02-27 13:46:49 +01:00
Brad King
3de53510ac Merge topic 'ghs_fix_rtos_dir'
005c7dc9e7 GHS: Store full path of Integrity OS directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7017
2022-02-24 13:01:40 -05:00
Brad King
9568325cf4 Merge topic 'cpack-zstd-parallel'
525faec4e9 CPack: Add parallel zstd compression
215c4efd3e cmArchiveWrite: Factor out thread count selection
29f63129be CPack: Format CPACK_THREADS compression methods as a definition list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7003
2022-02-24 12:57:32 -05:00
Fred Baksik
005c7dc9e7 GHS: Store full path of Integrity OS directory
Fixes build project error because the OS directory was a relative
path from the binary directory.

Fixes issue during project regeneration where the `-os_dir` project option
was missing because GHS_OS_DIR was not properly stored in the cache
file.

This error was introduced by commit aa59eaac4f (GHS: Allow setting GHS
variables from toolchain file, 2021-11-15, v3.23.0-rc1~337^2).
2022-02-23 11:33:35 -05:00
Russell Greene
525faec4e9 CPack: Add parallel zstd compression 2022-02-23 08:39:32 -05:00
Brad King
29f63129be CPack: Format CPACK_THREADS compression methods as a definition list
Prepare to add more entries beyond `xz`.
2022-02-22 15:31:37 -05:00
Brad King
fec7867264 Merge topic 'CheckTypeSize-doc'
65e4d29e35 CheckTypeSize: Modernize and clarify documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7006
2022-02-22 12:55:55 -05:00
Craig Scott
dec997f04e ExternalProject: Remove extra quotes in for-each-ref update step
The --format=... argument to git for-each-ref was using a stray pair
of single quotes around the format string. These were then part of
the output, which caused it to never match the checkout_name.
The end result was that a REBASE_CHECKOUT always became a
CHECKOUT in all scenarios.

Fixes: #23216
2022-02-21 18:28:46 +11:00
Craig Scott
704e87ee8c Help: Clarify behavior of REBASE_CHECKOUT when switching branches
Issue: #23216
2022-02-21 18:28:16 +11:00
Brad King
65e4d29e35 CheckTypeSize: Modernize and clarify documentation
Spell out the list of result variables as a definition list rather
than in prose.

Fixes: #23247
2022-02-18 11:33:06 -05:00
Marc Chevrier
397ee55cd6 genex-LINK_LIBRARY: rename configuration variables
To be more consistent between genex and variables as well as
the forecomming LINK_GROUP genex, rename variable *_LINK_USING_<FEATURE>*
in *_LINK_LIBRARY_USING_<FEATURE>*
2022-02-16 18:34:28 +01:00
Brad King
ba78776a94 Merge topic 'FindGLUT-link-dirs'
44f7238d5d FindGLUT: Use link directories for libs from pkg-config

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6985
2022-02-16 09:42:54 -05:00
Brad King
809cb5b76a Merge topic 'FindGLUT-link-dirs' into release-3.23
44f7238d5d FindGLUT: Use link directories for libs from pkg-config

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6985
2022-02-16 09:42:53 -05:00
Brad King
f15b338755 Merge topic 'FindHDF5-info-binary-exists'
449f343498 FindHDF5: Tolerate failure during compiler interrogation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6983
2022-02-16 09:41:57 -05:00
Brad King
82acb05018 Merge topic 'LINK_LIBRARY-framework'
a2cfa2da4f GenEx/LINK_LIBRARY: Add features for framework support on Apple
40178f3c90 cmGlobalGenerator: Add helper to split framework path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6967
2022-02-16 09:36:38 -05:00
Axel Huebl
449f343498 FindHDF5: Tolerate failure during compiler interrogation
Check that the file that is accessed via `file(STRINGS...)` truly
exists.

This is not the case in some EMSCRIPTEN/WebASM builds where we want to
overwrite the HDF5 find logic manually. The missing check here prevents
that one can overwrite the search logic in exotic environments.
2022-02-15 10:44:29 -05:00
Silvio Traversaro
44f7238d5d FindGLUT: Use link directories for libs from pkg-config
Since commit f90d15458a (FindGLUT: Use pkg-config to find flags if
available, 2021-06-11, v3.22.0-rc1~469^2), the `GLUT_LIBRARIES` may come
from `pkg-config`, in which case they may be `-l` flags instead of
absolute paths.  Propagate `GLUT_LIBRARY_DIRS` to GLUT::GLUT too.

Fixes: #23229
2022-02-15 10:35:11 -05:00
Brad King
f76809c892 Merge topic 'cpack-rpm-component-var-off'
114a04f89c CPack/RPM: Honor CPACK_RPM_<component>_PACKAGE_ variables when set OFF

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6963
2022-02-15 09:54:57 -05:00
Brad King
b8189b59d7 Merge topic 'FindMatlab-mcr911'
b8d885ed0d FindMatlab: Fix version detection for MCR >= 9.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6976
2022-02-15 09:50:09 -05:00
Brad King
db5b4f40c3 Merge topic 'FindMatlab-mcr911' into release-3.23
b8d885ed0d FindMatlab: Fix version detection for MCR >= 9.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6976
2022-02-15 09:50:08 -05:00
Marc Chevrier
a2cfa2da4f GenEx/LINK_LIBRARY: Add features for framework support on Apple 2022-02-15 10:53:33 +01:00
Tom M
b8d885ed0d FindMatlab: Fix version detection for MCR >= 9.10
Recent MCR versions have the following `VersionInfo.xml`:

    <version>9.11.0.1837725</version>

Fix parsing of multiple digits in the version components
so that we do not mistake this for version `9.1`.
2022-02-14 10:23:33 -05:00
Brad King
1435d9f899 Merge topic 'FortranCInterface-macos-arch'
58af150a74 FortranCInterface: Fix mangling detection for x86_64 on arm64 macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6974
2022-02-14 09:59:46 -05:00