summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Intel classic compilers on Windows: use msvc style dependenciesMarc Chevrier2022-09-132-12/+10
| | | | | | | | Intel classic compilers generate erroneous dependencies when gcc style is used with paths containing spaces. So, fall back to the old way to generate dependencies by using option /showIncludes. Fixes: #23948
* Merge topic 'fetchcontent-redirect-version-exact'Brad King2022-09-122-4/+10
|\ | | | | | | | | | | | | 48b380c961 FetchContent: Ignore EXACT for redirected find_package() calls Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7665
| * FetchContent: Ignore EXACT for redirected find_package() callsCraig Scott2022-09-112-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | When FetchContent_MakeAvailable() populates a dependency for which find_package() integration is enabled, all future calls to find_package() MUST succeed using the contents of the redirection directory. The generated config version file was not handling calls where the EXACT keyword was given, resulting in such calls rejecting the redirection directory's contents and continuing its search. It is not allowed to do that. Fix the generated file to also set PACKAGE_VERSION_EXACT to true so that calls with EXACT now accept it, as was originally intended. Fixes: #23950
* | Merge topic 'FortranCInterface-LLVMFlang'Brad King2022-09-122-3/+5
|\ \ | | | | | | | | | | | | | | | | | | 0f5b6dd215 FortranCInterface: Add support for LLVMFlang mangling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7658
| * | FortranCInterface: Add support for LLVMFlang manglingGilles Gouaillardet2022-09-092-3/+5
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following `module.f90` file module mymodule contains subroutine mysub() end subroutine end module when compiled with `flang-new` (from LLVM 15.0.0) generate the `_QMmymodulePmysub` symbol. $ flang-new -c module.f90 $ nm module.o 0000000000000000 T _QMmymodulePmysub This commit fixes the regular expressions accordingly.
* | Merge topic 'fetchcontent-unset-wrong-nested-var'Craig Scott2022-09-111-1/+1
|\ \ | | | | | | | | | | | | | | | | | | d9a6e0ffc8 FetchContent: Fix unsetting wrong variable name after provider returns Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7663
| * | FetchContent: Fix unsetting wrong variable name after provider returnsCraig Scott2022-09-101-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | The unset() command was using __cmake_contentNameLower before that variable was restored from the __cmake_fcCurrentVarsStack. That means if there had been a nested call to FetchContent_MakeAvailable(), the wrong variable name would have been cleared (the nested name instead of the one from the current call). That would have left the variable set upon return, blocking the dependency provider from seeing any further calls to FetchContent_MakeAvailable() in the current variable scope or below for the current dependency.
* | Merge topic 'fphsa-error-message-empty-version-var'Brad King2022-09-091-2/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | 8f50f135ae FPHSA: Improve error message when VERSION_VAR is empty or has been unset() Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7527
| * | FPHSA: Improve error message when VERSION_VAR is empty or has been unset()Andrea Pappacoda2022-09-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, when `VERSION_VAR` is set but empty, FPHSA emitted a confusing error message, saying that the package was found but of an unsuitable version "". Fix the error message to state that the package was not found. Fixes: #23807
* | | Merge topic 'BSD'Brad King2022-09-095-8/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1ea8b8ed86 BSD: Set CMAKE_HOST_BSD variable on a BSD host 288f72efea BSD: Only use BSD as variable for target BSD system Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7648
| * | | BSD: Set CMAKE_HOST_BSD variable on a BSD hostCristian Adam2022-09-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Also the BSD variable will be set in CMake scripting mode (-P). Relates: #23853
| * | | BSD: Only use BSD as variable for target BSD systemCristian Adam2022-09-054-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of having multiple boolean variables, we only have one string variable: BSD with the name of the target BSD system. Relates: #23853
* | | | Merge topic 'useswig-perl-module'Marc Chevrier2022-09-091-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5156eb5613 UseSWIG: track generated Perl module files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7654
| * | | | UseSWIG: track generated Perl module filesThomas Weißschuh2022-09-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | This makes sure the generated file is cleaned properly and allows to create dependencies on it.
* | | | | Merge topic 'fetchcontent-extra'Brad King2022-09-091-4/+4
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | | | | | 629d106c5e Help: Fix typo in FetchContent example, extras should read extra Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: hinell <al.neodim@gmail.com> Merge-request: !7657
| * | | Help: Fix typo in FetchContent example, extras should read extraMathieu Malaterre2022-09-091-4/+4
| | | | | | | | | | | | | | | | | | | | Amends 29e31e2825a (Packages: Integrate FetchContent and find_package(), 2022-04-28)
| * | | Merge topic 'zlib-windows-cross-compile-fix' into release-3.24Brad King2022-09-071-4/+20
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 67b6f1a09b FindZLIB: fix CMAKE_FIND_LIBRARY_PREFIXES being unset when it was empty Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7647
| * \ \ \ Merge topic 'findCUDAToolkit_declare_deps_for_targets_once' into release-3.24Brad King2022-09-071-17/+20
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f0918fe505 FindCUDAToolkit: Correctly state cusolver and cublas dependencies Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7633
| * \ \ \ \ Merge topic 'doc-fetchcontent-gtest-example' into release-3.24Craig Scott2022-09-051-2/+2
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | daa2a6cda6 Help: Fix wrong casing of GTest in FetchContent integration example Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7644
* | \ \ \ \ \ Merge topic 'cpack-reuse-cmake-tools'Brad King2022-09-073-18/+55
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0c638ab597 CPack: re-use paths of tools discovered by CMakeFindBinUtils Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7635
| * | | | | | | CPack: re-use paths of tools discovered by CMakeFindBinUtilsMatteo Martelli2022-09-063-18/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `CMakeFindBinUtils.cmake` sets `CMAKE_<TOOL>` variables that in cross-compilation environments point to the toolchain specific executables: e.g. `CMAKE_OBJCOPY` might point to `<path_to_toolchain>/arm-poky-linux-gnueabi-objcopy`. Pass this information to CPack.
* | | | | | | | Merge topic 'cuda_support_sm90a'Brad King2022-09-071-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 234aa7e0aa CUDA: Support upcoming sm90a architecture Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7649
| * | | | | | | | CUDA: Support upcoming sm90a architectureRobert Maynard2022-09-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The architecture values are being extended to have at time a trailing `a`. This updates the CMake regex to support this syntax.
* | | | | | | | | Merge topic 'zlib-windows-cross-compile-fix'Brad King2022-09-071-4/+20
|\ \ \ \ \ \ \ \ \ | | |_|_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 67b6f1a09b FindZLIB: fix CMAKE_FIND_LIBRARY_PREFIXES being unset when it was empty Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7647
| * | | | | | | | FindZLIB: fix CMAKE_FIND_LIBRARY_PREFIXES being unset when it was emptyDaniel Scharrer2022-09-061-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMAKE_FIND_LIBRARY_PREFIXES and CMAKE_FIND_LIBRARY_SUFFIXES have different behavior when undefined and when defined but empty: Empty means to use an empty prefix/suffix while undefined means to use a hardcoded default for the platform we are running on. Unfortunately, set(a ${b}) will undefine a when b is empty, meaning that when targeting a platform where either of these variables is empty (e.g. Windows where CMAKE_FIND_LIBRARY_PREFIXES is empty) the unpatched FindZLIB code ends up unsetting that variable, causing all subsequent find_library calls to use the hardcoded default for the runtime platform (e.g. "lib" for CMAKE_FIND_LIBRARY_PREFIXES on Linux). On the other hand, set(a "${b}") will always define a to be empty but defined so we have to do this dance to fully preserve the state of these variables.
* | | | | | | | | Merge topic 'findCUDAToolkit_declare_deps_for_targets_once'Brad King2022-09-071-17/+20
|\ \ \ \ \ \ \ \ \ | | |_|_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f0918fe505 FindCUDAToolkit: Correctly state cusolver and cublas dependencies Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7633
| * | | | | | | | FindCUDAToolkit: Correctly state cusolver and cublas dependenciesRobert Maynard2022-09-021-17/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #23920
* | | | | | | | | Merge topic 'implicit-link-info-msvc'Brad King2022-09-064-3/+11
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 93f2cd5b7c CMakeParseImplicitLinkInfo: Better detection of msvc Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7619
| * | | | | | | | CMakeParseImplicitLinkInfo: Better detection of msvcRobert Maynard2022-09-024-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the compiler id information in addition to checking for `cl.exe`.
* | | | | | | | | Merge topic 'doc-fetchcontent-gtest-example'Craig Scott2022-09-051-2/+2
|\ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | daa2a6cda6 Help: Fix wrong casing of GTest in FetchContent integration example Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7644
| * | | | | | | | Help: Fix wrong casing of GTest in FetchContent integration exampleCraig Scott2022-09-041-2/+2
| | |_|/ / / / / | |/| | | | | |
* | | | | | | | Merge topic 'ExternalProject-default-git-tag'Craig Scott2022-09-041-0/+3
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | / / | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | 2a21555ea7 ExternalProject: note the default of `GIT_TAG` being `master` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7631
| * | | | | | ExternalProject: note the default of `GIT_TAG` being `master`Ben Boeckel2022-09-021-0/+3
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported on Discourse: https://discourse.cmake.org/t/fetchcontent-makeavailable-invalid-reference-master/6386
* | | | | | Merge topic 'CMakeFindFrameworks-brew-arm64'Brad King2022-09-021-1/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5bfe33f092 CMakeFindFrameworks: Fix Brew 'Frameworks' path on Apple Silicon Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7618
| * | | | | | CMakeFindFrameworks: Fix Brew 'Frameworks' path on Apple SiliconJean-Baptiste Noël2022-09-011-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This approach is compatible with both Intel and Apple Silicon architectures. `/usr/local/Frameworks` was added in commit 9970cdcb59 (CMakeFindFrameworks: Allow custom framework locations, 2016-07-30, v3.7.0-rc1~296^2) unconditionally, but does not work on Apple Silicon. ``` x86_64 (Intel macOS): $ brew --prefix /usr/local arm64 (Apple Silicon macOS): $ brew --prefix /opt/homebrew ```
* | | | | | | Merge topic 'matlab_root'Brad King2022-09-021-1/+25
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 72dd680609 FindMatlab: follow CMP0074 <PackageName>_ROOT search behavior ba74c58ca4 FindMatlab: add'l check that Matlab test version file exists Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7616
| * | | | | | | FindMatlab: follow CMP0074 <PackageName>_ROOT search behaviorMichael Hirsch2022-09-011-1/+16
| | | | | | | |
| * | | | | | | FindMatlab: add'l check that Matlab test version file existsMichael Hirsch2022-09-011-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this last resort check is for some HPC with "module load matlab" not enacted that fail to catch in earlier checks. That would error CMake configure even if find_package(Matlab) is not REQUIRED
* | | | | | | | Merge topic 'add_language_levels_for_cxx26'Brad King2022-09-013-0/+21
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f808d8afb9 CMake: Support upcoming C++26 language level Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !7601
| * | | | | | | | CMake: Support upcoming C++26 language levelRobert Maynard2022-08-313-0/+21
| | | | | | | | |
* | | | | | | | | Merge topic 'FindPostgreSQL-brew'Brad King2022-09-011-0/+3
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | / / / / / | | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | f799e0f23d FindPostgreSQL: Add brew-style directories to search path Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7627
| * | | | | | | FindPostgreSQL: Add brew-style directories to search pathparkesb2022-08-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of 14.5, homebrew names PostgreSQL directories with the version number, e.g., `postgresql@14`.
| * | | | | | | Merge topic 'CMAKE_FIND_USE_INSTALL_PREFIX-support-staging-prefix' into ↵Brad King2022-08-311-3/+9
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | release-3.24 0fc10bb19b CMAKE_FIND_USE_INSTALL_PREFIX considers CMAKE_STAGING_PREFIX 43d31c5198 cmFindBase: Refactor CMAKE_FIND_USE_INSTALL_PREFIX handling Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7623
* | \ \ \ \ \ \ \ Merge topic 'ctest-target-alias-args'Brad King2022-08-311-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a79ccf7188 CTestTargets: Include CMAKE_CTEST_ARGUMENTS in CTEST_TEST_TARGET_ALIAS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7615
| * | | | | | | | | CTestTargets: Include CMAKE_CTEST_ARGUMENTS in CTEST_TEST_TARGET_ALIASCody Martin2022-08-301-1/+1
| | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the change from commit 4153d8445b (Add CMAKE_CTEST_ARGUMENTS variable to pass command-line arguments to ctest, 2019-12-28, v3.17.0-rc1~150^2) to cover the test target alias created by `CTEST_TEST_TARGET_ALIAS` too. This should allow: set(CMAKE_CTEST_ARGUMENTS -T Test --no-compress-output) set(CTEST_TEST_TARGET_ALIAS runtests) include(CTest) to use the arguments as part of `make runtests`. Fixes: #22239
* | | | | | | | | Merge topic 'FindOpenGL-clarify-output'Brad King2022-08-311-1/+1
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3a3ecef473 FindOpenGL: Fix confusing output with CMP0072 and OpenGL preference Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7604
| * | | | | | | | FindOpenGL: Fix confusing output with CMP0072 and OpenGL preferenceColton G. Rushton2022-08-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the legacy `GL` library is found, report that instead of GLVND's `OpenGL` in the "found" message.
* | | | | | | | | Merge topic 'FindOpenSP-module'Brad King2022-08-311-0/+155
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e706da5f7e FindOpenSP: Add module to find the OpenSP library 4bcdf1b992 ci: add OpenSP to Debian and Fedora base images Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7470
| * | | | | | | | | FindOpenSP: Add module to find the OpenSP libraryDawid Wróbel2022-08-301-0/+155
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenSP has not seen a release in seventeen years, so is unlikely to ever provide a CMake package configuration file. Add a find module instead.
* | | | | | | | | Merge topic 'CMAKE_FIND_USE_INSTALL_PREFIX-support-staging-prefix'Brad King2022-08-311-3/+9
|\ \ \ \ \ \ \ \ \ | | |_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0fc10bb19b CMAKE_FIND_USE_INSTALL_PREFIX considers CMAKE_STAGING_PREFIX 43d31c5198 cmFindBase: Refactor CMAKE_FIND_USE_INSTALL_PREFIX handling Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7623