Commit Graph

11765 Commits

Author SHA1 Message Date
Brad King 9b12ffc1e8 Merge topic 'FindBLAS-LAPACK-All'
31ac4b9165 ci: Verify that Intel MKL is found when it is the only BLAS/LAPACK
57dcde19da Find{BLAS,LAPACK}: Avoid clobbering results when no vendor is requested

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6336
2021-07-13 08:15:07 -04:00
Brad King 57dcde19da Find{BLAS,LAPACK}: Avoid clobbering results when no vendor is requested
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
2021-07-12 11:08:05 -04:00
Brad King c9cd039e5f Merge topic 'LWYU-externalization'
14e57e9637 LINK_WHAT_YOU_USE feature: externalize configuration
9c5132a586 PGI: Fix "LINKER:" prefix generated separator
8a93de080c cmGeneratorTarget: Add method for LINKER: prefix translation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6306
2021-07-12 08:43:32 -04:00
Brad King 2d830247ba Merge topic 'cpack-rpm-requires-exclude-from'
bb5fc38209 CPack/RPM: Add option to set %global __requires_exclude_from

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6324
2021-07-12 08:42:03 -04:00
Brad King 79ca88ccd8 Merge topic 'FindJPEG-revert-turbo' into release-3.21
0de1f1503b FindJPEG: Revert "Search for 'turbojpeg' and 'turbojpeg-static' too"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6326
2021-07-12 08:32:18 -04:00
Brad King ac9353f960 Merge topic 'FindJPEG-revert-turbo'
0de1f1503b FindJPEG: Revert "Search for 'turbojpeg' and 'turbojpeg-static' too"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6326
2021-07-12 08:32:18 -04:00
Marc Chevrier 14e57e9637 LINK_WHAT_YOU_USE feature: externalize configuration
Currently, this feature is only supported on ELF platforms. So, the property
LINK_WHAT_YOU_USE will be ignored for other plateforms.
Moreover, flags and commands are now controled by CMake variables.

Fixes: #20174
2021-07-09 14:50:50 +02:00
Marc Chevrier 9c5132a586 PGI: Fix "LINKER:" prefix generated separator
Fix a typo from commit 66ea1a3795 (LINK_OPTIONS: Add support of "LINKER:" prefix,
2018-04-30, v3.13.0-rc1~437^2).
2021-07-09 14:49:01 +02:00
Lisa Welsch bb5fc38209 CPack/RPM: Add option to set %global __requires_exclude_from 2021-07-09 08:06:00 -04:00
Brad King 0de1f1503b FindJPEG: Revert "Search for 'turbojpeg' and 'turbojpeg-static' too"
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
2021-07-09 07:49:12 -04:00
Brad King 1ec39e9bd6 Merge topic 'iar-linker-placeholder'
bf810c75ac IAR: Use placeholders in linker and archiver rules

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6322
2021-07-08 09:32:41 -04:00
Jean-Marc Hengen bf810c75ac IAR: Use placeholders in linker and archiver rules
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
2021-07-08 08:08:52 -04:00
Brad King dad3a178a4 Merge topic 'FindMPI-adjust-compile-definitions-early'
0c1b9b3516 FindMPI: Choose definitions for MPI_CXX_SKIP_MPICXX before first use

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6303
2021-07-08 07:57:28 -04:00
Brad King fc0a74145d Merge topic 'cpack-nsis_update-languange-list'
9ce235fe5d CPack/NSIS: Update language list in template

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6310
2021-07-08 07:56:35 -04:00
Brad King eb692af623 Merge topic 'FindCUDAToolkit-doc-version' into release-3.21
266fc8ada5 FindCUDAToolkit: Properly document the version support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6320
2021-07-08 07:53:52 -04:00
Brad King 1c6d09768f Merge topic 'FindCUDAToolkit-doc-version'
266fc8ada5 FindCUDAToolkit: Properly document the version support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6320
2021-07-08 07:53:52 -04:00
Brad King c19b10883e Merge topic 'check_cxx_compiler_flag_no_normal_variable'
018d300ca0 Check*CompilerFlag: Do not set result as a normal variable too

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6318
2021-07-08 07:49:31 -04:00
Brad King ecd557cbd7 Merge topic 'check_cxx_compiler_flag_no_normal_variable' into release-3.21
018d300ca0 Check*CompilerFlag: Do not set result as a normal variable too

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6318
2021-07-08 07:49:30 -04:00
Brad King 01b40cfd4b Merge branch 'check_cxx_compiler_flag_no_normal_variable' into release-3.20
Merge-request: !6318
2021-07-08 07:46:41 -04:00
Robert Maynard 018d300ca0 Check*CompilerFlag: Do not set result as a normal variable too
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
2021-07-08 07:44:03 -04:00
Brad King 7b942e5068 Merge topic 'intel-oneapi-std-windows'
13961f3b43 Merge branch 'backport-3.20-intel-oneapi-std-windows'
5115dd1e2c IntelLLVM: Fix C/C++ standard level flags on Windows
84036d30d4 IntelLLVM: Fix C/C++ standard level flags on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6319
2021-07-08 07:36:57 -04:00
Robert Maynard 266fc8ada5 FindCUDAToolkit: Properly document the version support 2021-07-07 13:42:08 -04:00
Brad King 5115dd1e2c IntelLLVM: Fix C/C++ standard level flags on Windows
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
2021-07-07 12:25:38 -04:00
Brad King 84036d30d4 IntelLLVM: Fix C/C++ standard level flags on Windows
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
2021-07-07 12:24:36 -04:00
Marc Ruiz 9ce235fe5d CPack/NSIS: Update language list in template
Fixes: #22382
2021-07-07 11:59:49 -04:00
Ye Luo 0c1b9b3516 FindMPI: Choose definitions for MPI_CXX_SKIP_MPICXX before first use
Fixes: #22391
2021-07-07 09:51:01 -04:00
Brad King ed7b66561e Merge topic 'FindMPI-option-MPI_CXX_SKIP_MPICXX'
1a9ebd1694 FindMPI: Honor MPI_CXX_SKIP_MPICXX when set as a normal variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6315
2021-07-07 09:35:52 -04:00
Brad King 1eaef541cf Merge topic 'ifort_win32_log'
0602e35858 Intel/Fortran: Avoid recording warning 5117 lines in CMakeError.log

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6308
2021-07-07 09:34:48 -04:00
Brad King d49b507bb6 Merge topic 'FindPkgConfig-pkgconf'
94a84dc0af FindPkgConfig: add pkgconf to the search list.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6301
2021-07-07 09:33:42 -04:00
Brad King 900617f977 Merge topic 'FindGLUT-pkg-config'
f90d15458a FindGLUT: Use pkg-config to find flags if available
f3f0401187 FindGLUT: Reduce if/else nesting and indentation
bece79f9be Tests: Add case covering FindGLUT variables and imported targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6251
2021-07-07 09:32:38 -04:00
Brad King a1d0693175 Merge topic 'correct_cuda_toolkit_version_typo' into release-3.21
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
2021-07-07 09:29:06 -04:00
Brad King 8bfc96d5ed Merge topic 'correct_cuda_toolkit_version_typo'
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
2021-07-07 09:29:06 -04:00
Brad King 1a9ebd1694 FindMPI: Honor MPI_CXX_SKIP_MPICXX when set as a normal variable
Express the cache entry with `option()`.  In combination with policies
CMP0077 and CMP0102, this allows project code to control the switch with
a variable:

```
set(MPI_CXX_SKIP_MPICXX TRUE)
find_package(MPI COMPONENTS CXX)
```
2021-07-06 19:41:35 -04:00
Michael Hirsch 0602e35858 Intel/Fortran: Avoid recording warning 5117 lines in CMakeError.log 2021-07-06 14:03:14 -04:00
Robert Maynard 0d54276c82 Correct CUDAToolkit_VERSION_MINOR variable name typo 2021-07-06 08:43:13 -04:00
Christopher Degawa f90d15458a FindGLUT: Use pkg-config to find flags if available
FindGLUT fails to properly link a static libglut as it does not list
the dependencies needed.

Signed-off-by: Christopher Degawa <ccom@randomderp.com>
2021-07-02 13:33:18 -05:00
Christopher Degawa f3f0401187 FindGLUT: Reduce if/else nesting and indentation
Signed-off-by: Christopher Degawa <ccom@randomderp.com>
2021-07-02 13:33:18 -05:00
Alexander Neumann 94a84dc0af FindPkgConfig: add pkgconf to the search list. 2021-07-02 17:06:31 +02:00
Brad King 05c2108229 Merge topic 'FindCUDATookit-ordering'
d930145841 FindCUDATookit: Fix ordering of libraries in imported targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6286
2021-07-02 08:10:23 -04:00
Brad King a660f996d8 Merge topic 'compiler-id-msvc-no-lib'
e93245ec64 DetermineCompiler: Restore identification of MSVC with no INCLUDE or LIB

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6295
2021-07-02 08:05:53 -04:00
Brad King e93245ec64 DetermineCompiler: Restore identification of MSVC with no INCLUDE or LIB
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.
2021-07-01 13:04:16 -04:00
Dan Ibanez d930145841 FindCUDATookit: Fix ordering of libraries in imported targets
Before this a downstream code linking to `CUDA::cusparse_static` and
`CUDA::curand_static` would get a link line with `libcusparse_static.a`,
then `libculibos.a`, then `libcurand_static.a`.  Use `IMPORTED_LOCATION`
to tell CMake about the proper dependency ordering where `libculibos.a`
comes last, because the other two libraries depend on `libculibos.a`.

Fixes: #22365
2021-07-01 12:18:27 -04:00
Chuck Atkins 8cce0ad32f FindMPI: Fix missing static warning in the mpi test source 2021-06-30 16:51:06 -04:00
Brad King da79d6bdf6 Merge topic 'fujitsu-clang-findbinutils' into release-3.21
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
2021-06-30 07:31:39 -04:00
Brad King d4a0d59472 Merge topic 'fujitsu-clang-findbinutils'
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
2021-06-30 07:31:39 -04:00
Brad King e28c2ee9ae Merge topic 'rpm-suggests' into release-3.21
9b53eca317 CPack/RPM: Fix weak dep support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6274
2021-06-30 07:29:29 -04:00
Brad King a63ae2f1b8 Merge topic 'rpm-suggests'
9b53eca317 CPack/RPM: Fix weak dep support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6274
2021-06-30 07:29:29 -04:00
Brad King eb2ea3db8b Merge topic 'compiler-id-msvc-has-include'
c6aaaf066a DetermineCompiler: Restore identification of MSVC with no INCLUDE dirs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6284
2021-06-30 07:26:25 -04:00
Brad King c6aaaf066a DetermineCompiler: Restore identification of MSVC with no INCLUDE dirs
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.
2021-06-29 12:55:35 -04:00
Alex Sweet 9b53eca317 CPack/RPM: Fix weak dep support
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
2021-06-29 11:14:54 -04:00