summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'python3.11-support'Brad King2021-12-083-3/+3
|\ | | | | | | | | | | | | | | 43844c5d82 FindPython: Add support for Python 3.11 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Marc Chevrier <marc.chevrier@gmail.com> Merge-request: !6792
| * FindPython: Add support for Python 3.11Tomáš Hrnčiar2021-12-073-3/+3
| |
* | Merge topic 'lib-arch-no-usr'Brad King2021-12-071-1/+1
|\ \ | |/ | | | | | | | | | | d4ba945c48 CMakeParseLibraryArchitecture: Fix parsing /lib/<arch> implicit object path Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6790
| * CMakeParseLibraryArchitecture: Fix parsing /lib/<arch> implicit object pathRaphael Gozzo2021-12-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current regular expression is able to match `/usr/lib/<arch>`, `/usr/usr/lib/<arch>`, `/usr/usr/usr/lib/<arch>`, ... but not `/lib/<arch>`. This behavior ends up causing the detected architecture to be x86_64-pc-linux-gnu when the Clang compiler is installed on a "non-system" location (like /opt/llvm-13) which, in turn, makes almost every 'find_library()' fail because the correct architecture is x86_64-linux-gnu. This is due to a typo in commit 764606e256 (CMakeDetermineCompilerABI: Extract lib arch from implicit object file paths, 2021-04-05, v3.20.1~10^2), which used `+` instead of `?`.
* | Merge topic 'FindOpenSSL-applink'Brad King2021-12-071-1/+1
|\ \ | | | | | | | | | | | | | | | | | | 586d483983 FindOpenSSL: Fix typo in applink condition Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6787
| * | FindOpenSSL: Fix typo in applink conditionBrad King2021-12-061-1/+1
| | | | | | | | | | | | | | | | | | | | | In commit 7b83ca816a (FindOpenSSL: add target OpenSSL::applink to support OpenSSL's applink feature, 2020-05-12, v3.18.0-rc1~150^2) the version check was written as "major.major.fix" instead of "major.minor.fix".
* | | FindOpenSSL: Search in lib64 directories on non-Windows platformsBrad King2021-12-061-2/+2
|/ / | | | | | | | | | | | | | | The upstream `openssl` build system may install libraries to `lib64` even on platforms whose conventions do not use `lib64` for distro-packaged libraries. Fixes: #22945
* | Merge topic 'FindPkgConfig-pkgconf'Brad King2021-12-031-1/+1
|\ \ | |/ | | | | | | | | | | 90a49647e9 FindPkgConfig: Restore finding pkg-config before pkgconf Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6780
| * FindPkgConfig: Restore finding pkg-config before pkgconfBrad King2021-12-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | Since commit 94a84dc0af (FindPkgConfig: add pkgconf to the search list., 2021-07-02, v3.22.0-rc1~468^2), `pkgconf` is preferred over `pkg-config` if they appear in the same directory. In some environments, `pkg-config` may be a wrapper that adds semantics beyond either `pkgconf` or the normal `pkg-config`. Prefer `pkg-config` over `pkgconf` in order to preserve the prior behavior in such environments. Fixes: #22976
* | Merge topic 'FindPython-static-libs-hint'Brad King2021-12-023-0/+15
|\ \ | |/ | | | | | | | | | | a35bf772de FindPython: clarify static libraries hint usage Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6772
| * FindPython: clarify static libraries hint usageMarc Chevrier2021-12-013-0/+15
| | | | | | | | Fixes: #22956
| * Merge topic 'GNUInstallDirs-conda-fix' into release-3.22Brad King2021-12-011-1/+3
| |\ | | | | | | | | | | | | | | | | | | 7896991af0 GNUInstallDirs: Prefer system lib64 over conda lib when ambiguous Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6773
| * \ Merge topic 'doc-CMAKE_INSTALL_MODE' into release-3.22Brad King2021-11-301-0/+16
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3caeee0c86 Help: Clarify CMAKE_INSTALL_MODE documentation 699d4a98e2 Help: Use definition list for allowed values of CMAKE_INSTALL_MODE Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6743
* | \ \ Merge topic 'GNUInstallDirs-freebsd-mandir'Brad King2021-12-011-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c07bba2730 GNUInstallDirs: Update CMAKE_INSTALL_MANDIR for FreeBSD Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6722
| * | | | GNUInstallDirs: Update CMAKE_INSTALL_MANDIR for FreeBSDDmitry Marakasov2021-11-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FreeBSD has switched from PREFIX/man ro PREFIX/share/man see https://cgit.freebsd.org/ports/tree/CHANGES entry 20200115. Fixes: #22883
* | | | | Merge topic 'GNUInstallDirs-conda-fix'Brad King2021-12-011-1/+3
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | 7896991af0 GNUInstallDirs: Prefer system lib64 over conda lib when ambiguous Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6773
| * | | GNUInstallDirs: Prefer system lib64 over conda lib when ambiguousRobert Maynard2021-11-301-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update logic added by commit ecaca8c129 (GNUInstallDirs now aware of conda lib directory requirements, 2021-09-08, v3.22.0-rc1~142^2). When it is ambiguous if we are doing a conda install or a system install prefer using the system library directory. Fixes: #22962
* | | | Merge topic 'doc-CMAKE_INSTALL_MODE'Brad King2021-11-301-0/+16
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | 3caeee0c86 Help: Clarify CMAKE_INSTALL_MODE documentation 699d4a98e2 Help: Use definition list for allowed values of CMAKE_INSTALL_MODE Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6743
| * | | Help: Clarify CMAKE_INSTALL_MODE documentationFelix Lelchuk2021-11-231-0/+16
| | | | | | | | | | | | | | | | Fixes: #22869 Co-Authored-By: Craig Scott <craig.scott@crascit.com>
* | | | Merge topic 'compiler-id-classic-c'Brad King2021-11-293-3/+3
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | 0fc8b2f61c CompilerId: Restore support for classic C by avoiding C++ style comments Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !6759
| * | | CompilerId: Restore support for classic C by avoiding C++ style commentsBrad King2021-11-233-3/+3
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | C++ style comments were added by commit fc3a1cbdd8 (CompilerID: Compiler extensions default detection, 2021-05-29, v3.22.0-rc1~52^2~2), but they may not be supported by the default mode of some C compilers. Use C-style comments instead. For consistency, do this for all languages. Fixes: #22942
| * | Merge branch 'UseSWIG-create-workingdir' into release-3.22Brad King2021-11-221-1/+1
| |\ \ | | |/ | |/| | | | Merge-request: !6750
| * | Merge topic 'gtest_discover_tests-PRE_TEST-dep' into release-3.22Brad King2021-11-171-1/+2
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1bf6d5979d gtest_discover_tests: Re-run PRE_TEST discovery on any arg change 715af43124 Tests: Fix and update wrongly named GoogleTest stdout file Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6728
* | \ \ Merge topic 'FindGTest-target-for-gmock'Brad King2021-11-221-1/+55
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 50bf457a0d FindGTest: Add target for gmock library Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6632
| * | | | FindGTest: Add target for gmock libraryEero Aaltonen2021-11-221-1/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `googlemock` has been absorbed into the [googletest](https://github.com/google/googletest) project and is built and installed from the same source tree. As GTest may be built with or without GMock, skip GMock if it is not present. Do not provide result variables for GMock. They are not provided by upstream GTest's CMake Package Configuration File. Also update the test case to cover linking to `GTest::gmock`.
* | | | | Merge topic 'GNUInstallDirs-multiarch-prefixes'Brad King2021-11-221-3/+7
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dd9584b352 GNUInstallDirs: Apply Debian multiarch LIBDIR to more prefixes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6748
| * | | | | GNUInstallDirs: Apply Debian multiarch LIBDIR to more prefixesMathieu Malaterre2021-11-191-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On typical Debian amd64 system (bullseye), multiarch is setup as: ``` % cat /etc/ld.so.conf.d/x86_64-linux-gnu.conf /usr/local/lib/x86_64-linux-gnu /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu ``` Where: ``` % apt-cache policy libc6:amd64 libc6: Installed: 2.31-13+deb11u2 Candidate: 2.31-13+deb11u2 Version table: *** 2.31-13+deb11u2 500 500 http://deb.debian.org/debian bullseye/main amd64 Packages 100 /var/lib/dpkg/status ``` Update GNUInstallDirs to support all three cases `/`, `/usr/` and `/usr/local/`. Fixes: #19698
* | | | | | Merge topic 'cudatoolkit_update_cusparse_deps'Brad King2021-11-221-0/+17
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fedca357d2 FindCUDAToolkit: Correct cusparse dependencies for 10.1, 11.2.2 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6745
| * | | | | | FindCUDAToolkit: Correct cusparse dependencies for 10.1, 11.2.2Robert Maynard2021-11-191-0/+17
| | | | | | |
* | | | | | | Merge topic 'UseSWIG-create-workingdir'Brad King2021-11-221-1/+1
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | / | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | 7224eb5185 UseSWIG: ensure directory for depfile exists Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6750
| * | | | | UseSWIG: ensure directory for depfile existsMarc Chevrier2021-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When `Visual Studio` and `Xcode` generators are used, directory for depfile is not implicitely created by CMake when OUTFILE_DIR option is used. Fixes: #22932
| * | | | | Merge branch 'IntelLLVM-Fortran-frontend-variant' into release-3.21Brad King2021-11-111-0/+1
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !6718
* | \ \ \ \ \ Merge topic 'ghs_initial_setup'Brad King2021-11-192-33/+102
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aa59eaac4f GHS: Allow setting GHS variables from toolchain file ab6f0b51b1 GHS: Add note about -T and path style a55b5c4e18 GHS: Update BSP selection logic 0427f22539 GHS: Update RTOS selection logic e006b87cc6 GHS: GHSMULTI - Update documentation to match implementation 83eb5695e9 GHS: Update toolset selection logic 8114ddcad1 GHS: Continue splitting variables used by generator 831607889f GHS: Update selection of primaryTarget in MULTI project file ... Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6715
| * | | | | | GHS: Allow setting GHS variables from toolchain fileFred Baksik2021-11-151-32/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update generator to use the current variable definition, not the CACHE definition. * Avoid overwriting toolchain variables and avoid developer warnings when setting up the GHS variables. -- A cache entry is only required when: a) The toolchain uses set( CACHE ) to set the variable b) A -D or preset value was used to set the variable The cache entry is required so that the TYPE gets set properly. -- Avoid the Policy CMP0126 warnings: setting cache variable when normal variable exists * Move GHS_PRIMARY_TARGET back into area so non-GHS generator toolchain file can trigger the OS search.
| * | | | | | GHS: Update BSP selection logicFred Baksik2021-11-151-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Selection of a BSP only needs to be performed if not set by user. Remove all the logic for printing error and status messages about BSP selection. These messages also breaks CMake tests. NOTE: If BSP selection fails then the compiler checks will result in a build error. The build error will report that the BSP does not exist.
| * | | | | | GHS: Update RTOS selection logicFred Baksik2021-11-151-19/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Selection of an RTOS only needs to be performed if not set by user. Avoid CMake developer warnings for setting GHS_OS_DIR multiple times. Instead only set it once after searching has been performed. Remove all the logic for printing error and status messages about RTOS selection. This was broken and reporting incorrect messages. These messages also breaks CMake tests. NOTE: If RTOS selection fails then the compiler checks will result in a build error. The build error will report that the RTOS "GHS_OS_DIR-NOT-SPECIFIED" does not exist.
| * | | | | | GHS: Update toolset selection logicFred Baksik2021-11-151-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- Ensure that GHS_TOOLSET_ROOT is used as a path * Converts directory path slashes to CMake style -- Use ComparePath() to properly check for path changes of build tool * Accounts for Windows file-system case insensitivity. -- Don't print message "defaulting" messages (this causes CMake test failures) -- Don't force update CMAKE_GENERATOR_TOOLSET back into cache when `-T` is not used on initial configure. This change avoids an unnessary error message when accidentally using `-T` in subsequent runs but the same tools are always used. -- Use IssueMessage() for error messages.
| * | | | | | GHS: Continue splitting variables used by generatorFred Baksik2021-11-151-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes it easier to use GHS-MULTI platform in other generators that want to use the GHS-MULTI platform and compilers.
| * | | | | | GHS: Update selection of primaryTarget in MULTI project fileFred Baksik2021-11-152-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes to ``-A`` handling: * Don't force CMAKE_GENERATOR_PLATFORM into cache when using default value (breaks using CMake presets). * Don't print message when using default value (breaks CMake tests). Changes to ``GHS_PRIMARY_TARGET`` handling: * Add as a cache variable so its known to GUI * Don't always include``GHS_TARGET_PLATFORM``, it's only needed if ``GHS_PRIMARY_TARGET`` wasn't set by the user. * Set ``GHS_PRIMARY_TARGET`` during platform selection instead of when a language is enabled. By performing this sooner ``GHS_TARGET_PLATFORM`` is not always required to be set into cache.
* | | | | | | Merge topic 'FindHDF5-Fortran-without-HL'Brad King2021-11-181-2/+0
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 86c697f49a FindHDF5: Fix Fortran compiler interrogation without HL library Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6739
| * | | | | | | FindHDF5: Fix Fortran compiler interrogation without HL libraryHåkon Strandenes2021-11-171-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the HDF5 HL library is not available, FindHDF5 with Fortran does not work. The problem is because `cmake_hdf5_test.f90` tries to "use h5lt" and "use h5ds", which comes from the HL library. Then the basic compiler check fails completely. The two "use" lines were added by commit 00405af0f1 (HDF5: Refactor the use of compiler wrappers, 2016-04-04, v3.6.0-rc1~85^2) along with the rest of the check. Remove them. Fixes: #22890
* | | | | | | | Merge topic 'gtest_discover_tests-PRE_TEST-dep'Brad King2021-11-171-1/+2
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | / | | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | 1bf6d5979d gtest_discover_tests: Re-run PRE_TEST discovery on any arg change 715af43124 Tests: Fix and update wrongly named GoogleTest stdout file Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6728
| * | | | | | gtest_discover_tests: Re-run PRE_TEST discovery on any arg changeCraig Scott2021-11-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #22912
* | | | | | | Merge topic 'clang_windows_thinlto'Brad King2021-11-161-1/+6
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3155b23260 Clang/Windows: Use ThinLTO if possible to match other platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6730
| * | | | | | Clang/Windows: Use ThinLTO if possible to match other platformsRaul Tambre2021-11-141-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #22905.
* | | | | | | Merge topic 'doc-gtest_discover_tests-filter'Brad King2021-11-151-2/+5
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | / | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | 1ef54f3163 Help: Clarify meaning of filter expression in gtest_discover_tests() Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6727
| * | | | | Help: Clarify meaning of filter expression in gtest_discover_tests()Craig Scott2021-11-141-2/+5
| |/ / / /
| * | | | Merge topic 'IntelLLVM-Fortran-frontend-variant' into release-3.22Brad King2021-11-121-0/+1
| |\ \ \ \ | | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | b1edd6e7c7 Fortran: Save frontend variant persistently for IntelLLVM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6718
* | | | | Merge topic 'IntelLLVM-Fortran-frontend-variant'Brad King2021-11-121-0/+1
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | b1edd6e7c7 Fortran: Save frontend variant persistently for IntelLLVM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6718
| * | | | Fortran: Save frontend variant persistently for IntelLLVMWilliam R. Dieter2021-11-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit a90d2a9eed (IntelLLVM: Add support for Intel LLVM-based compilers, 2020-11-02, v3.20.0-rc1~89^2~20), our IntelLLVM compiler support populates `CMAKE_Fortran_COMPILER_FRONTEND_VARIANT`. However, the frontend variant was not stored in `CMakeCompilerFortran.cmake`. Signed-off-by: William R. Dieter <william.r.dieter@intel.com>