Commit Graph

13031 Commits

Author SHA1 Message Date
Brad King
be4dcdf100 Merge topic 'FindMatlab-macos-rosetta'
1bc9b0f256 FindMatlab: accommodate Matlab running under Rosetta
8dcd14bb87 FindMatlab: simplify mexext find logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8063
2023-01-13 08:57:43 -05:00
Brad King
a547f315dd Merge topic 'deprecate-findunixcmds'
0847682c47 FindUnixCommands: Deprecate in favor of cmake -E

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8061
2023-01-13 08:53:30 -05:00
Brad King
ff7e813fc1 Merge topic 'implicit-includes'
607bccb4ef Restore implicit include directory extraction for adaptive relative paths

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8067
2023-01-13 08:45:38 -05:00
Brad King
1efb3c5870 Merge topic 'IntelLLVM-msvc-no-cxx11'
88f9fdcb03 IntelLLVM: Avoid unnecessary -Qstd=c++11 flag on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8069
2023-01-13 08:43:30 -05:00
Brad King
8cf8c24df2 Merge topic 'IntelLLVM-no-icpx-on-Windows'
870d89627f Help: Clarify compiler id distinction between Intel Classic and IntelLLVM
ea4cfb3b53 Merge branch 'backport-IntelLLVM-no-icpx-on-Windows'
8834e4d6a5 IntelLLVM: Avoid finding not-yet-supported icpx on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8041
2023-01-13 08:39:41 -05:00
Brad King
88f9fdcb03 IntelLLVM: Avoid unnecessary -Qstd=c++11 flag on Windows
The IntelLLVM compiler, for compatibility with MSVC on Windows, always
runs with support for at least C++14.  The `-Qstd=c++11` flag just
causes a warning that it is unused.

Fixes: #24316
2023-01-12 15:58:14 -05:00
Brad King
607bccb4ef Restore implicit include directory extraction for adaptive relative paths
Update the logic added by commit ef41d49812 (Fix implicit include
directory extraction for adaptive relative paths, 2019-04-08,
v3.14.2~5^2) to account for the new `try_compile` work directory used
for the ABI check since commit 2edf0fc6d7 (Modules: Use new
keyword-dispatched try_compile signature, 2022-09-13,
v3.25.0-rc1~144^2).

Paths relative to the work directory will now have one more `../`
in them, so update the test data to match.

Fixes: #24279
2023-01-12 12:05:42 -05:00
FeRD (Frank Dana)
0847682c47 FindUnixCommands: Deprecate in favor of cmake -E
`${CMAKE_COMMAND} -E` subcommands are cross-platform replacements.

Fixes: #24263
2023-01-12 11:34:48 -05:00
Brad King
ea4cfb3b53 Merge branch 'backport-IntelLLVM-no-icpx-on-Windows' 2023-01-12 10:24:06 -05:00
Michael Hirsch
8834e4d6a5 IntelLLVM: Avoid finding not-yet-supported icpx on Windows
Intel oneAPI 2023.0 added the `icpx` compiler front-end on Windows.
It uses a GNU-like command-line, and is not yet supported by CMake.
Avoid finding `icpx` as the CXX compiler on Windows until support
is added.

Fixes: #24266
Issue: #24314
2023-01-12 10:23:38 -05:00
scivision
1bc9b0f256 FindMatlab: accommodate Matlab running under Rosetta
fixes #24312
2023-01-12 09:47:09 -05:00
Brad King
a46a5aedee Merge topic 'bug/cuda-toolkit-support-arm64-sbsa'
743d4181b4 FindCUDAToolkit: Support cross-compilation to sbsa-linux
e60fa80fbe FindCUDAToolkit: Handle CUDA::nvToolsExt not existing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8057
2023-01-12 09:29:28 -05:00
Brad King
c8f42171f2 Merge topic 'cuda-12'
4d90f65b24 CUDA: Update set of architectures supported by CUDA 12

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8031
2023-01-12 09:28:05 -05:00
Brad King
ef2220bf88 Merge topic 'FindwxWindows-typos'
256262876b FindwxWindows: Fix comment typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8052
2023-01-12 09:26:35 -05:00
Brad King
b09f2f25b7 Merge topic 'frontend-variant-always'
e4fcdfa301 Set CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT on single-variant compilers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8036
2023-01-12 09:22:46 -05:00
Brad King
d696b9dbcc Merge topic 'findmatlab_system_include'
6683c20f22 FindMatlab: Add SYSTEM include flag for matlab_add_mex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8039
2023-01-12 09:21:37 -05:00
Brad King
cc988d81a4 Merge topic 'FindBoost-1.81'
a97032c4e7 FindBoost: Add Boost 1.81 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Christoph Grüninger <foss@grueninger.de>
Merge-request: !8056
2023-01-12 09:20:06 -05:00
scivision
8dcd14bb87 FindMatlab: simplify mexext find logic
This eliminates an explicit for() loop
2023-01-12 08:41:13 -05:00
leha-bot
a97032c4e7 FindBoost: Add Boost 1.81 support
Update the list of known versions.

There is a new header-only library, Boost.URL. It has no
dependencies and has a core header `<boost/url.hpp>`.

Run the command

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

to extract dependencies from the 1.81.0 source tree.
They are the same as 1.80's dependencies, so just update
the version check for warning about newer versions.
2023-01-11 17:31:33 -05:00
xiny
4d90f65b24 CUDA: Update set of architectures supported by CUDA 12
Remove architectures 35 and 37 for CUDA 12.

Architecture 21 is not in CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR so there is
no need to remove it.
2023-01-11 16:47:30 -05:00
lilinjie
256262876b FindwxWindows: Fix comment typos 2023-01-11 16:27:04 -05:00
Jorrit Olthuis
6683c20f22 FindMatlab: Add SYSTEM include flag for matlab_add_mex
Add the `SYSTEM` flag for include directories provided by MATLAB, as the
the pragmas used are not compatible with GCC and generate a warning.

Fixes: #24166
2023-01-11 15:26:19 -05:00
Russell Greene
e4fcdfa301 Set CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT on single-variant compilers
The `GNU` and `MSVC` compilers obviously use their own front-end
command-line style.  Also set this for `AppleClang`.

Fixes: #24232
2023-01-11 14:50:40 -05:00
Robert Maynard
743d4181b4 FindCUDAToolkit: Support cross-compilation to sbsa-linux
Fixes #24192
2023-01-11 11:27:37 -05:00
Robert Maynard
e60fa80fbe FindCUDAToolkit: Handle CUDA::nvToolsExt not existing 2023-01-11 11:27:37 -05:00
FeRD (Frank Dana)
87778d2da5 Help: Enhance UseSWIG module documentation
* Add section headings
* Add TOC (HTML only)
* Move `swig_link_libraries()` to "Deprecated commands"
  section at end of docs, document as deprecated in favor of
  `target_link_libraries()` in all cases.
2022-12-22 06:10:22 -05:00
Craig Scott
c1294454e5 Merge topic 'doc-SYSTEM'
dfab263825 Help: Clarify and update SYSTEM-related docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8027
2022-12-19 15:57:22 -05:00
Brad King
696c3ed3d3 Merge topic 'FindHDF5-C-with-only-CXX'
14c46fb16a FindHDF5: Find C component with only CXX compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8015
2022-12-17 08:46:23 -05:00
Craig Scott
dfab263825 Help: Clarify and update SYSTEM-related docs 2022-12-17 20:51:25 +11:00
Brad King
5f8e4de696 ASM_MARMASM: Populate MSVC debug information format abstraction table
In commit 3166547cf6 (ASM_MARMASM: Add support for Microsoft ARM
assembler language, 2022-10-14) we overlooked populating the runtime
library selection flags for the Microsoft ARM assembler, needed since
commit 0e96a20478 (MSVC: Add abstraction for debug information format,
2022-08-25, v3.25.0-rc1~142^2~1).  Its compiler id is `MSVC`, so our
generators expect the table to be populated.  It only supports
`Embedded` debug info.  Use empty flags for the other formats.

Without this fix, enabling the `ASM_MARMASM` language with policy
`CMP0141` set to `NEW` causes an error due to the missing table entries.

Issue: #24249
2022-12-15 14:04:54 -05:00
Brad King
f62a0f53bf Merge branch 'backport-masm-debug-format' into masm-debug-format 2022-12-15 11:55:09 -05:00
Brad King
98ba122a30 ASM_MASM: Populate MSVC debug information format abstraction table
In commit 0e96a20478 (MSVC: Add abstraction for debug information
format, 2022-08-25, v3.25.0-rc1~142^2~1) we overlooked populating the
runtime library selection flags for the Microsoft assembler.  Its
compiler id is `MSVC`, so our generators expect the table to be
populated.  It only supports `Embedded` debug info.  Use empty flags for
the other formats.

Without this fix, enabling the `ASM_MASM` language with policy `CMP0141`
set to `NEW` causes an error due to the missing table entries.

Fixes: #24249
2022-12-15 11:53:11 -05:00
Christoph Junghans
14c46fb16a FindHDF5: Find C component with only CXX compiler
For CXX-only projects it is sometimes useful to detect the C
component even with just a CXX compiler.

Fixes: #24241
2022-12-14 10:00:51 -07:00
Brad King
7ca90d04fc Merge topic 'find_cudatoolkit_add_nvjitlink'
d37d9c098c FindCUDAToolkit: Support the new `nvJitLink` library in CUDA 12

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8014
2022-12-14 09:00:29 -05:00
Brad King
29c4690e0a Merge topic 'cuda-nvcc-cuda20'
0aeeb8160c CUDA: Add support for cuda_std_20 for nvcc 12.0+

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8008
2022-12-14 08:58:55 -05:00
Robert Maynard
0aeeb8160c CUDA: Add support for cuda_std_20 for nvcc 12.0+
CUDA 12.0 has been released with support for `-std=c++20`.
2022-12-13 10:18:15 -05:00
Robert Maynard
d37d9c098c FindCUDAToolkit: Support the new nvJitLink library in CUDA 12 2022-12-12 13:28:50 -05:00
Brad King
e094bff983 Merge topic 'FindOpenSSL-static-z'
1b7804edd0 FindOpenSSL: use extra dependencies from pkg-config as well

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7986
2022-12-06 08:05:53 -05:00
Brad King
f1f064b7b2 Merge topic 'cxx-module-map-clang'
2c558cfd1b gitlab-ci: add CI jobs for Clang with C++20 modules
abd42e9cfc ci: add a Docker container for clang support of C++20 modules
51093f3002 Clang-FindBinUtils: also find `clang-scan-deps`
0b333de923 ci: add C++ module rules file for Clang
21b9fb1e8c cmCxxModuleMapper: support the `clang` module map format
9c66224668 cmNinjaTargetGenerator: skip setting `depfile` for `none` scantypes
9123a0991f cmNinjaTargetGenerator: use `.clear()` to empty out some strings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !7978
2022-12-06 08:04:18 -05:00
Brad King
b82f9dce70 Merge topic 'CheckSymbolExists-restore-newline'
9273b8f421 CheckSymbolExists: Restore newline at end of test source

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Petr Nechaev <petr.nechaev@cogentembedded.com>
Merge-request: !7979
2022-12-05 12:51:24 -05:00
Brad King
60fc165dcb Merge topic 'CheckSymbolExists-restore-newline' into release-3.25
9273b8f421 CheckSymbolExists: Restore newline at end of test source

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Petr Nechaev <petr.nechaev@cogentembedded.com>
Merge-request: !7979
2022-12-05 12:51:23 -05:00
Rolf Eike Beer
1b7804edd0 FindOpenSSL: use extra dependencies from pkg-config as well
This is important if OpenSSL is linked against an external zlib.
2022-12-05 13:00:41 +01:00
Craig Scott
d09dc11911 Merge topic 'FetchContent-SYSTEM'
4b85141f83 FetchContent: Don't pass SYSTEM through to sub-build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7977
2022-12-05 06:23:28 -05:00
Ben Boeckel
51093f3002 Clang-FindBinUtils: also find clang-scan-deps
`clang-scan-deps` will be required for C++20 module scanning purposes.
2022-12-02 13:04:34 -05:00
Andrey Vostrikov
9273b8f421 CheckSymbolExists: Restore newline at end of test source
Refactoring in commit db76876db5 (Modules: Use new SOURCES_FROM_*
try_compile (1/2), 2022-09-26, v3.25.0-rc1~74^2~1) accidentally dropped
the final newline of the test source, which was previously provided by
the input to `configure_file`.  The C standard requires a newline at the
end of file, so add one explicitly.

Signed-off-by: Andrey Vostrikov <andrey.vostrikov@cogentembedded.com>
2022-12-02 09:20:09 -05:00
Craig Scott
4b85141f83 FetchContent: Don't pass SYSTEM through to sub-build
If we don't filter out SYSTEM from the arguments we pass
through to ExternalProject_Add(), it gets appended as a
list item to whatever arguments precede it because
ExternalProject_Add() doesn't recognize it as a keyword.

Fixes: #24201
2022-12-02 18:41:18 +11:00
Brad King
2a139018ce Merge topic 'find_cudatoolkit_avoid_nvhpc_symlinks'
9d012b1f69 FindCUDAToolkit: Ensure that paths provided have no symlinks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7974
2022-12-01 08:02:49 -05:00
Brad King
5f7b953342 Merge topic 'watcom-win16'
ef9ce3aadb OpenWatcom: Add support for 16-bit Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7975
2022-12-01 08:01:49 -05:00
Brad King
c44bae98cd Merge topic 'msys-pkgconf'
903ae3c71b MSYS Makefiles: Modernize search paths for common MSYS 'make' locations
2057066e05 FindMsys: Modernize search paths for common MSYS locations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7955
2022-12-01 08:00:24 -05:00
jbs
ef9ce3aadb OpenWatcom: Add support for 16-bit Windows
Add support for NE Win16 binaries.  We already support 16-bit DOS and OS/2.
2022-11-30 18:22:48 -05:00