summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* CompilerID: Rename language_dialect to language_standardRaul Tambre2021-09-287-29/+29
| | | | | In Linux C++ terms dialect usually refers to having GNU extensions or not. Change the name to better reflect that this is about the standard version.
* Merge topic 'iar-lang-spec-detection'Brad King2021-09-274-110/+76
|\ | | | | | | | | | | | | a9073db736 IAR: update language specification detection Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6458
| * IAR: update language specification detectionFelipe Torrezan2021-09-234-110/+76
| |
* | Merge topic 'irsl-intel-variants'Brad King2021-09-241-0/+4
|\ \ | | | | | | | | | | | | | | | | | | 956160bb9a IRSL: Fix search for Windows redist files with Intel Classic compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6557
| * | IRSL: Fix search for Windows redist files with Intel Classic compilerBrad King2021-09-231-0/+4
| |/ | | | | | | | | | | | | | | The oneAPI icx/ifx compilers are under `.../windows/bin`. The classic icl/ifort compilers are under `.../windows/bin/intel64`. Add paths to the redist directory relative to both locations. Fixes: #22673
* | Merge topic 'mpi-cross'Brad King2021-09-241-1/+35
|\ \ | | | | | | | | | | | | | | | | | | 0723b2c935 MPI: Add fallback detection code for MPI when cross compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6537
| * | MPI: Add fallback detection code for MPI when cross compilingHelmut Grohne2021-09-171-1/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MPI libraries use a compiler wrapper to automatically inject required flags and libraries into the compiler argument list. However, the wrapper does not support cross-compiling: the wrapper will try to invoke the native compiler which cannot handle the cross architecture MPI libraries and fail. This MR adds some fallback code for this case, which tries to bypass the faulty wrapper and determine the necessary flags and libraries directly from the MPI pkg-config files. The patch tries to be as unintrusive as possible and should not break any existing use-cases. Fixes: #22650
* | | Merge topic 'FindMatlab-r2021b'Brad King2021-09-241-0/+1
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | a013404f43 FindMatlab: Add R2021b => 9.11 version Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6556
| * | FindMatlab: Add R2021b => 9.11 versionMichael Hirsch2021-09-231-0/+1
| | | | | | | | | | | | R2021b released 09/22/2021.
| * | Merge topic 'hip-no-hipcc' into release-3.21Brad King2021-09-2019-303/+101
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cb93f72624 HIP: Simplify detection of HIP runtime CMake package a71f0fc9c7 HIP: Remove ROMClang compiler id and use Clang directly b125e9809a HIP: Detect ROCm path earlier 735f41fc2d HIP: Use 'rocm_agent_enumerator' to determine CMAKE_HIP_ARCHITECTURES Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Axel Huebl <axel.huebl@plasma.ninja> Merge-request: !6533
| * \ \ Merge topic 'android-PATH' into release-3.21Brad King2021-09-171-5/+0
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 94f3776774 Android: Restore searching PATH for executables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6528
* | \ \ \ Merge topic 'iar-asm-deduplication'Brad King2021-09-232-58/+30
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b1727b8a7e IAR: ASM module code deduplication Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6553
| * | | | | IAR: ASM module code deduplicationFelipe Torrezan2021-09-232-58/+30
| | | | | |
* | | | | | Merge topic 'matlab_versions_natural_sort'Brad King2021-09-231-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2f43ba5073 FindMatlab: Sort available Matlab versions using natural comparison. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6555
| * | | | | | FindMatlab: Sort available Matlab versions using natural comparison.Vincent Newsum2021-09-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows, when FindMatlab.cmake searches the registry for installed Matlab versions, it sorts these versions alphabetically. Since Matlab 2021a (version 9.10) came out this became a problem as now version 9.10 is placed after 9.1 instead of after a higher version less than 9.10. The result is that FindMatlab doesn't return the highest version by default. This fix uses the natural sort comparison which was introduced in CMake 3.18.
* | | | | | | Merge topic 'iar-rl78-xlink'Brad King2021-09-232-4/+12
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8954f93543 IAR: emit fatal message for RL78 XLINK Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6552
| * | | | | | | IAR: emit fatal message for RL78 XLINKFelipe Torrezan2021-09-212-4/+12
| | |/ / / / / | |/| | | | |
* | | | | | | Merge topic 'iar-riscv-binutils'Brad King2021-09-231-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7c3684b356 IAR: fix assembler detection for RISC-V Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6551
| * | | | | | | IAR: fix assembler detection for RISC-VFelipe Torrezan2021-09-211-1/+1
| |/ / / / / /
* | | | | | | Merge topic 'IAR-executable-suffix'Brad King2021-09-231-2/+2
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9254e7ddf2 IAR: Use same executable suffix as try_compile Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6546
| * | | | | | IAR: Use same executable suffix as try_compileRainer Keller2021-09-211-2/+2
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was a mismatch in the executable suffix between the compiler detection and try_compile. This resulted in the generated executable having a different suffix than what try_compile was looking for. The IAR module is changed to use the same suffix as try_compile. Fixes: #22567
* | | | | | Merge topic 'clang-manifest'Brad King2021-09-211-2/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b73857561f Clang: embed windows manifests with GNU interface Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6534
| * | | | | | Clang: embed windows manifests with GNU interfaceThomas Bernard2021-09-161-2/+4
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | Solves: #22611
* | | | | | Merge topic 'platform-vars'Brad King2021-09-217-66/+20
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a136b6ec98 MINGW: Define variable only when targeting Windows platforms 39c5dad0cb Ninja: Remove redundant check for GNU-like compiler on Windows 0b7ae84a96 Cygwin: Remove redundant definitions of CYGWIN and UNIX variables Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6538
| * | | | | MINGW: Define variable only when targeting Windows platformsBrad King2021-09-177-45/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `MINGW` variable indicates that the compiler targets MinGW, a GNU ABI on Windows. Since commit aff3147917 (Modernize GNU compiler info on Windows, 2009-12-02, v2.8.2~636), we load the `Platform/Windows-GNU` module for compilers targetin MinGW, so set the variable there instead. This is equivalent to `Platform/Windows-MSVC` setting the `MSVC` variable. Also remove `if(MINGW)` checks from the module, which have not been necessary since the enclosed logic was moved to that module. The undocumented `CMAKE_COMPILER_IS_MINGW` internal variable is now unused, so remove it too. Fixes: #22647
| * | | | | Cygwin: Remove redundant definitions of CYGWIN and UNIX variablesBrad King2021-09-166-21/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are set by modules loaded for `CMAKE_SYSTEM_NAME`. We do not need to set them again if the compiler defines `__CYGWIN__`. Also remove the now-unused undocumented `CMAKE_COMPILER_IS_CYGWIN` internal variable.
* | | | | | Merge topic 'hip-no-hipcc'Brad King2021-09-2019-303/+101
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cb93f72624 HIP: Simplify detection of HIP runtime CMake package a71f0fc9c7 HIP: Remove ROMClang compiler id and use Clang directly b125e9809a HIP: Detect ROCm path earlier 735f41fc2d HIP: Use 'rocm_agent_enumerator' to determine CMAKE_HIP_ARCHITECTURES Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Axel Huebl <axel.huebl@plasma.ninja> Merge-request: !6533
| * | | | | HIP: Simplify detection of HIP runtime CMake packageBrad King2021-09-166-125/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It only makes sense to use the CMake package from the same ROCm installation that the compiler uses. Ask the HIP compiler to report the location of the ROCm installation. Verify up front that it contains the expected CMake package file.
| * | | | | HIP: Remove ROMClang compiler id and use Clang directlyBrad King2021-09-1614-164/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit bd844387df (ROCMClang: Add the ROCm toolkit derived clang compiler to CMake, 2020-08-28, v3.21.0-rc1~66^2~6) and commit ff0d2858e1 (HIP: Extract clang compiler details from hipcc, 2020-10-21, v3.21.0-rc1~66^2~5), the separate `ROCMClang` compiler id for `hipcc` has caused a few problems: * The compiler id changed from behavior of CMake 3.20 and below, breaking projects that already built with `hipcc` treated as `Clang`. * The implementation of `target_compile_features` was incomplete for the `ROCMClang` identity. * Only `hipcc` was identified as `ROCMClang`, so after it is unwrapped to the underlying `clang++`, future runs of new CMake versions on an existing build tree would not repeat this. * Clang should be usable as a HIP compiler without the `hipcc` wrapper. Remove the `ROMClang` compiler identity, and revise HIP language support to work directly with a Clang compiler. Reject direct `hipcc` usage as a HIP compiler. For now it cannot be supported because it interferes with flags CMake needs to pass to Clang. Fixes: #22536, #22460, #22593
| * | | | | HIP: Detect ROCm path earlierBrad King2021-09-163-15/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fail early if it is not found. Use the detected location as a hint to find `rocm_agent_enumerator`. Also remove the leading `_` prefix in case we want to document this publicly later.
| * | | | | HIP: Use 'rocm_agent_enumerator' to determine CMAKE_HIP_ARCHITECTURESZack Galbreath2021-09-161-3/+34
| | | | | |
* | | | | | Merge topic 'android-PATH'Brad King2021-09-171-5/+0
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 94f3776774 Android: Restore searching PATH for executables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6528
| * | | | | Android: Restore searching PATH for executableshhb2021-09-161-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit a7f41a7ee4 (Android: Fix find_* search order within NDK for unified toolchains, 2020-10-13, v3.20.0-rc1~610^2), we turn off `CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH`. This breaks `find_program` searching `PATH` for host executables. Fortunately, the setting turns out not to be necessary, perhaps since commit cbc51a8be3 (Android: restructure android search paths, 2020-11-06, v3.20.0-rc1~509^2). Without it, none of NDK tests fail, so remove it to restore pre-3.20 behavior. Fixes: #22634
| * | | | | Merge branch 'GNUInstallDirs-variable-named-0' into release-3.20Brad King2021-08-241-1/+1
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !6474
* | \ \ \ \ \ Merge topic 'iar-enable-in-list-operator'Brad King2021-09-171-0/+5
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | / | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | f77ffbc0e3 IAR: Restore support for projects not enabling policy CMP0057 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6527
| * | | | | IAR: Restore support for projects not enabling policy CMP0057Jean-Marc Hengen2021-09-161-0/+5
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 5b9bfe738c (IAR: Moved search logic to BinUtils., 2021-07-19, v3.21.1~14^2), we use the `IN_LIST` operator in the `CMakeFindBinUtils` module. Set policy `CMP0057` to ensure it is available regardless of the project's policy settings. Fixes: #22640
| * | | | Merge topic 'FindPyhton-homebew-on-Mac-M1' into release-3.21Marc Chevrier2021-09-071-0/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2636ad5045 FindPython: Ensure homebrew on Mac M1 is used Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6499
| * \ \ \ \ Merge topic 'vs2022' into release-3.21Brad King2021-09-032-3/+10
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 38c8f2c4e3 IRSL: Add discovery of VS 2022 v143 toolset redistributables f01ea7e391 MSVC: Fix MSVC_TOOLSET_VERSION for VS 2022 v143 toolset Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6497
* | \ \ \ \ \ Merge topic 'cpack-nsis-apps-n-features'Brad King2021-09-151-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eb3b3bacdc CPack/NSIS: Fix uninstall on Windows using "Apps & Features" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6517
| * | | | | | | CPack/NSIS: Fix uninstall on Windows using "Apps & Features"Andras Lasso2021-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to NSIS documentation [1], uninstaller executable path in UninstallString must always be quoted. Quote the uninstall executable in `NSIS.template.in` so that it works when the path has spaces. [1] https://nsis.sourceforge.io/Add_uninstall_information_to_Add/Remove_Programs
* | | | | | | | FindFLTK: Safe to include multiple timesRobert Maynard2021-09-141-4/+8
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FindFLTK could store multiple entries in `FLTK_INCLUDE_DIR`, and when re-executed would stored into `FLTK_DIR` which had uses which presumed single entries. Fixes #13198
* | | | | | | Merge topic 'find-matlab-imported-targets'Brad King2021-09-141-0/+53
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 161990b921 FindMatlab: Add imported targets Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6488
| * | | | | | | FindMatlab: Add imported targetsSilvio Traversaro2021-09-131-0/+53
| | | | | | | |
* | | | | | | | Merge topic 'GNUInstallDirs_become_conda_install_aware'Brad King2021-09-141-5/+32
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ecaca8c129 GNUInstallDirs now aware of conda lib directory requirements Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Silvio Traversaro <pegua1@gmail.com> Merge-request: !6512
| * | | | | | | | GNUInstallDirs now aware of conda lib directory requirementsRobert Maynard2021-09-131-5/+32
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No matter the OS when installing for conda the library components need to be placed into the `lib` directory. To better meet these requirements GNUInstallDirs now checks to see if it is being asked to install into a conda install location, and if so use the 'lib' directory instead of the system directory name.
* | | | | | | | Merge topic 'iwyu-cl'Brad King2021-09-148-0/+8
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ccfe1b0b40 IWYU: Add `--driver-mode=cl` when applicable Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6511
| * | | | | | | | IWYU: Add `--driver-mode=cl` when applicablePigeonF2021-09-108-0/+8
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We already do this for `clang-tidy`. Fixes: #16554
* | | | | | | | Merge topic 'CMakeDependentOption-condition-syntax'Brad King2021-09-141-19/+42
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 059b90a0b4 CMakeDependentOption: Introduce policy CMP0127 for full Condition Syntax Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6493
| * | | | | | | | CMakeDependentOption: Introduce policy CMP0127 for full Condition SyntaxDaniel Schürmann2021-09-101-19/+42
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #22303
* | | | | | | | Merge topic 'CMakeFindPackageMode-sysroot'Brad King2021-09-141-1/+1
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8defe3380e CMakeFindPackageMode: Honor CMAKE_SYSROOT to detect lib64 platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6513