summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | VS: Recognize CSharp VS 2019 compiler version v142Brad King2021-07-151-0/+4
|/ / / /
* | | | ARMClang: Fix regression in check for working compilerLingkai Dong2021-07-142-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given the compiler to use, `CMakeFindBinUtils.cmake` automatically determines a number of tools including linker (CMAKE_LINKER) and archiver (CMAKE_AR) and stores them in a generated file `CMakeCCompiler.cmake` as non-CACHE entries. The compiler-specific ARMClang.cmake then tries to override CMAKE_LINKER and CMAKE_AR as CACHE entries. Following the introduction of CMP0126, which is set to NEW in the test for a working compiler, setting a CACHE entry does not replace a normal entry of the same name anymore, resulting in a failed test due to wrong linker and archiver. To fix this, set CMAKE_LINKER and CMAKE_AR for ARMClang directly in `CMakeFindBinUtils.cmake` as is done for other compilers. Check for them in `ARMClang.cmake` to safeguard cases when a project explicitly includes `ARMClang.cmake` prior to compiler determination (which some projects do to work around other problems in older CMake versions).
* | | | Merge topic 'cpack-deb-post-ops' into release-3.21Brad King2021-07-131-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 805fa791d1 CPack/DEB: Avoid overriding user-provided `postinst` and `postrm` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6335
| * | | | CPack/DEB: Avoid overriding user-provided `postinst` and `postrm`Alex Turbov2021-07-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a user provides `CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA` or `CPACK_DEBIAN_<comp>_PACKAGE_CONTROL_EXTRA` variables in `CMakeLists.txt` and the package contains dynamic libraries, the `CPackDeb.cmake` sets `CPACK_ADD_LDCONFIG_CALL` to `1`. Later it analyzes if defaulted `postinst`/`postrm` should be generated trying to check if the user provides any in `CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA` variable. However, the `foreach` loop uses the invalid variable `PACKAGE_CONTROL_EXTRA` instead, so these files gonna be overridden. Fix the variable name. Fixes: #22410
* | | | | Find{BLAS,LAPACK}: Avoid clobbering results when no vendor is requestedBrad King2021-07-122-4/+4
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Logic added by commit 4c74c86f40 (FindBLAS/LAPACK: Add support for the Fujitsu SSL2 library, 2021-01-27, v3.21.0-rc1~402^2~1) accidentally expressed a boolean condition without proper grouping. The pattern was then copied by commit 2c9e623e31 (Find{BLAS,LAPACK}: Add support for the NVHPC LAPACK library, 2021-05-05, v3.21.0-rc1~192^2). The resulting logic incorrectly tries Fujitsu and NVHPC vendors even after results are found from another vendor, and then erases those. Fix the grouping. Fixes: #22403
* | | | Merge topic 'FindJPEG-revert-turbo' into release-3.21Brad King2021-07-121-1/+1
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | 0de1f1503b FindJPEG: Revert "Search for 'turbojpeg' and 'turbojpeg-static' too" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6326
| * | | FindJPEG: Revert "Search for 'turbojpeg' and 'turbojpeg-static' too"Brad King2021-07-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 74cc2e3326 (FindJPEG: Search for 'turbojpeg' and 'turbojpeg-static' too, 2021-01-09, v3.20.0-rc1~176^2) pending further investigation. The "turbo" variants are not drop-in replacements on all platforms. Fixes: #22333
| * | | Merge branch 'check_cxx_compiler_flag_no_normal_variable' into release-3.20Brad King2021-07-081-1/+0
| |\ \ \ | | |/ / | |/| | | | | | Merge-request: !6318
| * | | IntelLLVM: Fix C/C++ standard level flags on WindowsBrad King2021-07-072-12/+4
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | In commit a90d2a9eed (IntelLLVM: Add support for Intel LLVM-based compilers, 2020-11-02, v3.20.0-rc1~89^2~20) we accidentally left out activation of the C/C++ standard level selection logic when IntelLLVM is targeting the MSVC ABI. Fixes: #22388
* | | IAR: Use placeholders in linker and archiver rulesJean-Marc Hengen2021-07-081-7/+7
| | | | | | | | | | | | | | | | | | | | | Update the IAR linker and archiver rules to use the `<CMAKE_LINKER>` and `<CMAKE_AR>` placeholders instead of hard-coding the tool names. Fixes: #22395
* | | Merge topic 'FindCUDAToolkit-doc-version' into release-3.21Brad King2021-07-081-3/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 266fc8ada5 FindCUDAToolkit: Properly document the version support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6320
| * | | FindCUDAToolkit: Properly document the version supportRobert Maynard2021-07-071-3/+8
| | | |
* | | | Merge topic 'check_cxx_compiler_flag_no_normal_variable' into release-3.21Brad King2021-07-081-1/+0
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 018d300ca0 Check*CompilerFlag: Do not set result as a normal variable too Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6318
| * | | Check*CompilerFlag: Do not set result as a normal variable tooRobert Maynard2021-07-081-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was previously fixed by commit d46590910c (Check*CompilerFlag: Do not set result as a normal variable too, 2020-09-21, v3.18.3~1^2^2), but was regressed by refactoring in commit 90dead024c (CheckCompilerFlag: unified way to check compiler flags per language, 2020-09-25, v3.19.0-rc1~88^2) due to the changes being developed concurrently. Fix it again, and add a test case. Fixes: #21207
* | | | IntelLLVM: Fix C/C++ standard level flags on WindowsBrad King2021-07-072-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit a90d2a9eed (IntelLLVM: Add support for Intel LLVM-based compilers, 2020-11-02, v3.20.0-rc1~89^2~20) we accidentally left out activation of the C/C++ standard level selection logic when IntelLLVM is targeting the MSVC ABI. Fixes: #22388
* | | | Merge topic 'correct_cuda_toolkit_version_typo' into release-3.21Brad King2021-07-071-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0d54276c82 Correct CUDAToolkit_VERSION_MINOR variable name typo Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !6311
| * | | | Correct CUDAToolkit_VERSION_MINOR variable name typoRobert Maynard2021-07-061-1/+1
| | |/ / | |/| |
* | | | DetermineCompiler: Restore identification of MSVC with no INCLUDE or LIBBrad King2021-07-012-2/+4
|/ / / | | | | | | | | | | | | | | | | | | Update the change from commit c6aaaf066a (DetermineCompiler: Restore identification of MSVC with no INCLUDE dirs, 2021-06-29, v3.21.0-rc2~6^2) to also work with no `LIB` dirs. Add the `-c` flag to compile an object file without linking.
* | | Merge topic 'fujitsu-clang-findbinutils' into release-3.21Brad King2021-06-302-0/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6ce97c2248 FujitsuClang: Change LTO option from -flto=thin to -flto 3a0effcd16 FujitsuClang: Set CMAKE_<LANG>_COMPILER_AR and CMAKE_<LANG>_COMPILER_RANLIB Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6281
| * | | FujitsuClang: Change LTO option from -flto=thin to -fltoYuichiro Utsumi2021-06-291-0/+3
| | | | | | | | | | | | | | | | | | | | Since -flto=thin is not supported officially in FujitsuClang, change to -flto.
| * | | FujitsuClang: Set CMAKE_<LANG>_COMPILER_AR and CMAKE_<LANG>_COMPILER_RANLIBYuichiro Utsumi2021-06-291-0/+6
| | | | | | | | | | | | | | | | Fixes: #22337
* | | | Merge topic 'rpm-suggests' into release-3.21Brad King2021-06-301-0/+15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9b53eca317 CPack/RPM: Fix weak dep support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6274
| * | | | CPack/RPM: Fix weak dep supportAlex Sweet2021-06-291-0/+15
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPM 4.11.3 for el7 contains backported support for the RPM weak dep tags. It only supports querying those tags, but rpmbuild can not make use of them. Since CPack relies on rpmbuild --querytags to check for support, this commit switches to rpm --suggests to check for support of weak dependencies. Fixes: #22350
* | | | DetermineCompiler: Restore identification of MSVC with no INCLUDE dirsBrad King2021-06-292-0/+8
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit bd844387df (ROCMClang: Add the ROCm toolkit derived clang compiler to CMake, 2020-08-28, v3.21.0-rc1~66^2~6), our generated compiler id source file contains a preprocessor condition of the form #elif ... && __has_include(...) When MSVC is invoked with no include directories in the `INCLUDE` environment variable or in `-I` flags, its implementation of `__has_include` errors out immediately. This breaks identification of the compiler. Work around the problem by adding a fallback attempt to compile the identification source using a dummy include directory.
* | | Merge topic 'yasm-no-deps' into release-3.21Brad King2021-06-281-7/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | f03d54bfc1 ASM_NASM: Do not generate depfiles with YASM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6265
| * | | ASM_NASM: Do not generate depfiles with YASMGregor Jasny2021-06-251-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 3aec26660a (Merge topic 'nasm_add_deps', 2021-03-03) the ASM_NASM language enabled the generation of GCC compatible depfiles for NASM. Unfortunatly, those are not supported by YASM. Fixes: #22341
* | | | Merge topic 'Help-UseJava-reorganization' into release-3.21Brad King2021-06-251-351/+454
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | af9bd6c53f Help: UseJava reorganization Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6262
| * | | | Help: UseJava reorganizationMarc Chevrier2021-06-241-351/+454
| |/ / / | | | | | | | | | | | | Fixes: #22155
* | | | Merge topic 'fujitsu-ipo' into release-3.21Brad King2021-06-251-0/+10
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 96e362fdc9 Fujitsu: Add IPO support for Fortran Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6261
| * | | | Fujitsu: Add IPO support for FortranPaul Zehner2021-06-241-0/+10
| |/ / /
* | | | FindOpenMP: Link with OpenMP flags on FujitsuEisuke Kawashima2021-06-241-0/+4
|/ / / | | | | | | | | | Fixes: #22332
* | | CUDA: Implement CMAKE_USER_MAKE_RULES_OVERRIDE[_CUDA]Seth R Johnson2021-06-221-0/+19
| | | | | | | | | | | | | | | This is implemented by other languages, and is documented for all languages. This was accidentally left out of CUDA.
* | | Merge topic 'ep-git-update-commit-ref' into release-3.21Brad King2021-06-211-1/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 360ff17dc6 ExternalProject: Use ${ref}^0 to avoid MSYS/Cygwin shell substitutions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6249
| * | ExternalProject: Use ${ref}^0 to avoid MSYS/Cygwin shell substitutionsCraig Scott2021-06-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 5e941a545b (ExternalProject: Ensure git fetch if updating to hash we don't have yet, 2021-05-09), the form ${ref}^{commit} was used to ensure the ref was treated as a commit. When running under a MSYS2 or Cygwin shell, the {commit} part can be translated by the shell, leaving it as ${ref}^commit, which git doesn't understand. Use the equivalent but safer form ${ref}^0, since it won't be subject to the shell substitution issue. Fixes: #22299
* | | Merge topic 'GNUInstallDirs-alpine' into release-3.21Brad King2021-06-211-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 37b24e0bed GNUInstallDirs: don't use lib64 on Alpine Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6244
| * | | GNUInstallDirs: don't use lib64 on Alpine LinuxNatanael Copa2021-06-181-0/+1
| | | | | | | | | | | | | | | | Fixes: #22318
* | | | CompilerId: Tolerate variables named for languagesPhilippe Canal2021-06-181-6/+6
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a project or user sets a variable or cache entry named `C`, `CXX`, `CUDA`, `Fortran`, `CSharp`, or `ISPC`, we were previously comparing each enabled language name to the value of that variable, rather than the name itself. Double-quote the string to take advantage of policy `CMP0054`, but also add "x" prefixes to support projects that do not set the policy. This extends a similar fix in commit bd16a985fc (CompilerId/Features: Tolerate variables named for languages, 2021-04-28) in more places. In particular, ensure that we consider the proper list of compiler ids. Issue: #22125
* | | CheckCompilerFlag: Handle -Werror= for GCC 11Marc Aldorasi2021-06-171-2/+4
| | |
* | | AppleClang: Add flags for C17 and C23Brad King2021-06-161-1/+11
| | | | | | | | | | | | Follow up commit 72f4984cdc (Clang: C23 support, 2021-02-07).
* | | FindLATEX: Search user-local MiKTeX locationsSteven A White2021-06-161-0/+4
| | | | | | | | | | | | | | | | | | I've noticed the default installer for MikTex does not prompt for escalation. So, many installations I find do not have registry entries. This should cover finding it in the current defaults.
* | | CMakeDependentOption: Allow parentheses in the depends stringDaniel Schürmann2021-06-141-1/+4
| | | | | | | | | | | | | | | | | | | | | `if()` takes the condition as a list of arguments. Parentheses need to be separated as well. Fixes: #22303
* | | Merge topic 'objc-std-17-23'Brad King2021-06-144-1/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | e8dc95ae1e ObjectiveC: Add C17 and C23 support Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !6219
| * | | ObjectiveC: Add C17 and C23 supportGregor Jasny2021-06-114-1/+33
| | | | | | | | | | | | | | | | Issue: #22297
* | | | Merge topic 'FindBLAS-LAPACK-docs'Brad King2021-06-142-151/+186
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5bf1651452 Find{BLAS,LAPACK}: Revise and extend Intel MKL usage documentation 8585a12bd9 Find{BLAS,LAPACK}: Move enabled language requirement to top of documentation 6a7c055f96 Find{BLAS,LAPACK}: Revise formatting of intro docs 43b581367d Find{BLAS,LAPACK}: Move implementation note from docs to comments 3beac78a13 Find{BLAS,LAPACK}: Revise imported targets documentation layout 6f305cd5fd Find{BLAS,LAPACK}: Factor out vendor documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6218
| * | | | Find{BLAS,LAPACK}: Revise and extend Intel MKL usage documentationBrad King2021-06-112-25/+71
| | | | | | | | | | | | | | | | | | | | Fixes: #22295
| * | | | Find{BLAS,LAPACK}: Move enabled language requirement to top of documentationBrad King2021-06-112-2/+4
| | | | |
| * | | | Find{BLAS,LAPACK}: Revise formatting of intro docsBrad King2021-06-112-2/+6
| | | | |
| * | | | Find{BLAS,LAPACK}: Move implementation note from docs to commentsBrad King2021-06-112-8/+6
| | | | |
| * | | | Find{BLAS,LAPACK}: Revise imported targets documentation layoutBrad King2021-06-112-7/+6
| | | | |
| * | | | Find{BLAS,LAPACK}: Factor out vendor documentationBrad King2021-06-112-114/+100
| | | | | | | | | | | | | | | | | | | | | | | | | Move the list of vendors to a dedicated section shared by both modules. Format it as a definition list.