summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | CUDA: Actually use reverse architecture deprecation order for ClangRaul Tambre2022-01-271-1/+1
| |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | The code now matches what the comment describes. This mistake seems to have been present since the initial introduction in commit 5df21adf (CUDA: Add support for Clang compiler, 2020-05-07).
* | | | | FindCUDA: Make version extraction robust to empty outputDavid Berard2022-01-261-2/+2
| | | | | | | | | | | | | | | | | | | | I found that `NVCC_OUT` was sometimes empty when I was building.
* | | | | Merge topic 'FindMPI-static-first'Brad King2022-01-261-1/+1
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | 036d0cbbde FindMPI: Place static first in mpi test source Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6900
| * | | | FindMPI: Place static first in mpi test sourceBrad King2022-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the `static` added by commit 8cce0ad32f (FindMPI: Fix missing static warning in the mpi test source, 2021-06-30, v3.22.0-rc1~502^2) to the beginning of the line. Fixes: #23141
* | | | | Merge topic 'FindXercesC-NAMES_PER_DIR'Brad King2022-01-261-0/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 47cbc08594 FindXercesC: Use NAMES_PER_DIR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6898
| * | | | | FindXercesC: Use NAMES_PER_DIRjpfeuffer2022-01-251-0/+2
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | This was missing for us for Xerces. Issue: #20882
* | | | | Merge topic 'FindCUDAToolkit-doc'Brad King2022-01-251-3/+1
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | 5067b6b6ee FindCUDAToolkit: Remove duplicated targets in docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6892
| * | | | FindCUDAToolkit: Remove duplicated targets in docsGuo2022-01-241-3/+1
| | | | | | | | | | | | | | | | | | | | Also remove an unfinished sentence.
* | | | | Merge topic 'cmp0128_cuda'Brad King2022-01-242-2/+2
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | ee1396e29e CMP0128: Add flag in OLD mode even when standard matches the default b2c25de8e0 CMP0128: Avoid test code duplication 3a089cd256 CMP0128: Prefix test names with mode e13dd52535 XL: Detect default extensions mode for legacy compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6890
| * | | XL: Detect default extensions mode for legacy compilerRaul Tambre2022-01-232-2/+2
| | | | | | | | | | | | | | | | | | | | The legacy non-Clang variant seems to support a GNU-like extensions mode, which is the default. Enable detection for it.
* | | | ExternalProject: Move inline scripts to separate filesCraig Scott2022-01-226-222/+337
| | | | | | | | | | | | | | | | | | | | | | | | This makes the scripts easier to work on, since the separate files don't require the extra level of escaping that the inlined code did. This also means the scripts can be rendered with appropriate syntax highlighting in IDEs, etc.
* | | | ExternalProject: Ensure _ep_set_directories records cmake pathsCraig Scott2022-01-221-0/+5
| | | |
* | | | ExternalProject: Move existing step scripts to separate subdirectoryCraig Scott2022-01-225-8/+8
| |/ / |/| | | | | | | | | | | This is in preparation for moving more inline content to separate scripts as well. Having them in a separate subdirectory is consistent with other modules and will make them easier to find and work with.
* | | Merge topic 'CheckPIESUpported-supports-SYSROOT'Brad King2022-01-204-11/+40
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 219dde4ea8 CheckPIESupported: now uses any SYSROOT settings 4fa105d34e Check{Compiler,Linker}Flag: Add possibility to retrieve check outputs Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6877
| * | | CheckPIESupported: now uses any SYSROOT settingsMarc Chevrier2022-01-191-10/+16
| | | | | | | | | | | | | | | | Fixes: 23053
| * | | Check{Compiler,Linker}Flag: Add possibility to retrieve check outputsMarc Chevrier2022-01-193-1/+24
| | | |
* | | | Merge topic 'FortranCInterface-gcc-12-lto'Brad King2022-01-201-0/+13
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | 6a0ce19ce1 FortranCInterface: Fix compatibility with GCC gfortran 12 LTO Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6879
| * | | FortranCInterface: Fix compatibility with GCC gfortran 12 LTOBjörn Esser2022-01-191-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since version 12.0 the GCC Fortran compiler has implemented "WG5/N1942", which causes, if link-time opmization is enabled, obfuscation of hard-coded string values in the compiler objects and its resulting ELF-binaries. This causes the CMake-internal detection of the mangling scheme for the naming of subroutines to fail. Thus we must ensure to have any link-time optimization features to be disabled on the executable file we perform the detection on. The static libraries, however, must be build with LTO and non-LTO objects, as that will ensure the verify step will operate on IPO objects, if building those is requested by the system compiler flags. Fixes: #23123 Signed-off-by: Björn Esser <besser82@fedoraproject.org>
* | | | CPack/DMG: Add explicit option to use CPACK_RESOURCE_FILE_LICENSE for SLABrad King2022-01-181-0/+5
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since macOS 12.0, the ``hdiutil udifrez`` and ``hdiutil udifderez`` commands to embed and extract resources in a disk image are deprecated. The CPack DragNDrop Generator uses these to attach the SLA specified by the `CPACK_RESOURCE_FILE_LICENSE` option. Since that option is shared by multiple CPack generators, we cannot deprecate it. Instead, add an explicit option to control the behavior. This will give projects a way to package on future macOS versions that remove the commands. In order to provide a long-term transition away from attaching SLAs to disk images, update `cpack` to default this behavior to OFF. To retain compatibility for CMake projects, teach the CPack module to default the option to ON. Later a policy can be added to change the default. Issue: #22978
* | | Merge topic 'cuda_host_env'Brad King2022-01-181-9/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 70f5d9eb49 CUDA: Fix CMAKE_CUDA_COMPILER_ARG1 cache description ad6cd1074b Help: Correct CUDAHOSTCXX and CUDAARCHS as having higher precedence Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6872
| * | | CUDA: Fix CMAKE_CUDA_COMPILER_ARG1 cache descriptionRaul Tambre2022-01-151-9/+9
| | | | | | | | | | | | | | | | Also corrected the misleading indentation.
* | | | Merge topic 'CheckLinkerFlag-update-implementation'Brad King2022-01-184-111/+116
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9d1b9a4aa1 CheckLinkerFlag: rely now on internal implementation 660e0d80ae internal/CheckCompilerFlag: rely on common configuration Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6860
| * | | | CheckLinkerFlag: rely now on internal implementationMarc Chevrier2022-01-142-47/+37
| | | | | | | | | | | | | | | | | | | | | | | | | This internal implementation share the configuration with CheckCompilerFlag.
| * | | | internal/CheckCompilerFlag: rely on common configurationMarc Chevrier2022-01-142-64/+79
| | | | | | | | | | | | | | | | | | | | | | | | | Extract configuration step from the CheckCompilerFlag command to enable to share it with future CheckLinkerFlag implementation
* | | | | Merge topic 'IntelLLVM-windows-link-with-driver'Brad King2022-01-181-0/+13
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | 79921fb00c IntelLLVM: Set linker to compiler driver for Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6866
| * | | | IntelLLVM: Set linker to compiler driver for WindowsWilliam R. Dieter2022-01-141-0/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For IntelLLVM, linking with the compiler driver is preferred over using the linker directly. This is especially true when doing offload to a target accelerator, which can produce object files that the regular linker will not handle properly. Windows-IntelLLVM relies on Windows-MSVC.cmake for many definitions. This commit does not change that, but does override the MSVC defaults for linking executables, shared libraries, and static libraries so that CMake will use the compiler driver instead of the linker. Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
* | | | Merge topic 'cudatoolkit_find_cufft_static_nocallback'Brad King2022-01-131-0/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a4126d1c01 CUDAToolkit: Add CUDA::cufft_static_nocallback target Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !6856
| * | | | CUDAToolkit: Add CUDA::cufft_static_nocallback targetRobert Maynard2022-01-121-0/+4
| |/ / / | | | | | | | | | | | | Fixes: #23098
* | | | FindCUDAToolkit: depend cublas on cublasLt for CUDA 11.0+Robert Maynard2022-01-121-0/+7
|/ / /
* | | Merge topic 'msvc-isystem'Brad King2022-01-122-2/+2
|\ \ \ | |/ / | | | | | | | | | | | | | | | 3a8b6653dc MSVC: Use -external:I flag without space to support Clang tools Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6855
| * | MSVC: Use -external:I flag without space to support Clang toolsBrad King2022-01-112-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit f29e1874ad (Compiler/MSVC: use the `-external:I` flag for system includes, 2020-05-19, v3.22.0-rc1~593^2) we use the new flag followed by the include directory as a separate argument. Some versions of `clang-cl` and `clang-tidy` do not support the flag unless the include directory is attached to it, so use that form instead. Fixes: #22979
* | | Merge topic 'GoogleTest-discover-sq-brackets'Brad King2022-01-121-13/+55
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8b85b10fb3 GoogleTest: Add handling for square brackets in test names 8f977a5c92 GoogleTest: Generalize test samples Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6842
| * | | GoogleTest: Add handling for square brackets in test namesEvgeniy Shcherbina2022-01-111-13/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a test name contains a square bracket (due to parameters) then it breaks gtest_discovery_test() function in some not-so-predictable way. That happens due to the special meaning these brackets have in the CMake language and they can't be escaped universally. So the following treatment has been implemented: * Every occurrence of ('[' | ']') in a test name gets replaced with the corresponding placeholder ("__osb_*" | "__csb_*") before the Google Test output processing and gets replaced back before adding a new test to CTest, keeping the original test name intact in the CTest output. The placeholders are chosen that way to minimize the chance of clashing with something in the user tests but even if the default ones would clash with something then they are enhanced to not clash with anything (hence "_*" at the placeholder's end). * The GTest output gets searched for the default test name guards ("[=[" | "]=]") and if they are found a new one gets generated until the one is found which can safely encompass any test name. The search is quite simple: find the least amount of '=' which would allow escaping any test. * The resulting ${TEST_LIST} variable will contain every test but tests with square brackets as there is no way to make sure such tests won't break the list altogether. Fixes: #23039
* | | | Merge topic 'FindLTTngUST-fix-version-detect'Brad King2022-01-111-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4ce5765a86 FindLTTngUST: Fix version component extraction Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6828
| * | | | FindLTTngUST: Fix version component extractionNorbert Lange2022-01-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The regex was greedy and slurped away all but the last digit, so 2.13.1 was for ex. detected as 2.3.1. Fix this by expecting preceding whitespace.
* | | | | Fortran: Support searching for the `nvfortran` executableRobert Maynard2022-01-101-2/+4
| |/ / / |/| | | | | | | | | | | Instead of relying on the PGI symlinks (pgf95/pgf90/...) to always exist.
* | | | ExternalProject: Fix misuse of IS_NEWER_THAN in timestamp checksCraig Scott2022-01-081-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change was originally made in 404cddb7bb (ExternalProject: Fix misuse of IS_NEWER_THAN in timestamp checks, 2021-02-21), but was reverted by 57d442e182 (Revert ExternalProject and FetchContent refactoring, 2021-03-10) due to regressions from other changes. Reapply this fix on its own, since it is still valid. When using a file system which only has second resolution timestamps, there is a reasonably high likelihood of timestamps being the same. The IS_NEWER_THAN test returns true when timestamps are the same, so don't redo downloads when they match exactly.
* | | | Merge topic 'GoogleTest-dots'Brad King2022-01-071-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1f9554d4e9 GoogleTest: Fix regex matching all dots in the suite name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6822
| * | | | GoogleTest: Fix regex matching all dots in the suite nameFrancesco Guastella2022-01-071-1/+1
| |/ / /
* | | | Merge topic 'cmcldeps-cross'Brad King2022-01-071-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d49e168e1b Ninja: Do not use cmcldeps for RC on non-Windows hosts Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Dmitry Mikushin <dmitry@kernelgen.org> Merge-request: !6843
| * | | | Ninja: Do not use cmcldeps for RC on non-Windows hostsMartin Storsjö2022-01-061-1/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `cmcldeps` executable is only built on Windows. If running MSVC on a different OS (with various compatibility wrapping), don't try to use `cmcldeps`, as the executable doesn't exist. Fixes: #21760
* | | | Merge topic 'msvc-arm64ec'Brad King2022-01-071-1/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 26f52508f2 MSVC: update arm64ec default flags and lib Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6841
| * | | | MSVC: update arm64ec default flags and libmoyo19972022-01-061-1/+5
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the support added by commit 4ea3a88625 (MSVC: Add support for targeting ARM64EC, 2020-12-30, v3.20.0-rc1~121^2). Add `softintrin.lib` to `CMAKE_C_STANDARD_LIBRARIES_INIT`. Remove `/D_ARM64EC_WORKAROUND` from the flags as it was only ever needed in preview versions of VS. Issue: #21724
* | | | Merge topic 'armasm-6.17'Brad King2022-01-071-1/+1
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | c2777ed008 ASM: Fix identification of armasm 6.17+ Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6833
| * | | ASM: Fix identification of armasm 6.17+Jukka Jalkanen2022-01-061-1/+1
| | | | | | | | | | | | | | | | Spelling of "ARM Compiler" changed to "Arm Compiler".
| * | | Merge topic 'FindBoost-1.78' into release-3.22Brad King2021-12-211-1/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d45667d459 FindBoost: Do not warn about now-supported version 1.78 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6819
* | | | | CheckCompilerFlags: Catch linker warning about ignored flagsCraig Scott2022-01-021-0/+1
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | Example warning from arm64 macOS that this will now catch: ld: warning: -no_pie ignored for arm64 Fixes: #22961
* | | | Merge topic 'cpack-freebsd-pkg'Brad King2021-12-221-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c3715e08e4 FreeBSD: tidy up a76f19d5e8 FreeBSD: handle new package-file-suffix d5ae2f9754 FreeBSD: fix up the package name 0ac1ac798e FreeBSD: migrate to newer pkg_create(3) API Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Semphriss <dev.semphris@gmail.com> Merge-request: !5854
| * | | | FreeBSD: fix up the package nameAdriaan de Groot2021-12-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using libpkg, the output filename is determined by libpkg itself, based on information in the manifest: package name and version, basically. This doesn't necessarily match the name that CMake has determined via CPACK_TEMPORARY_PACKAGE_FILE_NAME or CPACK_PACKAGE_FILE_NAME. So reset the CMake-determined list to match what libpkg will do.
* | | | | Merge topic 'FindGLUT-include-dirs'Brad King2021-12-211-18/+47
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6fda93faf8 FindGLUT: Provide modern-named GLUT_INCLUDE_DIRS result variable 641b3f4101 FindGLUT: Modernize documentation layout 924b2999a1 FindGLUT: Move mark_as_advanced calls closer to find calls Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6820