- May 06, 2021
-
-
This allows for example reusing the function for generating gRPC code by specifying which grpc plugin to use.
-
Tell the Fortran compiler to write preprocessor output directly to a file, as we do for the GNU compiler. The previous "redirect stdout" approach could break checks using flags that add information to stdout when called with `-###`. Fixes: #22156
-
The original regular expression was greedy and would match any environment variable ending with `TOP` (like `DESKTOP`). This is an issue on windows where `nvcc -v` would output all environment variables before the compiler's verbose output. To resolve this issue we use a tighter match algorithm that looks for `#$ TOP=` instead of `TOP=`. Fixes: #22158
-
- May 04, 2021
-
-
Brad King authored
Since commit 4d786dfc (BinUtils: Avoid clobbering a variable named without a private prefix, 2021-04-06, v3.20.1~4^2) we use variables named `_tool` and `_name`, but these may still be common enough to affect project code. Use `_CMAKE_TOOL` and `_CMAKE_TOOL_NAME` instead, and unset them when finished. Fixes: #22140
-
Previously it was mentioned only in the `file` and `ExternalProject` documentation.
-
- May 03, 2021
-
-
Seth R Johnson authored
-
Brad King authored
If a `CMakeLists.txt` or `CMAKE_TOOLCHAIN_FILE` sets a variable named `C`, `CXX`, or `CUDA`, 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. Fixes: #22125
- May 02, 2021
-
-
Seth R Johnson authored
If all SWIG cache variables (EXECUTABLE, DIR, VERSION) are set, there should be no need to invoke the SWIG exe on a reconfigure. This changeset reduces the number of calls to the SWIG executable, and additonially prevents temporary `SWIG_xxx` values from propagating outside the `find_package` call. I also refactored the conditionals to be less nested (and thus more predictable), including changing theh definition of SWIG_USE_FILE to reflect that it's if and only if SWIG_FOUND is trure.
-
Seth R Johnson authored
-
- Apr 29, 2021
-
-
Eisuke Kawashima authored
fix #21811
-
- Apr 28, 2021
-
-
-
Brad King authored
The ifx beta versions forgot to define `__INTEL_LLVM_COMPILER`, and instead define `__INTEL_COMPILER == 201900`. Add a special case. Issue: #22120
-
- Apr 27, 2021
-
-
If a previous installation was detected by the NSIS script the uninstaller was not correctly run unless it was still named `Uninstall.exe`. This meant that using `CPACK_NSIS_UNINSTALL_NAME` was simply broken. Fixes: #22103
-
The compile options `--march=<arch>` and `--mcpu=<cpu>` and the link option `--cpu=<cpu>` are automatically added by CMake based on `CMAKE_SYSTEM_PROCESSOR` or `CMAKE_SYSTEM_ARCH`. But this is not sufficient, because armclang also supports enabling or disabling features using `+<feature>`: -mcpu=<name>[+[no]<feature>+...] For example: -mcpu=cortex-a57+nocrypto+nofp+nosimd+crc (Reference: https://developer.arm.com/documentation/dui0774/k/Compiler-Command-line-Options/-mcpu?lang=en) The problem is, even if a project adds a flag with features it needs, CMake still adds flags, resulting in code that is compiled with wrong CPU features and unable to run. Add policy `CMP0123` to not automatically add compile or link options, and let projects set them instead. Co-Author: Brad King <brad.king@kitware.com> Fixes: #21173
-
Brad King authored
Suggested-by: Kim Kryger
-
- Apr 26, 2021
- Apr 23, 2021
-
-
Marc Chevrier authored
-
Brad King authored
Since commit da7ad799 (WriteCompilerDetectionHeader: Add policy to remove module, 2020-12-04, v3.20.0-rc1~350^2), the WCDH module is deprecated. Update the `cmake-compile-features(7)` manual section that previously recommended WCDH to make such detection the project's responsibility instead. Move the old content of the section over to the WCDH module to preserve it.
-
- Apr 22, 2021
-
-
Merge use of SetFilterOption() into more abstract thread count in cmArchiveWrite constructor. libarchive defaulting of threads for threads == 0 seems to be configuration dependent. Preemptively default thread count via std::thread::hardware_concurrency(). Also allow negative values for the thread count in which case the detected hardware concurrency is also used but the given absolute thread count is used as an upper limit.
-
-
Brad King authored
Report the underlying system error.
-
-
- Apr 21, 2021
-
-
Brad King authored
Fixes: #21071
-
Brad King authored
Now that `CHECK_{BLAS,LAPACK}_LIBRARIES` are functions, we can set `CMAKE_FIND_LIBRARY_SUFFIXES` locally without affecting the global state. This avoids the need for local state switching that was added in commit 9ef82d95 (FindBLAS: Fix detection of OpenMP as dependency of BLA_STATIC, 2021-04-07, v3.20.1~3^2), so remove that.
-
Brad King authored
Now that `CHECK_{BLAS,LAPACK}_LIBRARIES` are functions, we can set `CMAKE_REQUIRED_QUIET` locally without affecting the global state.
-
- Apr 16, 2021
-
-
Since commit b12aec6c (BinUtils: prefer bin utils matching the compiler version extension, 2020-12-11, v3.20.0-rc1~171^2) we recognize `clangg++` and `g++` but not `c++`. Restore `[gc]` in place of `g` in the regex, as we had before that change. Fixes: #22069
-
- Apr 14, 2021
-
-
Fix typos from commit 3c867cff (Fujitsu: Add support for the Fujitsu compiler in Trad mode, 2020-12-22).
-
-
Brad King authored
-
Brad King authored
-
Brad King authored
-
Brad King authored
-
Brad King authored
-
Brad King authored
Refactoring in commit 4c74c86f (FindBLAS/LAPACK: Add support for the Fujitsu SSL2 library, 2021-01-27) was done in order to support calling `find_library` on the dependencies as well as the candidate libraries. However, it broke a few things: * Intel MKL's BLAS/LAPACK are no longer found. We specify their dependencies using `-l...` flags, so we should not try to use `find_library` for them. * The dependencies are repeated because we accumulate them in the `find_library` search loop and then append them at the end too. Revert the incorrect part of the refactoring. Retain the flags part needed for the Fujitsu vendor. Fixes: #22056
-