summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'FindEXPAT-static'Brad King2023-06-231-2/+21
|\ | | | | | | | | | | | | 302501ad36 FindEXPAT: add a EXPAT_USE_STATIC_LIBS hint Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8572
| * FindEXPAT: add a EXPAT_USE_STATIC_LIBS hintEven Rouault2023-06-221-2/+21
| | | | | | | | | | | | | | | | | | The effect of that hint is to restrict the candidate library names, but more essentially to set the `XML_STATIC` compile definitions which is required to get proper linking. Vcpkg-Issue: https://github.com/microsoft/vcpkg/issues/1100 GDAL-Issue: https://github.com/OSGeo/gdal/issues/7955
* | Merge topic 'FindCURL-static'Brad King2023-06-231-0/+23
|\ \ | | | | | | | | | | | | | | | | | | 97d0f76453 FindCURL: add a CURL_USE_STATIC_LIBS hint Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8573
| * | FindCURL: add a CURL_USE_STATIC_LIBS hintEven Rouault2023-06-221-0/+23
| |/ | | | | | | | | | | | | The effect of that hint is to set a CURL_STATICLIB compile definition, and to auxiliary system windows libraries for MSVC builds. GDAL-Issue: https://github.com/OSGeo/gdal/issues/7955
* | Merge topic 'android-platform-vars'Brad King2023-06-201-5/+5
|\ \ | | | | | | | | | | | | | | | | | | ab66b89a46 Android: Restore platform id vars with legacy toolchain file Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8576
| * | Android: Restore platform id vars with legacy toolchain fileBrad King2023-06-201-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Restore definition of `ANDROID` and `UNIX` when `CMAKE_SYSTEM_VERSION` is `1`. This was broken by commit 1373373823 (enable_language: Establish target platform identification variables earlier, 2023-06-06, v3.27.0-rc1~3^2~1). Fixes: #25004
* | | Merge topic 'FindProtobuf-version-schemes'Brad King2023-06-201-1/+5
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | fc7dcc6a24 FindProtobuf: Support new version number scheme Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8574
| * | FindProtobuf: Support new version number schemeJannik Beyerstedt2023-06-201-1/+5
| |/ | | | | | | | | | | | | | | | | Protobuf changed it's version number scheme with version 21. The first number (usually the major version) is not synchronized between compiler and library version, but the second and third number are. See https://protobuf.dev/news/2022-05-06/ for more details. Fixes: #24847
* | Merge topic 'FindPostgreSQL-15'Brad King2023-06-161-2/+2
|\ \ | |/ | | | | | | | | | | 80ba2cccfc FindPostgreSQL: Add support for version 15 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8568
| * FindPostgreSQL: Add support for version 15Brad King2023-06-161-2/+2
| |
* | Drop Visual Studio 11 2012 generatorBrad King2023-06-132-3/+3
|/ | | | This generator has been deprecated since CMake 3.25. Remove it.
* Modules: Restore unnecessary inclusions for compatibilityBrad King2023-06-127-0/+30
| | | | | | | | | | | Since commit 03c6ebf2b5 (Modules:Check,GenerateExportHeader: include only what's needed, 2023-03-09, v3.27.0-rc1~327^2) some existing projects broke because they were accidentally relying on indirect inclusion of some check modules. For now, restore the unnecessary includes for compatibility. They can be removed with a policy later. Fixes: #24991 Issue: #24994
* Merge topic 'FindCUDAToolkit-cupti-nvperf' into release-3.27Brad King2023-06-081-8/+29
|\ | | | | | | | | | | | | f9579ffaa6 FindCUDAToolkit: Add cupti nvperf and pcsampling targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8545
| * FindCUDAToolkit: Add cupti nvperf and pcsampling targetsRobert Maynard2023-06-071-8/+29
| |
* | BinUtils: Drop now-unnecessary cross-compiling workaround for Apple hostsBrad King2023-06-071-15/+5
| | | | | | | | | | | | | | | | | | Previously we added fallbacks to `llvm-{ar,strip}` on Apple hosts in case of cross-compiling because the `APPLE` platform variable was not set w.r.t. the target platform. The platform variable has been fixed, so remove the fallbacks. Issue: #23333
* | enable_language: Establish target platform identification variables earlierBrad King2023-06-0767-64/+85
| | | | | | | | | | | | | | | | Set target platform identification variables like `APPLE` and `LINUX` as soon as the target system is identified. This makes them available during toolchain and binutils selection. Fixes: #23333
* | kFreeBSD,GNU: Provide multiarch library directory regex earlierBrad King2023-06-066-7/+9
|/ | | | | | | | Make `CMAKE_LIBRARY_ARCHITECTURE_REGEX` available while determining compilers before `Platform/{kFreeBSD,GNU}` is loaded. Follow up commit cc737ae829 (Linux: Provide multiarch library directory regex earlier, 2023-05-31).
* Merge topic 'apple-clang-asm-compiler-id'Brad King2023-06-062-4/+5
|\ | | | | | | | | | | | | 8c789bee83 AppleClang: Fix ASM compiler identification Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8537
| * AppleClang: Fix ASM compiler identificationGregor Jasny2023-06-052-4/+5
| | | | | | | | | | Recent AppleClang compilers identify themselves as `Apple clang version 14.0.3 (clang-1403.0.22.14.1)`.
* | Merge topic 'FindPython-distutils-deprecation'Brad King2023-06-064-52/+28
|\ \ | | | | | | | | | | | | | | | | | | | | | 988ac305bd FindPython: update for distutils module deprecation Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8538
| * | FindPython: update for distutils module deprecationMarc Chevrier2023-06-054-52/+28
| |/ | | | | | | Fixes: #24956
* | FindOpenACC: Keep flags together in imported target usage requirementsBrad King2023-06-021-2/+2
|/ | | | | | | | If `OpenACC_C_FLAGS` contains `-h acc`, the flag pair needs to be preserved as a shell command fragment, and must not be split by de-duplication with other `target_compile_options`. Fixes: #24963
* FindOpenMP: Keep flags together in imported target usage requirementsBrad King2023-06-011-4/+2
| | | | | | | | If `OpenMP_C_FLAGS` contains `-Xclang -fopenmp`, the flag pair needs to be preserved as a shell command fragment, and must not be split by de-duplication with other `target_compile_options`. Fixes: #24966
* Merge topic 'ep-tls-verify'Brad King2023-06-013-14/+54
|\ | | | | | | | | | | | | | | dcbc36572f ExternalProject: Respect TLS_VERIFY for git update step 8fdce89f70 Help: Clarify default TLS_VERIFY behavior for git download method Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8516
| * ExternalProject: Respect TLS_VERIFY for git update stepCraig Scott2023-06-013-13/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Git config options can be passed to git clone before or after the "clone" keyword. If specified before, the config setting is only applied to that command invocation. It acts to override the value in the global or project defaults (the latter doesn't exist for clone). When the config setting is passed after the "clone" keyword, it is saved into the cloned repository's config and will persist for later git operations. The existing implementation expected the latter behavior, but put the config setting before the "clone" keyword and therefore the setting was not persisting to the git update step. Move it to after the "clone" keyword so that it will persist. The submodule handling is different. There is no support for doing a "git submodule update" with a "sticky" config setting. Instead, you have to pass the setting with all such calls. The existing implementation was doing this for the clone step, but not the git update step. Add the config setting there as well so that submodules also effectively have the sslVerify setting persist to the update step too. Fixes: #18948
| * Help: Clarify default TLS_VERIFY behavior for git download methodCraig Scott2023-05-281-1/+6
| |
* | HIP: Fix search for hip-lang CMake package on multiarch distrosBrad King2023-05-313-8/+45
| | | | | | | | | | | | | | | | | | | | We need `CMAKE_LIBRARY_ARCHITECTURE` to find the package before HIP compiler ABI detection. However, if HIP is the first enabled language, the value is not known until `CMAKE_HIP_LIBRARY_ARCHITECTURE` is determined by the ABI detection step. Resolve this by detecting `CMAKE_HIP_LIBRARY_ARCHITECTURE` from the compiler id output. Fixes: #24562
* | Linux: Provide multiarch library directory regex earlierBrad King2023-05-312-3/+2
| | | | | | | | | | Make `CMAKE_LIBRARY_ARCHITECTURE_REGEX` available while determining compilers before `Platform/Linux` is loaded.
* | Merge topic 'find-boost-1.82'Brad King2023-05-311-2/+3
|\ \ | | | | | | | | | | | | | | | | | | 5cbbe55de8 FindBoost: Add support for Boost 1.82 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8514
| * | FindBoost: Add support for Boost 1.82huangqinjin2023-05-311-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the list of known versions. There is a new header-only library, Boost.MySQL. It has no dependencies and has a core header `<boost/mysql.hpp>`. Run the command cmake -DBOOST_DIR=/path/to/boost_1_82_0 \ -P Utilities/Scripts/BoostScanDeps.cmake to extract dependencies from the 1.82.0 source tree. They are the same as 1.81's dependencies, so just update the version check for warning about newer versions.
* | | Merge topic 'werror_space_fix'Brad King2023-05-311-1/+1
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | cec6f98018 CMakeDetermineCompilerABI: Avoid removing the flag after -Werror Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Robert Maynard <robertjmaynard@gmail.com> Merge-request: !8518
| * | CMakeDetermineCompilerABI: Avoid removing the flag after -WerrorRaul Tambre2023-05-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The matching became too eager after commit 079ea66468 (CMakeDetermineCompilerABI: Handle NVCC-style -Werror flags, 2020-10-04, v3.19.0-rc1~45^2). When -Werror was specified without a value we would eat the following flag. Prevent this by disallowing "-" as the first character of the flag's value. Fixes: 079ea66468a6ffe0b02c3d6622bc0230fdf455b0 See-also: https://discourse.cmake.org/t/8230
| * | Merge topic 'FindPython-fix-launcher-typo' into release-3.26Brad King2023-05-181-1/+1
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 31faf3945f FindPython: fix interpreter launcher variable spelling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8487
* | | | Link Step: ensure the correct linker is used for depfile configurationMarc Chevrier2023-05-2810-18/+11
| |_|/ |/| | | | | | | | This is related to MR !8443.
* | | Merge topic 'implicit-link-dir-exclude'Brad King2023-05-261-0/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 023de565d3 Optionally exclude implicit link directories via environment Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Roscoe A. Bartlett <rabartl@sandia.gov> Merge-request: !8506
| * | | Optionally exclude implicit link directories via environmentBrad King2023-05-251-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A misconfigured compiler may pass extraneous implicit link directories to its linker. If they are in `CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES`, CMake may generate extra `-L` flags on mixed-language link lines that break linking. Add an environment variable that users can set to work around such misconfiguration of their compilers.
* | | | IntelLLVM: Use compiler driver as linker for MODULE libraries tooWilliam R. Dieter2023-05-251-0/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 79921fb00c (IntelLLVM: Set linker to compiler driver for Windows, 2021-10-19, v3.23.0-rc1~127^2) we default to the compiler driver as linker for executables, shared libraries, and static libraries. Not doing so for shared modules was an oversight. Copying the shared library command line for shared modules fixes the problem (and also is what we do for MSVC). The MSVC linker is fine for many cases, however it does not support GPU offload code generated by the IntelLLVM compilers. Using the compiler driver as linker, or at least a linker that understands the object format, is required for linking shared modules that use GPU offload (e.g., with SYCL or OpenMP). Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
* | | Merge topic 'ep-update-disconnected'Brad King2023-05-235-44/+158
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8cc45e150a ExternalProject: Make hg download method respect UPDATE_DISCONNECTED 1512dc43cb ExternalProject: Avoid reconfigure when updates are disconnected 1d29cf37a1 Tests: Reduce warning noise in ExternalProjectUpdate test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8498
| * | | ExternalProject: Make hg download method respect UPDATE_DISCONNECTEDCraig Scott2023-05-231-0/+2
| | | |
| * | | ExternalProject: Avoid reconfigure when updates are disconnectedCraig Scott2023-05-235-44/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When UPDATE_DISCONNECTED is true, create separate update_disconnected and patch_disconnected targets which have ALWAYS set to false. Make the configure step depend on patch_disconnected in this case too. This ensures the configure, build, install and test steps are not executed unnecessarily when updates are disconnected. Make the update and patch commands depend on the details of those steps. This ensures they are re-executed when any of those details change, even if updates are disconnected. Allow updates to occur even if UPDATE_DISCONNECTED is true, but don't contact the remote in that case. If asked to update to a ref that isn't known locally, that is now detected and causes a fatal error when updates are disconnected. Previously, the build would have silently and erroneously continued to use the old ref. Fixes: #16419, #19703, #21146
* | | | Merge topic 'iar-fix-support-avr-8101'Brad King2023-05-231-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 57f22c6a3d IAR:Fix version detection for xlinkavr Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8501
| * | | | IAR:Fix version detection for xlinkavrFelipe Torrezan2023-05-221-1/+1
| |/ / / | | | | | | | | | | | | | | | | - The comparison for minimum version for detecting the newer xlinkavr was encompassing V7.30.5, which uses the old `xlink` without target suffix.
* | | | Merge topic 'FindOpenSSL-deps'Brad King2023-05-231-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f7e1e0545f FindOpenSSL: Enable static library dependencies on more platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Jürg Billeter <j@bitron.ch> Merge-request: !8497
| * | | | FindOpenSSL: Enable static library dependencies on more platformsBrad King2023-05-191-3/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Activate the logic from commit 8098bd5768 (FindOpenSSL: add pthread and dl dependencies to static lib on Linux, 2019-09-13, v3.16.0-rc1~72^2) on more UNIX platforms. Fixes: #24870
* | | | codespell: Fix typosBrad King2023-05-229-9/+9
| | | |
* | | | Merge topic 'FindOpenSSL-trust-root-dir'Brad King2023-05-221-10/+8
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | 5cc8a69867 FindOpenSSL: Trust the user's OPENSSL_ROOT_DIR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8486
| * | | FindOpenSSL: Trust the user's OPENSSL_ROOT_DIRRichard Levitte2023-05-191-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the user has specified the OpenSSL installation root directory, through the variable OPENSSL_ROOT_DIR or the environment variable with the same name, trust it, don't try to find OpenSSL anywhere else. Fixes: #18352
* | | | Merge topic 'clang_cxx26'Brad King2023-05-181-0/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0183956d30 Clang: C++26 support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8480
| * | | | Clang: C++26 supportRaul Tambre2023-05-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Added in LLVM commit b763d6a4ed4650c74c6846d743156468563b0e31. This time the final flag form is supported from the get-go to reduce churn.
* | | | | Merge topic 'iar-add-support-avr-8101'Brad King2023-05-183-7/+12
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7cd982faf4 IAR: Added support for IAR C/C++ Compiler for Microchip AVR 8.10+ Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8481