summaryrefslogtreecommitdiff
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'cuda-arch-off' into release-3.23Brad King2022-03-102-3/+3
|\ | | | | | | | | | | | | | | 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
| * CUDA: Restore support for CMAKE_CUDA_ARCHITECTURES=OFFRobert Maynard2022-03-092-3/+3
| | | | | | | | Fixes: #23309
* | Merge topic 'irsl-oneapi-linux' into release-3.23Brad King2022-03-101-0/+1
|\ \ | |/ |/| | | | | | | | | 3e84a06b3a IRSL: Add paths for Intel oneAPI compilers on Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7057
| * IRSL: Add paths for Intel oneAPI compilers on LinuxAttila Krasznahorkay2022-03-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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
| * Merge branch 'binutils-llvm-mt' into release-3.22Brad King2022-03-081-1/+2
| |\ | | | | | | | | | Merge-request: !7054
* | \ Merge topic 'binutils-llvm-mt' into release-3.23Brad King2022-03-091-1/+2
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 73d0d4e4b5 BinUtils: Avoid llvm-mt because it is missing 'mt' features we use Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7054
| * | BinUtils: Avoid llvm-mt because it is missing 'mt' features we useBrad King2022-03-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | IAR: Fix detection of modern C++ versionKenneth Soerensen2022-03-081-1/+3
| | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge topic 'FindMatlab-minver' into release-3.23Brad King2022-03-081-0/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | bb2c7b7dc0 FindMatlab: Fix logic error when minimum version is not found Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7047
| * | FindMatlab: Fix logic error when minimum version is not foundMichael Hirsch2022-03-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | Merge branch 'binutils-llvm-ar-clang-macos' into release-3.22Brad King2022-03-031-1/+4
| |\ \ | | |/ | | | | | | Merge-request: !7039
| * | Merge branch 'FindThreads-revert-libc-pthread-flag' into release-3.22Brad King2022-02-281-11/+8
| |\ \ | | | | | | | | | | | | Merge-request: !7025
* | \ \ Merge topic 'binutils-llvm-ar-clang-macos' into release-3.23Brad King2022-03-041-1/+4
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 29ea94e17c BinUtils: Avoid llvm-ar on Apple platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7039
| * | | BinUtils: Avoid llvm-ar on Apple platformsBrad King2022-03-031-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | Merge branch 'FindThreads-revert-libc-pthread-flag' into release-3.21Brad King2022-02-281-11/+8
| |\ \ \ | | | |/ | | |/| | | | | Merge-request: !7025
* | | | VS: Fix CUDA compiler id with CMAKE_CUDA_ARCHITECTURES={all,all-major}Brad King2022-03-022-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Merge topic 'cuda-arch-all' into release-3.23Brad King2022-03-021-21/+22
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | CUDA: Fix CMAKE_CUDA_ARCHITECTURES=all/all-major with NVCC 11.5+Brad King2022-03-011-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | CUDA: Simplify CMAKE_CUDA_ARCHITECTURES special value logicBrad King2022-02-281-20/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | Merge topic 'FindThreads-revert-libc-pthread-flag' into release-3.23Brad King2022-03-011-11/+8
|\ \ \ \ \ | |/ / / / |/| | / / | | |/ / | |/| | | | | | | | | | | | | | 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
| * | | FindThreads: Revert "Honor THREADS_PREFER_PTHREAD_FLAG when ... in libc"Brad King2022-02-281-11/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | GHS: Store full path of Integrity OS directoryFred Baksik2022-02-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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).
* | | | CheckTypeSize: Modernize and clarify documentationBrad King2022-02-181-29/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Spell out the list of result variables as a definition list rather than in prose. Fixes: #23247
* | | | Merge topic 'FindGLUT-link-dirs' into release-3.23Brad King2022-02-161-0/+3
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 44f7238d5d FindGLUT: Use link directories for libs from pkg-config Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6985
| * | | FindGLUT: Use link directories for libs from pkg-configSilvio Traversaro2022-02-151-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | FindHDF5: Tolerate failure during compiler interrogationAxel Huebl2022-02-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge topic 'FindMatlab-mcr911' into release-3.23Brad King2022-02-151-1/+1
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | b8d885ed0d FindMatlab: Fix version detection for MCR >= 9.10 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6976
| * | | FindMatlab: Fix version detection for MCR >= 9.10Tom M2022-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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`.
| * | | Merge branch 'backport-IntelLLVM-depfile-flags' into release-3.22Brad King2022-02-093-3/+3
| |\ \ \ | | | |/ | | |/| | | | | Merge-request: !6964
| * | | FindGSL: Improve version extraction regexمهدي شينون (Mehdi Chinoune)2022-02-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport commit 58f2708b90 (FindGSL: Improve version extraction regex, 2021-12-17) to the CMake 3.22 branch. Fixes: #23017
* | | | Merge topic 'FortranCInterface-macos-arch' into release-3.23Brad King2022-02-142-0/+19
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 58af150a74 FortranCInterface: Fix mangling detection for x86_64 on arm64 macOS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6974
| * | | | FortranCInterface: Fix mangling detection for x86_64 on arm64 macOSBrad King2022-02-112-0/+19
| | | | | | | | | | | | | | | | | | | | Fixes: #23218
* | | | | Merge topic 'GoogleTest-discovery-fix-escaping' into release-3.23Brad King2022-02-141-24/+17
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | 61929f936f GoogleTest: Fix escaping in test names Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6965
| * | | | GoogleTest: Fix escaping in test namesEvgeniy Shcherbina2022-02-111-24/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to add_command() being a macro it introduced excessive and nonobvious escaping in different parts of the script. Because of one of such places the resulting script would have an erroneous ${TEST_LIST} if the user data (in test parameters) had a semicolon. To eliminate this non-obvious escaping, add_command() was converted to function. Updated the escaping accordingly. Fixes: #23059
* | | | | Merge topic 'clang-cross-compile-windows-pdb' into release-3.23Brad King2022-02-101-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 641cb1093b Windows/Clang: Support PDB when cross-compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !6959
| * | | | | Windows/Clang: Support PDB when cross-compilingDeniz Bahadir2022-02-091-0/+1
| |/ / / /
* | | | | Merge branch 'backport-IntelLLVM-depfile-flags' into IntelLLVM-depfile-flagsBrad King2022-02-093-3/+3
|\ \ \ \ \ | |/ / / / |/| | / / | | |/ / | |/| |
| * | | IntelLLVM: Add dependencies on system header files on WindowsWilliam R. Dieter2022-02-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit a90d2a9eed (IntelLLVM: Add support for Intel LLVM-based compilers, 2020-11-02, v3.20.0-rc1~89^2~20) the IntelLLVM depfile generation flags were taken from `Platform/Windows-Intel-C`. Those flags were added by commit a624a3e1b3 (Ninja: Use deps=gcc for Intel Compiler on Windows, 2019-01-30, v3.14.0-rc1~30^2), which forgot to account for commit 6d74e7870b (Ninja: Add dependencies on system-provided header files, 2016-03-15, v3.6.0-rc1~265^2). The `-QMD` option generates Makefile dependencies. The `-QMMD` option generates Makefile dependencies, but excludes system header files. Part of the BuildDepends test includes a header, cmake_pch.hxx, that includes a second header, zot_pch.hxx. The test builds a pch file for cmake_pch.hxx, touches zot_pch.hxx, then verifes that cmake_pch.hxx.pch is regenerated based on the dependencies. The cmake_pch.hxx contains `#pragma system_header` before it includes zot_pch.hxx. `#pragma system_header` indicates that the portion of the file following the pragma is to be treated as a system header. When `-QMMD` is used to generate dependencies, the `#include` of zot_pch.hxx is ignored because it `-QMMD` says to ignore system headers. Using `-QMD` instead uses all headers when generating dependencies and causes this test to pass. The Clang configuration in Platform/Windows-Clang.cmake also uses the `-MD` option for generating pre-compiled headers, instead of `-MMD`. Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
| * | | Intel: Add dependencies on system header files on WindowsBrad King2022-02-092-2/+2
| | |/ | |/| | | | | | | | | | | | | | | | In commit a624a3e1b3 (Ninja: Use deps=gcc for Intel Compiler on Windows, 2019-01-30, v3.14.0-rc1~30^2) we forgot to account for commit 6d74e7870b (Ninja: Add dependencies on system-provided header files, 2016-03-15, v3.6.0-rc1~265^2).
* | | Merge topic 'GoogleTest-discover-type-params' into release-3.23Brad King2022-02-081-3/+10
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 073dd1bd81 GoogleTest: Change format for typed tests f28f738bd2 GoogleTest: Fix type param tests for suites with many cases Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6958
| * | | GoogleTest: Change format for typed testsEvgeniy Shcherbina2022-02-071-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before it would output a typed test as follows: Suit/Type.Case And now it would be: Suit.Case<Type> In case of NO_PRETTY_TYPES it would simply use the type number instead of its text representation: Suit.Case<0> The change is introduced to make sure CTest outputs tests in a similar fashion which is "*Suit.Case*" and angle brackets "<>" emphasize that we are dealing with a typed (template) kind.
| * | | GoogleTest: Fix type param tests for suites with many casesEvgeniy Shcherbina2022-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When there were many cases (two digits or more) the "prettier" would fail to recognize the pretty part leaving the test name unprocessed. The fix made sure the processing would work correctly, irrespective of the case number. Before the fix, for the following input: TypedSuite/1. # TypeParam = int case TypedSuite/10. # TypeParam = char case The output would be: TypedSuite/int.case TypedSuite/10. # TypeParam = char.case Now the output will be: TypedSuite/int.case TypedSuite/char.case
* | | | Merge topic 'default-extensions' into release-3.23Brad King2022-02-043-7/+4
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | 4ef6e27cb9 CompilerId: Fix default extensions check for Clang targeting MSVC ABI Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !6949
| * | | CompilerId: Fix default extensions check for Clang targeting MSVC ABIBrad King2022-02-033-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit fc3a1cbdd8 (CompilerID: Compiler extensions default detection, 2021-05-29, v3.22.0-rc1~52^2~2), extensions were assumed to be `OFF` for Clang targeting the MSVC ABI. However, the `clang` and `clang++` tools both seem to have extensions enabled by default even when targeting the MSVC ABI. This can be observed with the `RunCMake.CompileFeatures` test. It fails with the GNU-like `clang/clang++` front-end, but removing the above special case makes it pass. The test passes either way with the MSVC-like `clang-cl` front-end.
* | | | Merge topic 'ep-patch-USES_TERMINAL' into release-3.23Brad King2022-02-043-2/+19
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | cbb87e0a2c ExternalProject: Add support for USES_TERMINAL_PATCH keyword Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6940
| * | | ExternalProject: Add support for USES_TERMINAL_PATCH keywordCraig Scott2022-02-033-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This brings the patch step into line with all the others which already had their own `USES_TERMINAL_<step>` keyword. All steps (including patch) already have their own `LOG_<step>` keyword too, so the lack of `USES_TERMINAL_PATCH` was inconsistent.
* | | | Merge topic 'GoogleTest-discover-spaces-in-parameters' into release-3.23Brad King2022-02-041-5/+4
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | fd6b8fa40e GoogleTest: Preserve spaces in test parameters Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6941
| * | | GoogleTest: Preserve spaces in test parametersEvgeniy Shcherbina2022-02-031-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before the fix the gtest_discover_tests() function would strip the user data in test parameters (everything to the right of GetParam()) of spaces. Now the parameters aren't altered in any way. Fixes #23058
* | | | CheckPIESupported: Document version adding support for more languagesBrad King2022-02-031-2/+7
|/ / /
* | | Merge topic 'cuda_generic_arch_all'Brad King2022-02-024-78/+150
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8f64df0a7c CUDA: Generic all and all-major support Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !6816