summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'find_threads_only_log_on_failure'Brad King2021-04-081-4/+10
|\ | | | | | | | | | | | | d6da6784bf FindThreads: Reduce amount of false positive error logging Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5988
| * FindThreads: Reduce amount of false positive error loggingRobert Maynard2021-04-061-4/+10
| | | | | | | | | | | | | | | | | | | | | | When a CMake based project fails, users start looking at CMakeError.log and think that the FindThread output is the problem, but it is a false positive. Now FindThreads only logs to `CMakeError.log` when it fails to find a suitable flag, reducing the amount of false positives in `CMakeError.log`. Fixes #16540, Fixes #19344
* | Merge topic 'flags-with-backslash'Brad King2021-04-081-5/+6
|\ \ | | | | | | | | | | | | | | | | | | 3953dfcb31 Restore support for backslashes in initial language-wide flags Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5995
| * | Restore support for backslashes in initial language-wide flagsBrad King2021-04-071-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit bdc40742bd (CMakeDetermineCompilerId: Test without COMPILER_ID_FLAGS if REQUIRE_SUCCESS, 2021-02-27, v3.20.0-rc3~6^2) added an extra macro layer through which flag strings are passed. That caused an extra level of argument re-parsing, and broke flags with backslashes. Pass flags to the helper macro through variable names instead. Fixes: #22041
* | | Merge topic 'cuda-depfile-ccbin'Brad King2021-04-082-1/+12
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8e38985db7 Makefiles: Fix dependency extraction with CUDA < 10.2 and host compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Robert Maynard <robertjmaynard@gmail.com> Merge-request: !5992
| * | | Makefiles: Fix dependency extraction with CUDA < 10.2 and host compilerBrad King2021-04-072-1/+12
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 2c71d051fa (Makefiles Generators: use compiler for dependencies generation, 2020-10-18, v3.20.0-rc1~392^2) we invoke `nvcc` for CUDA < 10.2 a second time in order to generate a depfile. When `CMAKE_CUDA_HOST_COMPILER` is set, the second invocation is missing its `-ccbin=` option, even after refactoring in commit 8981e3e7cc (NVIDIA-CUDA: rely on new capabilities for deps generation, 2020-12-02, v3.20.0-rc1~362^2). Ideally we should move the `-ccbin=` flag into `Compiler/NVIDIA-CUDA`, but that will add `CMAKE_CUDA_HOST_COMPILER` support on Windows in command-line generators but not the Visual Studio generators. For now, add the flag to the depfile command specifically. Fixes: #22037
* | | Merge topic 'FindBLAS-default-OpenMP'Brad King2021-04-081-2/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 9ef82d95d8 FindBLAS: Fix detection of OpenMP as dependency of BLA_STATIC Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5993
| * | | FindBLAS: Fix detection of OpenMP as dependency of BLA_STATICBrad King2021-04-071-2/+11
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the change from commit f7f3d8987a (FindBLAS: Add dependency of OpenBLAS on OpenMP for BLA_STATIC, 2020-11-10, v3.20.0-rc1~492^2): * If C is not enabled, find CXX OpenMP libraries instead. * Do not use BLA_STATIC's custom CMAKE_FIND_LIBRARY_SUFFIXES for OpenMP. It can break projects that already call `find_package(OpenMP)` and expect a shared library. Whether OpenMP is static is orthogonal to whether BLAS is static. Fixes: #22039 Issue: #16221
| * | Merge topic 'binutils-var-private' into release-3.20Brad King2021-04-071-10/+10
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 4d786dfcfa BinUtils: Avoid clobbering a variable named without a private prefix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5986
| * \ \ Merge topic 'ios-rpath-linker-flag' into release-3.20Brad King2021-04-071-5/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4aed96e230 Apple: Set CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG on non-macOS too Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5980
| * \ \ \ Merge topic 'nvhpc-lib-arch' into release-3.20Brad King2021-04-064-18/+52
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 764606e256 CMakeDetermineCompilerABI: Extract lib arch from implicit object file paths 5d44d73bbe CMakeDetermineCompilerABI: Revert "Parse library arch from versioned paths" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5984
| * \ \ \ \ Merge topic 'UseSWIG-policies' into release-3.20Brad King2021-04-061-15/+10
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c3d0b25514 UseSWIG: Transform swig depfile to match Ninja generator paths 8c525d7e16 UseSWIG: Run using policy settings from includer Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5983
* | \ \ \ \ \ Merge topic 'binutils-var-private'Brad King2021-04-071-10/+10
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4d786dfcfa BinUtils: Avoid clobbering a variable named without a private prefix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5986
| * | | | | | BinUtils: Avoid clobbering a variable named without a private prefixBrad King2021-04-071-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit b12aec6c8d (BinUtils: prefer bin utils matching the compiler version extension, 2020-12-11, v3.20.0-rc1~171^2) accidentally leaked a `TOOL` variable. Name temporary variables with a private prefix. Fixes: #22035
* | | | | | | Merge topic 'ios-rpath-linker-flag'Brad King2021-04-071-5/+1
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4aed96e230 Apple: Set CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG on non-macOS too Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5980
| * | | | | | Apple: Set CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG on non-macOS tooCraig Scott2021-04-061-5/+1
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since CMake 3.19, we no longer support macOS SDKs older than 10.5, which corresponds to Xcode 3. Supporting older Xcode versions for device platforms is also not realistic. We therefore expect the -rpath linker option should always be supported now. When targeting iOS, tvOS or watchOS, the previous disabling of -rpath support meant that the install_name_dir of shared libraries and frameworks was unable to use @rpath. This resulted in embedding absolute paths for their install_name. When they were embedded in an app bundle, this would cause the app to fail at runtime. By enabling the -rpath linker option, the default install_name_dir is now @rpath for these platforms, which results in binaries that do work at runtime. Fixes: #20036
* | | | | | FindHDF5: add compiler-specific module search pathsBen Boeckel2021-04-061-2/+17
| | | | | |
* | | | | | FindHDF5: track the "main" library for each languageBen Boeckel2021-04-061-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | This will be used to build up additional include paths to search.
* | | | | | FindHDF5: find include directories after the libraryBen Boeckel2021-04-061-20/+20
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | Some include paths might depend on the library location (primarily for Fortran).
* | | | | Merge topic 'nvhpc-lib-arch'Brad King2021-04-064-18/+52
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 764606e256 CMakeDetermineCompilerABI: Extract lib arch from implicit object file paths 5d44d73bbe CMakeDetermineCompilerABI: Revert "Parse library arch from versioned paths" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5984
| * | | | CMakeDetermineCompilerABI: Extract lib arch from implicit object file pathsRobert Maynard2021-04-053-11/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NVHPC compiler does not have any implicit link directories that can be used to detect `CMAKE_LIBRARY_ARCHITECTURE`, but it does have implicit object files. Extract implicit object file paths from link lines and check them for the `CMAKE_LIBRARY_ARCHITECTURE` pattern. Issue: #22024
| * | | | CMakeDetermineCompilerABI: Revert "Parse library arch from versioned paths"Robert Maynard2021-04-052-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change in commit 657fc3a9a7 (CMakeDetermineCompilerABI: Parse library arch from versioned paths, 2021-02-03, v3.20.0-rc1~40^2) caused `CMAKE_LIBRARY_ARCHITECTURE` to be populated on non-multiarch platforms if their compilers happen to use `$arch/$version` library directories. Revert the use of versioned library paths. Fixes: #22024
* | | | | Merge topic 'UseSWIG-policies'Brad King2021-04-061-0/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 05881c1cbe Merge branch 'backport-UseSWIG-policies' into UseSWIG-policies c3d0b25514 UseSWIG: Transform swig depfile to match Ninja generator paths 8c525d7e16 UseSWIG: Run using policy settings from includer Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5983
| * \ \ \ \ Merge branch 'backport-UseSWIG-policies' into UseSWIG-policiesBrad King2021-04-051-0/+2
| |\ \ \ \ \ | | | |_|_|/ | | |/| | |
| | * | | | UseSWIG: Transform swig depfile to match Ninja generator pathsBrad King2021-04-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 89b01b04fa (UseSWIG: use swig tool to generate dependencies, 2021-01-12, v3.20.0-rc1~120^2) we use a tool-provided depfile to extract dependencies under the Ninja generator. Enable `CMP0116` to ensure depfile paths are translated to match what the Ninja generator writes to the build manfiest. Fixes: #22029
| | * | | | UseSWIG: Run using policy settings from includerMarc Chevrier2021-04-051-15/+8
| | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport commit de7f0aa6c0 (UseSWIG: avoid spurious policy warnings, 2021-02-11) to the 3.20 release branch. Projects need to be able to control policies. Issue: #22029
* | | | | Merge topic 'FindHDF5-new-fortran-library-name'Brad King2021-04-061-1/+1
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | ff84a80b46 FindHDF5: search for the new Fortran HL library name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5976
| * | | FindHDF5: search for the new Fortran HL library nameBen Boeckel2021-04-051-1/+1
| |/ / | | | | | | | | | | | | | | | | | | HDF5 1.10.6 renamed this library to match the other language binding library names. Fixes: #20205
* | | Merge topic 'cpack-rpm-add-scriplets-tags-only-if-needed'Brad King2021-04-051-36/+67
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 34c8a23044 CPackRPM: add scriplets tags only if scripts exist Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5970
| * | | CPackRPM: add scriplets tags only if scripts existDomen Vrankar2021-04-011-36/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Scriplet tags should not be added to generated spec files if scripts weren't provided as those tags are otherwise present in generated rpm file even if the script wasn't provided thereby generating unneeded dependency on shell. Fixes: #21345
* | | | Merge topic 'FindMPI-host_link'Brad King2021-04-021-3/+4
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | | | | 666f689e48 FindMPI: avoid host link options to be propagated to device link step Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Robert Maynard <robertjmaynard@gmail.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !5966
| * | FindMPI: avoid host link options to be propagated to device link stepMarc Chevrier2021-04-011-3/+4
| | | | | | | | | | | | Fixes: #21887
* | | Merge topic 'fujitsu-compiler-4.0-support'Brad King2021-04-0122-42/+369
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8ef55dec29 Help: Add release notes for Fujitsu compiler support 4c74c86f40 FindBLAS/LAPACK: Add support for the Fujitsu SSL2 library 376c300b25 FindOpenMP: Add support for Fujitsu compilers 9e0a1cf03e FindMPI: Add support for the Fujitsu compiler wrappers a237450948 Tests: Update for the FujitsuClang compiler 27579e9cf1 FujitsuClang: Add support for the Fujitsu compiler in Clang mode a55feff69c Tests: Update for the Fujitsu compiler 3c867cff4a Fujitsu: Add support for the Fujitsu compiler in Trad mode Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Axel Huebl <axel.huebl@plasma.ninja> Acked-by: Gilles Gouaillardet <gilles@rist.or.jp> Merge-request: !5954
| * | | FindBLAS/LAPACK: Add support for the Fujitsu SSL2 libraryChuck Atkins2021-03-312-36/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This also does some additional work to fix issues with libraries provided only via compiler options and no explicit library names. Co-Author: Yuichiro Utsumi <utsumi.yuichiro@jp.fujitsu.com>
| * | | FindOpenMP: Add support for Fujitsu compilersChuck Atkins2021-03-311-0/+2
| | | | | | | | | | | | | | | | Co-Author: Yuichiro Utsumi <utsumi.yuichiro@jp.fujitsu.com>
| * | | FindMPI: Add support for the Fujitsu compiler wrappersChuck Atkins2021-03-311-1/+6
| | | | | | | | | | | | | | | | Co-Author: Yuichiro Utsumi <utsumi.yuichiro@jp.fujitsu.com>
| * | | FujitsuClang: Add support for the Fujitsu compiler in Clang modeChuck Atkins2021-03-319-9/+38
| | | | | | | | | | | | | | | | | | | | | | | | This should be front end compatible with vanilla clang but giving it a unique identifier allows a project to pass additional options unique to Fujitsu and outside the scope of a CMake builtin.
| * | | Fujitsu: Add support for the Fujitsu compiler in Trad modeChuck Atkins2021-03-3012-5/+210
| | | | | | | | | | | | | | | | Co-Author: Yuichiro Utsumi <utsumi.yuichiro@jp.fujitsu.com>
* | | | Merge topic 'cpackrpm-debuginfo-single-package-install-erase-scripts'Brad King2021-04-011-0/+19
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 31c184ad69 CPackRPM: handle scripts in debuginfo single package mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5953
| * | | | CPackRPM: handle scripts in debuginfo single package modeDomen Vrankar2021-03-301-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enabling CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE while using rpm install or erase scripts resulted in resulted missing scripts for non default components. Fixes: #21974
* | | | | Merge topic 'cray-version-patch'Brad King2021-03-311-0/+3
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | 258faaeef6 Cray: Detect Fortran compiler version patch level if available Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5957
| * | | | Cray: Detect Fortran compiler version patch level if availableJustin LaPolla2021-03-311-0/+3
| | | | | | | | | | | | | | | | | | | | Fixes: #21969
* | | | | Merge topic 'cpackrpm-single-package-handling-empty-dir'Brad King2021-03-311-2/+8
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d0adb2386a CPackRPM: correctly handle empty dir in single package mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5951
| * | | | | CPackRPM: correctly handle empty dir in single package modeDomen Vrankar2021-03-281-2/+8
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enabling CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE while having an empty directory in non main component resulted in packaging error that the directory does not exist. Fixes: #21951
* | | | | Merge topic 'android-binutils'Brad King2021-03-313-50/+52
|\ \ \ \ \ | | |/ / / | |/| / / | |_|/ / |/| | | | | | | | | | | 61e6fc26bc Android: Fix search for binutils Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5958
| * | | Android: Fix search for binutilsHaibo Huang2021-03-303-50/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set `CMAKE_SYSTEM_PROGRAM_PATH` in `Platform/Android-Initialize` instead of `Platform/Android` so it can be used in `CMakeFindBinUtils`. Also add the names `llvm-strip` and `llvm-ranlib` for the corresponding tools.
| * | | Merge topic 'GNUInstallDirs-doc' into release-3.20Brad King2021-03-301-1/+4
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 06171fd7aa GNUInstallDirs: Clarify that CMAKE_INSTALL_<dir> may be absolute Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5947
| * | | | FindIntl: Fix detection of intl built in to C libraryBrad King2021-03-261-39/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit c30d06b7e6 (FindIntl: Add imported target, 2020-10-06, v3.20.0-rc1~687^2) we use `check_symbol_exists` to check whether the `intl` library is built in to the C library. On some platforms the tested symbols are provided as macros so the check passes without linking any symbol. Instead, check whether a sample source file both compiles and links. Fixes: #21979
* | | | | Merge topic 'ifw-depends-name-version-parsing'Brad King2021-03-301-0/+10
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a43783a08d CPackIFW: Fix parsing of name and version in component DEPENDS f536e6f3fb CPackIFW: Remove redundant variable assignment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5929
| * | | | | CPackIFW: Fix parsing of name and version in component DEPENDSCraig Scott2021-03-261-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DEPENDS or DEPENDENCIES arguments in a call to cpack_ifw_configure_component() or cpack_ifw_configure_component_group() specify a name and optionally a version constraint as a single string. QtIFW also allows a colon (requires QtIFW 3.1 or later) or a hyphen to separate the name and version. The version may optionally contain a leading operator, with = being assumed when no operator is present. The previous code was not handling : as a separator at all and was erroneously dropping the version part when no operator was given. Fix both of those non-conforming behaviors and also warn if trying to use a hyphen in a name with a QtIFW version that isn't recent enough to support it. Fixes: #21697