summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* GoogleTest: Replace SEND_ERROR with FATAL_ERRORCraig Scott2020-06-241-1/+1
| | | | We want to fail and halt immediately upon any error, not continue past a fatal problem.
* Merge topic 'VxWorks-platform-id' into release-3.18Brad King2020-06-231-0/+3
|\ | | | | | | | | | | | | b22586be01 VxWorks: Add Platform ID for Modules/CMakePlatformId.h.in Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4922
| * VxWorks: Add Platform ID for Modules/CMakePlatformId.h.inLihua Zhao2020-06-231-0/+3
| |
* | Merge topic 'fix-win-flex-bison' into release-3.18Brad King2020-06-232-2/+2
|\ \ | | | | | | | | | | | | | | | | | | 0faa2b9870 Find{FLEX,BISON}: Add 'win-' executable names Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4931
| * | Find{FLEX,BISON}: Add 'win-' executable namesYan2020-06-222-2/+2
| | | | | | | | | | | | | | | Distributions of these tools on Windows now use a `win-` prefix instead of the previously-seen `win_` prefix. Search for both.
* | | Merge topic 'FindCUDA-11' into release-3.18Brad King2020-06-231-2/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 1d9f2f9714 FindCUDA: Do not search for the deprecated nppicom when CUDA >= 11 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4929
| * | | FindCUDA: Do not search for the deprecated nppicom when CUDA >= 11Robert Maynard2020-06-221-2/+5
| | |/ | |/| | | | | | | | | | | | | | | | The nppicom library has been removed in preference of nvjpeg starting in CUDA 11. Fixes: #20845
* | | Merge topic 'CUDAToolkit-cuda-11' into release-3.18Brad King2020-06-191-1/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | b284a3c764 CudaToolkit: Update for new/removed libraries in CUDA 11 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4917
| * | | CudaToolkit: Update for new/removed libraries in CUDA 11Robert Maynard2020-06-181-1/+5
| |/ /
* | | CUDA: Fix CMAKE_CUDA_COMPILER_TOOLKIT_ROOT detection in Visual StudioBrad King2020-06-181-108/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using a Visual Studio generator, we do not know the path to `CMAKE_CUDA_COMPILER` until after the compiler id detection project extracts it. However, based on the VS toolchain configuration we know that the compiler id will be NVIDIA, so use that to drive the CUDA architecture flag logic. After the main compiler id step we know `CMAKE_CUDA_COMPILER`, so `CMAKE_CUDA_COMPILER_TOOLKIT_ROOT` can then be computed.
* | | CUDA: Re-order some logic for determining the compilerBrad King2020-06-181-11/+9
| | |
* | | CUDA: Remove unused variables while determining compilerBrad King2020-06-181-2/+0
| | |
* | | CUDA: Simplify CMAKE_CUDA_COMPILER_TOOLKIT_ROOT computationBrad King2020-06-181-1/+1
| | |
* | | CUDA: Skip the entire search for nvcc when it is CMAKE_CUDA_COMPILERBrad King2020-06-181-80/+80
| | |
* | | CUDA: Fix NVCC executable search during compiler detectionRaul Tambre2020-06-181-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | The result variable was `CUDAToolkit_NVCC_EXECUTABLE` instead of `_CUDA_NVCC_EXECUTABLE`, which the rest of the code used. Also, we can simply `set()` the `_CUDA_NVCC_EXECUTABLE` value without searching. Fixes: #20847
* | | Merge topic 'doc-3.18-fixups' into release-3.18Brad King2020-06-181-4/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 947cfc732d Help: Explicitly say transaction, don't abbreviate to trans 90c73479bc Help: Correct and condense examples for VS_SOLUTION_DEPLOY 0420de10b5 Help: Add missing cross-referencing for generator expressions 013f7a2647 Help: Formatting, crossref for FRAMEWORK_MULTI_CONFIG_POSTFIX_<CONFIG> a12d53acf3 Help: Add missing PCH_WARN_INVALID docs and related cleanups 95a16f7805 Help: Fix formatting error and consistency for gtest_discover_tests() Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4915
| * | | Help: Fix formatting error and consistency for gtest_discover_tests()Craig Scott2020-06-181-4/+4
| |/ /
* | | ARMClang: Fix typo in -Xlinker flagOsama Moharam2020-06-181-1/+1
|/ / | | | | | | | | Fix a typo from commit ef816610be (ARMClang: allow fallback to -march and correct setting of --cpu flags, 2020-06-03, v3.18.0-rc1~18^2).
* | CUDA: Throw error for Clang on WindowsRaul Tambre2020-06-161-0/+4
| | | | | | | | | | | | Supporting compiling on Windows is more complicated than initially expected, so it won't make it into CMake 3.18. Add a helpful error for users.
* | Merge topic 'cuda_clang_toolkit_path' into release-3.18Brad King2020-06-154-260/+415
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ec59fb6c31 CUDA: Determine CUDA toolkit location for NVCC 0a056246a1 CUDA: Pass toolkit path to Clang 9c43972127 FindCUDAToolkit: Avoid unnecessary temporary variable computing binary dir 9eebb5b8b2 FindCUDAToolkit: Remove unnecessary checks around searches 8f01fe7bf1 FindCUDAToolkit: Use list(SORT) to sort in natural order 8c144fe9ad FindCUDAToolkit: Compute CUDAToolkit_INCLUDE_DIR instead of searching 403f8d31e3 FindCUDAToolkit: Add CUDAToolkit_LIBRARY_ROOT 6636693134 FindCUDAToolkit: Re-unify with Internal/CUDAToolkit Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4828
| * | CUDA: Determine CUDA toolkit location for NVCCRaul Tambre2020-06-123-123/+127
| | | | | | | | | | | | | | | Similar to how we already do for Clang. Avoids a lot of redundant work in FindCUDAToolkit.
| * | CUDA: Pass toolkit path to ClangRaul Tambre2020-06-122-235/+268
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang isn't very good at finding the installed CUDA toolkit. The upstream recommendation is that we should pass the toolkit explicitly. Additionally: * Avoids Clang having to search for the toolkit on every invocation. * Allows the user to use a toolkit from a non-standard location by simply setting CUDAToolkit_ROOT. The same way as with FindCUDAToolkit. Clang wants the directory containing the device library and version.txt as the toolkit path. We thus pass the newly introduced CUDAToolkit_LIBRARY_ROOT as the toolkit path. We save CUDAToolkit_ROOT_DIR and CUDAToolkit_LIBRARY_ROOT on Clang to have them available in try_compile() and avoid unnecessary re-searching or a possibly different installation being found in FindCUDAToolkit. This however means that the selected toolkit can't be changed after the initial language enablement. We now determine CUDA compiler ID before doing actual detection, as we don't want to spend time finding the CUDA toolkit for NVIDIA. Implements #20754.
| * | FindCUDAToolkit: Avoid unnecessary temporary variable computing binary dirRaul Tambre2020-06-121-6/+4
| | |
| * | FindCUDAToolkit: Remove unnecessary checks around searchesRaul Tambre2020-06-122-21/+15
| | | | | | | | | | | | | | | find_*() don't search if the result variable is already set. Remove the if()s around such cases.
| * | FindCUDAToolkit: Use list(SORT) to sort in natural orderRaul Tambre2020-06-122-72/+8
| | | | | | | | | | | | | | | We had a custom loop to sort in the natural order. Since CMake 3.18 this is supported natively by CMake and simplifies the code significantly.
| * | FindCUDAToolkit: Compute CUDAToolkit_INCLUDE_DIR instead of searchingRaul Tambre2020-06-122-8/+14
| | | | | | | | | | | | | | | | | | | | | We can avoid searching for this since CUDAToolkit_TARGET_DIR always contains the include/ directory. But add a warning just in case. Also apply this in CMakeDetermineCUDACompiler for Clang code.
| * | FindCUDAToolkit: Add CUDAToolkit_LIBRARY_ROOTRaul Tambre2020-06-122-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | On scattered installations version.txt and nvvm are located at this location. This may be useful to users and will allow us in the future to parse version.txt instead of invoking nvcc to figure out the CUDA toolkit version. We also add it to CMakeDetermineCUDACompiler in preparation for future use by Clang code.
| * | FindCUDAToolkit: Re-unify with Internal/CUDAToolkitRaul Tambre2020-06-123-233/+390
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A portion of FindCUDAToolkit was previously split in commit dc2eae1f (FindCUDAToolkit: Factor out discovery code into a separate file, 2020-04-22) out into Internal/CUDAToolkit to allow re-use of the code in CMakeDetermineCUDACompiler for Clang support. This has turned out to be a bad solution due to Clang requiring quite a bit of special handling and special handling for NVCC leaking out from Internal/CUDAToolkit into the Clang code using it. Thus it seems better to re-unify this code and duplicate the parts of the code necessary for Clang where it's required. This will help us get logic correct for both NVCC and CUDA handling. We can still unify the common parts in the future once the code has matured.
* | | Merge topic 'cuda_architectures_disable' into release-3.18Brad King2020-06-151-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 877a92e968 CUDA: Add support for disabling CUDA_ARCHITECTURES Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4886
| * | | CUDA: Add support for disabling CUDA_ARCHITECTURESRaul Tambre2020-06-151-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | The ability to disable adding architectures completely for packaging purposes and cases requiring passing the architectures flags explicitly has been requested. Support a false value for CUDA_ARCHITECTURES and CMAKE_CUDA_ARCHITECTURES for this purpose. Implements #20821.
* | | Clang: Record Clang 6.0+ as fully supporting C++17Raul Tambre2020-06-131-0/+4
| | |
* | | Clang: Add final C++20 flag for Clang 11.0+Raul Tambre2020-06-131-1/+4
|/ / | | | | | | | | -std=c++20 superseded -std=c++2a in upstream Clang commit 24ad121582454e625bdad125c90d9ac0dae948c8.
* | Merge topic 'nvcc_supports_cuda17' into release-3.18Brad King2020-06-111-0/+11
|\ \ | | | | | | | | | | | | | | | | | | 95700be52d CUDA: Teach CMake that NVCC 11 supports cuda_std_17 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4872
| * | CUDA: Teach CMake that NVCC 11 supports cuda_std_17Robert Maynard2020-06-101-0/+11
| |/
* | FindProtobuf: Fix typo in documentationRon Klein2020-06-101-1/+1
|/ | | | typo: "filess" ==> "files"
* Merge topic 'cpack-ifw-3.2' into release-3.18Brad King2020-06-091-0/+2
|\ | | | | | | | | | | | | b79aad8069 CPack/IFW: Add Qt installer framework version 3.2 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4859
| * CPack/IFW: Add Qt installer framework version 3.2Frederik Gladhorn2020-06-081-0/+2
| | | | | | | | Qt 5.15 comes with IFW 3.2
* | Merge topic 'FindOpenSSL-3.0' into release-3.18Brad King2020-06-091-2/+4
|\ \ | |/ |/| | | | | | | | | 796b447373 FindOpenSSL: Fix OpenSSL 3.0.0 version extraction Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4860
| * FindOpenSSL: Fix OpenSSL 3.0.0 version extractionBilly Brumley2020-06-081-2/+4
| | | | | | | | | | | | | | | | Fix the regex syntax added by commit 61d746e592 (FindOpenSSL: Detect OpenSSL 3.0.0, 2020-05-27, v3.17.3~1^2). Add missing escapes. Test with `openssl-3.0.0-alpha3`. While at it, also unset a temporary variable after use.
* | CPack/IFW: Fix documentation typo: REQUAREDFrederik Gladhorn2020-06-081-1/+1
| |
* | Merge topic 'cuda_cudart_status' into release-3.18Brad King2020-06-081-4/+4
|\ \ | | | | | | | | | | | | | | | | | | 7e2f86461a FindCUDAToolkit: Fix cudart not found status message Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4861
| * | FindCUDAToolkit: Fix cudart not found status messageRaul Tambre2020-06-081-4/+4
| | | | | | | | | | | | | | | | | | This ended up after the searching after commit dc2eae1 (FindCUDAToolkit: Factor out discovery code into a separate file, 2020-04-22). Move it back to where it was and should be.
* | | Merge topic 'cuda_clang_simulate' into release-3.18Brad King2020-06-081-0/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 0f88b7a592 CUDA: Fix Clang depfile flags when simulating MSVC Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4863
| * | | CUDA: Fix Clang depfile flags when simulating MSVCRaul Tambre2020-06-081-0/+3
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | __compiler_clang() doesn't call __compiler_gnu() if we're emulating MSVC. Thus CMAKE_DEPFILE_FLAGS_CUDA remains unset and compiling doesn't work, due to NVCC dependency injection workaround in CMakeCUDAInformation.cmake, which triggers for Ninja if they're not set. Always set the depfile flags to fix this. Most other compiler modules seem to do the same.
* | | Merge topic 'cuda_user_architectures_specifiers' into release-3.18Brad King2020-06-081-2/+10
|\ \ \ | |/ / |/| | | | | | | | | | | | | | 4eaf1ef425 CUDA: Fix checking working architectures with specifiers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4856
| * | CUDA: Fix checking working architectures with specifiersRaul Tambre2020-06-051-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't distinguish real/virtual architectures during compiler detection. If the user passes -DCMAKE_CUDA_ARCHITECTURES="70-virtual" we'll test with only the real architecture. If it works "architectures" will end up as "70". We check equality using strings, so this fails and we incorrectly throw an error. Fix this by comparing against CMAKE_CUDA_ARCHITECTURES with the specifiers stripped. We need to deduplicate tested_architectures for the same reason in case the user specified something like "70-real;70-virtual".
* | | ARMClang: allow fallback to -march and correct setting of --cpu flagsOsama Moharam2020-06-031-10/+57
|/ / | | | | | | | | | | | | allows cmake to fall back to CMAKE_SYSTEM_ARCH in case CMAKE_SYSTEM_PROCESSOR is not in armclang -mcpu=list additionally checks if CMAKE_SYSTEM_PROCESSOR belongs to armlink --cpu=list Fixes: #19962
* | Merge topic 'armclang-armlink'Brad King2020-06-031-2/+14
|\ \ | | | | | | | | | | | | | | | | | | 73fb6ac82b ARMClang: Add support for armlink Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4811
| * | ARMClang: Add support for armlinkOsama Moharam2020-06-021-2/+14
| | | | | | | | | | | | | | | | | | sets CMAKE_LIBRARY_PATH_FLAG to '--userlibpath=' when using armlink. Fixes: #20761
* | | Merge branch 'backport-3.17-pch-no-Fortran' into pch-no-FortranBrad King2020-06-022-13/+17
|\ \ \ | |/ / |/| |