summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* LLVMFlang: Add support for LLVM FlangTin Huynh2022-05-243-0/+21
| | | | | | | | | LLVM Flang (https://github.com/llvm/llvm-project/tree/main/flang) is an LLVM Fortran compiler that shares the same name as Flang (also known as Classic Flang). Classic Flang is in active development and is already identified by CMake as Flang. As such, LLVM Flang will be identified as `LLVMFlang`. Fixes: #22387
* Merge topic 'findvulkan-moltenvk'Brad King2022-05-241-0/+87
|\ | | | | | | | | | | | | | | d9b4264cb8 FindVulkan: Add component for `MoltenVK` 10a6bb16bb FindVulkan: Mark test target with `cxx_std_11` to avoid AppleClang warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7286
| * FindVulkan: Add component for `MoltenVK`MACHIZAUD Andréa2022-05-221-0/+87
| |
* | Merge topic 'externalproject-cleanup'Brad King2022-05-231-344/+793
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 3351b7b82c ExternalProject: Reformatting only 691f0c7612 ExternalProject: Minor cleanup to use more convenient commands b4db306aff ExternalProject: Remove unused property docs 5c021c8355 ExternalProject: Replace SEND_ERROR with FATAL_ERROR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7285
| * | ExternalProject: Reformatting onlyCraig Scott2022-05-221-291/+769
| | | | | | | | | | | | | | | | | | | | | | | | - Rewrap docs and commands to 80 character width, as per code guidelines. - Reformat argument lists across multiple lines to improve readability. - Use consistent closing parentheses on multi-line calls. - Clean up indenting.
| * | ExternalProject: Minor cleanup to use more convenient commandsCraig Scott2022-05-221-12/+14
| | | | | | | | | | | | There is no effective functional change with this commit. It is mostly just to simplify readability.
| * | ExternalProject: Remove unused property docsCraig Scott2022-05-221-38/+5
| | | | | | | | | | | | | | | | | | | | | | | | BRIEF_DOCS and FULL_DOCS became optional as of edb5059216 (define_property(): Make BRIEF_DOCS and FULL_DOCS optional, 2022-01-18). Remove these options from the define_property() calls, since they served no useful purpose. The canonical documentation of those properties is in the RST docs at the top of the file.
| * | ExternalProject: Replace SEND_ERROR with FATAL_ERRORCraig Scott2022-05-221-3/+5
| |/ | | | | | | The one remaining SEND_ERROR is still needed because further messages must be written before a final FATAL_ERROR on that code path.
* | Merge topic 'pkgconfig-static-libs'Brad King2022-05-231-45/+95
|\ \ | |/ |/| | | | | | | | | | | | | | | 020976d637 FindPkgConfig: Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET. 3c5cc79adb Tests: De-duplicate some code in RunCMake.FindPkgConfig 5cfbc76371 FindPkgConfig: Fix parsing of backslash-escaped spaces in pkg-config output Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7070
| * FindPkgConfig: Populate _STATIC_LINK_LIBRARIES. Add STATIC_TARGET.Alex Birch2022-05-201-44/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add LINK_LIBRARIES test to demonstrate static linking of transitive dependencies. Add STATIC_TARGET argument to pkg_check_modules() and pkg_search_module(). Influences the properties of target produced by IMPORTED_TARGET. When enabled: target's properties will be populated from <XXX>_STATIC_* variables instead of from <XXX>_* variables. Update existing tests concerning properties of targets produced via IMPORTED_TARGET, to test STATIC_TARGET variant too. Update existing tests concerning <XXX>_* variables to test <XXX>_STATIC_* variables too. Breaking changes to pkg_check_modules() and pkg_search_module(): - Variables CMAKE_FIND_LIBRARY_PREFIXES and CMAKE_FIND_LIBRARY_SUFFIXES can no longer be used to influence library lookup (i.e. the internal call to find_library()), because FindPkgConfig now internally relies on these variables to differentiate between shared and static library lookup. Prefer CMAKE_SHARED_LIBRARY_PREFIX + CMAKE_SHARED_LIBRARY_SUFFIX, or CMAKE_STATIC_LIBRARY_PREFIX + CMAKE_STATIC_LIBRARY_SUFFIX, depending on whether you wish to impact static or shared lookup. - <XXX>_LINK_LIBRARIES will now be populated only with libraries located via CMAKE_SHARED_LIBRARY_PREFIX + CMAKE_SHARED_LIBRARY_SUFFIX match - <XXX>_STATIC_LIBRARIES now processes -framework options - <XXX>_STATIC_LDFLAGS_OTHER now processes -framework options - <XXX>_STATIC_CFLAGS_OTHER now processes -isystem options - <XXX>_STATIC_INCLUDE_DIRS now processes -isystem options Fixes: #21714
| * FindPkgConfig: Fix parsing of backslash-escaped spaces in pkg-config outputAlex Birch2022-05-121-1/+3
| | | | | | | | | | | | | | | | Treat backslash-escaped spaces as "space within argument" rather than "space delimiting arguments". Update our `FindPkgConfig_LIBRARY_PATH` test case to escape spaces in the path, and run it unconditionally.
* | Merge topic 'findvulkan-improvements'Brad King2022-05-201-50/+516
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7974fcd1a7 FindVulkan: remove noop on CMAKE_MODULE_PATH in tests acdb5fe0e8 FindVulkan: Add component for `glslc` and `glslangValidator` 998ee49779 FindVulkan: ensure policy CMP0057 is NEW to use `IN_LIST` with `if()` 9f8720e74c FindVulkan: Add component for `glslang` 8d133f49e3 FindVulkan: Add component for `SPIRV-Tools` 6e4d20921d FindVulkan: Add component for `shaderc_combined` 2f46b8d723 FindVulkan: Move `mark_as_advanced` right after `find_*` calls. 08a420af4a FindVulkan: Factorize code for library/executable search Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7225
| * | FindVulkan: Add component for `glslc` and `glslangValidator`MACHIZAUD Andréa2022-05-181-17/+48
| | | | | | | | | | | | For backward compatibility with previous CMake versions they are implicitly added to the list of components
| * | FindVulkan: ensure policy CMP0057 is NEW to use `IN_LIST` with `if()`MACHIZAUD Andréa2022-05-181-0/+5
| | |
| * | FindVulkan: Add component for `glslang`MACHIZAUD Andréa2022-05-181-3/+279
| | |
| * | FindVulkan: Add component for `SPIRV-Tools`MACHIZAUD Andréa2022-05-181-4/+53
| | |
| * | FindVulkan: Add component for `shaderc_combined`MACHIZAUD Andréa2022-05-181-0/+97
| | |
| * | FindVulkan: Move `mark_as_advanced` right after `find_*` calls.MACHIZAUD Andréa2022-05-131-3/+6
| | |
| * | FindVulkan: Factorize code for library/executable searchMACHIZAUD Andréa2022-05-131-51/+56
| | |
* | | Merge topic 'cpack-nuget-components-on-windows'Brad King2022-05-191-1/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 066ff258db CPack/NuGet: Restore component packaging on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7280
| * | | CPack/NuGet: Restore component packaging on WindowsAlex Turbov2022-05-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change from `\` to `/` in commit dade75509f (CPack/NuGet: Fix nuspec file generation for UNIX-style OS, 2020-12-21, v3.20.0-rc1~243^2) does not work on Windows. Use `cmake_path` to form a path to an image directory with preinstalled files. Fixes: #22489
* | | | Merge topic 'clang-imsvc'Brad King2022-05-181-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | faed1562fb Merge branch 'backport-3.23-clang-imsvc' into clang-imsvc 23a52561c7 Clang: Use -imsvc flag without space to support Clang tools Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Acked-by: hihig2001 <hihig@bluehole.net> Merge-request: !7274
| * \ \ \ Merge branch 'backport-3.23-clang-imsvc' into clang-imsvcBrad King2022-05-171-1/+1
| |\ \ \ \ | | |/ / /
| | * | | Clang: Use -imsvc flag without space to support Clang toolsBrad King2022-05-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit bb61c2d024 (Clang: use -imsvc for system include dirs when running on Windows, 2020-09-16, v3.19.0-rc1~162^2) we use the `-imsvc` flag followed by the include directory as a separate argument. Some versions of `clang-tidy` do not support the flag unless the include directory is attached to it, so use that form instead. A similar fix was made by commit 3a8b6653dc (MSVC: Use -external:I flag without space to support Clang tools, 2022-01-11, v3.22.2~8^2). Fixes: #23517
| | * | | Merge topic 'FortranCInterface-gcc12' into release-3.23Brad King2022-05-171-0/+3
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cb616d43d6 FortranCInterface: Fix failure with gfortran 12 and Clang Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7266
| | * \ \ \ Merge topic 'FindPkgConfig-LIBRARY_PATH' into release-3.23Brad King2022-05-131-1/+3
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 11c8da94d4 FindPkgConfig: Fix preservation of ENV{PKG_CONFIG_ALLOW_SYSTEM_LIBS} Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7258
* | | \ \ \ \ Merge topic 'FindGLUT-remove-undocumented-vars'Brad King2022-05-181-4/+0
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6c053e68df FindGLUT: Remove undocumented variables GLUT_INCLUDE_PATH and GLUT_LIBRARY Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7273
| * | | | | | | FindGLUT: Remove undocumented variables GLUT_INCLUDE_PATH and GLUT_LIBRARYLetu Ren2022-05-171-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #23370
* | | | | | | | Merge topic 'fetchcontent-subbuild-config-type-fix'Brad King2022-05-181-3/+3
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 82f3ceb26b FetchContent: Use Debug rather than Release for sub-build Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7272
| * | | | | | | FetchContent: Use Debug rather than Release for sub-buildCraig Scott2022-05-171-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The config used can be part of the path to the sub-build. On some platforms, there are restrictions on the length of paths or file names. Use Debug rather than Release because the former is shorter. When CMAKE_CONFIGURATION_TYPES is left at its default, this also makes the path the same as the previous default before 10865c8e5f (FetchContent: Hard-code a config for the sub-build, 2022-05-01) .
* | | | | | | | Merge topic 'findzlib-static'Brad King2022-05-171-6/+16
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3f0b9663a4 FindZLIB: fix ZLIB_USE_STATIC_LIBS on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7262
| * | | | | | | | FindZLIB: fix ZLIB_USE_STATIC_LIBS on WindowsPeter Würth2022-05-131-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - on Windows, the ZLIB_USE_STATIC_LIBS options requires a reordering of the search names in order to prefer the static library, since in most cases both static and shared libraries are built - add zlibwapi[d] library name for the contrib/vstudio builds - add lib prefix and .dll.a suffix for the win32/Makefile.gcc build Fixes #23140
* | | | | | | | | Merge topic 'FortranCInterface-gcc12'Brad King2022-05-171-0/+3
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | / / / | | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | cb616d43d6 FortranCInterface: Fix failure with gfortran 12 and Clang Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7266
| * | | | | | | FortranCInterface: Fix failure with gfortran 12 and ClangBrad King2022-05-161-0/+3
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The C flags added by commit 6a0ce19ce1 (FortranCInterface: Fix compatibility with GCC gfortran 12 LTO, 2022-01-19, v3.22.2~5^2) should only be added for the GNU C compiler. Fixes: #23500 Issue: #23123
* | | | | | | Merge topic 'CMAKE_PROJECT_TOP_LEVEL_INCLUDES'Brad King2022-05-161-1/+0
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a6c34b0353 project(): Add new CMAKE_PROJECT_TOP_LEVEL_INCLUDES file injection point 8aa29a1793 CMakeDetermineSystem: Remove unreachable code Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7250
| * | | | | | CMakeDetermineSystem: Remove unreachable codeCraig Scott2022-05-081-1/+0
| | | | | | |
* | | | | | | Merge topic 'fetchcontent-subbuild-config-type'Craig Scott2022-05-161-2/+11
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 10865c8e5f FetchContent: Hard-code a config for the sub-build Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7228
| * | | | | | FetchContent: Hard-code a config for the sub-buildCraig Scott2022-05-131-2/+11
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the main project overrides CMAKE_CONFIGURATION_TYPES such that there is no Debug configuration, some multi-config generators can fail because they might assume Debug by default (Visual Studio might do this). Always specify the configuration for multi-config generators so that we don't rely on any such defaults. Fixes: #23177
* | | | | | Merge topic 'FindGLUT-system-include-dirs'Brad King2022-05-131-0/+14
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8041ca5df0 FindGLUT: Fix GLUT_INCLUDE_DIRS with pkg-config and /usr/include Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7252
| * | | | | | FindGLUT: Fix GLUT_INCLUDE_DIRS with pkg-config and /usr/includeLetu Ren2022-05-121-0/+14
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | Fixes: #23474
* | | | | | Merge topic 'externalproject-uses-terminal-flags'Brad King2022-05-131-2/+15
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b1c2cb0436 ExternalProject: Make SVN interactive with USES_TERMINAL_{DOWNLOAD,UPDATE} Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7248
| * | | | | | ExternalProject: Make SVN interactive with USES_TERMINAL_{DOWNLOAD,UPDATE}Michael Durso Jr2022-05-121-2/+15
| | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ExternalProject_Add() supports USES_TERMINAL_* flags to enable user input for different steps. The Subversion download options ignored these flags when checking out or updated a Subversion repo. Fixes: #23348
* | | | | | Merge topic 'FindPkgConfig-LIBRARY_PATH'Brad King2022-05-131-1/+3
|\ \ \ \ \ \ | | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 11c8da94d4 FindPkgConfig: Fix preservation of ENV{PKG_CONFIG_ALLOW_SYSTEM_LIBS} Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7258
| * | | | | FindPkgConfig: Fix preservation of ENV{PKG_CONFIG_ALLOW_SYSTEM_LIBS}Brad King2022-05-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the ENV save/restore added by commit 36979f5b43 (FindPkgConfig: Tolerate PKG_CONFIG_SYSTEM_LIBRARY_PATH in environment, 2021-07-13, v3.22.0-rc1~407^2) to unset the variable if it was originally not set. While at it, clarify the value to which we temporarily set it. The `pkg-config` and `pkgconf` tools only check that the variable is set, and do not care about the value. Set it to a more true-looking value. Issue: #22148
* | | | | | Merge topic 'FindPython-3.12'Brad King2022-05-133-3/+3
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | ca2877c039 FindPython: add support for Python 3.12 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7255
| * | | | | FindPython: add support for Python 3.12Michael Hirsch2022-05-123-3/+3
| | | | | |
* | | | | | Merge topic 'doc-package-compatibility-mode'Brad King2022-05-121-3/+3
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a82163839a CMakePackageConfigHelpers: Fix note about version files supporting ranges Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7254
| * | | | | CMakePackageConfigHelpers: Fix note about version files supporting rangesfriendlyanon2022-05-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 55c3b6a77e (CMakePackageConfigHelpers: Relax restrictions on version range, 2019-05-30, v3.20.0-rc1~295^2~1) the documentation for write_basic_package_version_file documented the support of version ranges by the generated version files, however the note wrongly specifies a COMPATIBILITY_MODE argument, instead of COMPATIBILITY.
| * | | | | Merge topic 'Java-version-handling' into release-3.23Brad King2022-05-062-77/+47
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 93e18a4eb6 FindJava, FindJNI: ensure correct handling of versions on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7241
* | | | | | | FindOpenCL: Add support for version 3.0Dmitry Kushpet2022-05-111-1/+1
| |_|_|_|/ / |/| | | | |