Commit Graph

15059 Commits

Author SHA1 Message Date
Brad King
ca9fa874d8 Merge topic 'nasm-find-compiler'
f1b1b84b22 ASM_NASM: Honor ASM_NASM env var over standard NASM installation on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10662
2025-04-16 09:52:44 -04:00
Brad King
2d04de2532 Merge topic 'macos-usr-local-lib'
6e63080d39 macOS: Restore RPATH entry for libraries linked from /usr/local/lib
430174e65d CMakeDetermineCompilerABI: Comment implicit link directory exclusion

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10663
2025-04-16 09:38:29 -04:00
Brad King
6bbd572438 Merge topic 'patch-FindGLEW'
714966fe42 FindGLEW: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10654
2025-04-16 09:27:39 -04:00
Brad King
7a5ac016f1 Merge topic 'patch-FindMPEG'
cea6119266 FindMPEG, FindMPEG2: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10656
2025-04-16 09:18:29 -04:00
Brad King
7be87256a6 Merge topic 'patch-FindSDL'
905d461431 Find_SDL*: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10657
2025-04-16 09:10:58 -04:00
Peter Kokot
714966fe42 FindGLEW: Update documentation
- Synced module documentation with other similar find modules.
- Added examples section.
- Moved imported targets section to the top.
- Added note about config mode.
- Added CMake versions, when some variables got introduced as many were
  added after the initial module.
2025-04-15 22:41:48 +02:00
Brad King
6e63080d39 macOS: Restore RPATH entry for libraries linked from /usr/local/lib
Since commit 7b19531291 (macOS: Do not pass any SDK/-isysroot to
compilers by default, 2024-11-06, v4.0.0-rc1~511^2) our default
invocation of compilers targeting macOS no longer passes `-isysroot`.
Without that, Xcode's compilers search `-L/usr/local/lib` by default
even though the macOS dynamic loader does not.  Since `/usr/local/lib`
is not a fully-implemented implicit link directory, exclude it from our
detected `CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES` so that our generators
do not suppress `RPATH` entries for dependencies in that directory.

Fixes: #26867
2025-04-15 14:13:45 -04:00
Brad King
430174e65d CMakeDetermineCompilerABI: Comment implicit link directory exclusion 2025-04-15 14:13:45 -04:00
Brad King
f1b1b84b22 ASM_NASM: Honor ASM_NASM env var over standard NASM installation on Windows
Drop the custom `find_program` call in favor of the common
infrastructure.

Fixes: #26873
2025-04-15 12:00:15 -04:00
Brad King
8b4971ec25 Merge topic 'patch-FindGnuTLS'
6dff939916 FindGnuTLS: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10650
2025-04-15 09:58:19 -04:00
Brad King
b3dd121aea Merge topic 'patch-FindKDE3'
d7a4750c78 FindKDE3: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10651
2025-04-15 09:56:46 -04:00
Brad King
ffec8739de Merge topic 'patch-FindCURL'
2ab964c040 FindCURL: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10646
2025-04-15 09:54:26 -04:00
Brad King
100587fcbc Merge topic 'patch-FindOpenSSL'
8481204a0c FindOpenSSL: Fix version range documentation note

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10649
2025-04-15 09:53:11 -04:00
Brad King
8f3d71b357 Merge topic 'patch-FindwxWindows'
7ac1345f7f FindwxWindows: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10648
2025-04-15 09:51:26 -04:00
Brad King
cb31aa3476 Merge topic 'doc-include-rst'
9784834b4c Help: Use `*.rst` extension for included files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10615
2025-04-15 09:42:51 -04:00
Peter Kokot
905d461431 Find_SDL*: Update documentation
This updates the following modules:
- FindSDL
- FindSDL_gfx
- FindSDL_image
- FindSDL_mixer
- FindSDL_net
- FindSDL_sound
- FindSDL_ttf

Changes:
- Synced modules documentation.
- Added examples sections.
- Used the ``<PackageName>_FOUND`` variables. The uppercased
  ``<PACKAGENAME>_FOUND`` variables are also set to the same value as of
  CMake 3.3.
- Added notes regarding the CMake package configuration files
  provided by upstream distributions with separate imported targets.
- Find modules index sorted alphabetically for FindSDL* modules.
2025-04-15 14:23:12 +02:00
Peter Kokot
cea6119266 FindMPEG, FindMPEG2: Update documentation
- Modules documentation updated and synced.
- Added examples section.
- FindMPEG and FindMPEG2 modules behave very much the same except that
  FindMPEG2 also adds the SDL library as a dependency. Added notes
  regarding this and recommended to use the FindMPEG2 as it also links
  in the SDL library at the time of writing.
2025-04-15 02:29:36 +02:00
Brad King
ed7f1c54eb Merge topic 'asm-restore-c-compiler'
d26efc3600 ASM: Restore CMAKE_{C,CXX}_COMPILER as ASM-first candidates

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10644
2025-04-14 08:31:33 -04:00
Peter Kokot
6dff939916 FindGnuTLS: Update documentation
- Added examples section.
- Synced module documentation with other similar find modules.
- Documented some missing variables to make the result variables and
  cache variables sections consistent. The imported target is
  highlighted in the example.
- Added deprecated variables section.
- GnuTLS_FOUND variable used. GNUTLS_FOUND is also set to the same value
  as of CMake 3.3.
2025-04-14 12:47:03 +02:00
Peter Kokot
d7a4750c78 FindKDE3: Update documentation
- This syncs the module documentation with other similar find modules.
- Added note about KDE version 3 being obsolete and newer KDE version
  should be used. A link to upstream docs is added.
- Fixed typo "SKIP_AUTOMAKE" to "SKIP_AUTOMOC".
- Documented commands. Instead of mentioning "macros", this now uses the
  more general wording "commands" and lists them similar to other
  documentation pages.
- Lowercase style used for commands.
- Reworded descriptions to match the implementations a bit.
2025-04-14 01:25:28 +02:00
Alex Turbov
9784834b4c Help: Use *.rst extension for included files
So, editor(s) can correctly highlight the RST syntax in the included files.
2025-04-14 03:07:46 +04:00
Peter Kokot
2ab964c040 FindCURL: Update documentation
- Module documentation synced with other similar find modules.
- Added examples section.
- Joined all hints variables in a single section.
- Added deprecated variables section.
- Described the "module mode" and "config mode" when searching for CURL
  separately in the module introduction, and added notes to some result
  variables.

Fixes #24580
2025-04-13 17:49:22 +02:00
Peter Kokot
8481204a0c FindOpenSSL: Fix version range documentation note
Handling version ranges in FindOpenSSL was added in CMake 3.20.
2025-04-13 04:26:36 +02:00
Peter Kokot
7ac1345f7f FindwxWindows: Update documentation
- Module documentation updated and synced with other similar find
  modules.
- Added examples section highlighting the usage of the FindwxWidgets
  module instead.
2025-04-13 02:52:57 +02:00
Brad King
d26efc3600 ASM: Restore CMAKE_{C,CXX}_COMPILER as ASM-first candidates
Prior to commit abfe98ce6c (ASM: Consider C/CXX compilers only if
enabled, 2025-04-08) one could pass `-DCMAKE_C_COMPILER=...` to
configure a project that enables `ASM` before/without `C` or `CXX`.
This was previously allowed accidentally as a side effect of the way we
implemented support for using the selected `C` or `CXX` compiler for
`ASM`.  Restore it for compatibility, but also preserve the effect of
commit 6baf65ec46 (ASM: Do not consider MSVC C/CXX compiler for generic
ASM, 2025-04-08) by excluding `cl`.
2025-04-12 10:05:13 -04:00
Peter Kokot
008dc3f330 FindPython{Interp,Libs}: Update documentation
Even though these modules are removed with a policy, documentation can
still be improved a bit to help when upgrading CMake code.

Changes:
- Synced modules documentation with other similar find modules.
- Added examples section to hint how to rewrite code using the
  FindPython module.
- FindPythonLibs:
  - Deprecated variables moved to a separate section.
  - PythonLibs_FOUND variable used. The PYTHONLIBS_FOUND variable is
    also set to the same value since CMake 3.3.
- FindPythonInterp:
  - PythonInterp_FOUND variable used. The PYTHONINTERP_FOUND variable is
    also set to the same value since CMake 3.3.
2025-04-11 19:01:55 +02:00
Brad King
a84177c683 Merge topic 'patch-FindDevIL'
add5ea827c FindDevIL: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10638
2025-04-11 10:19:02 -04:00
Brad King
890ed9495f Merge topic 'patch-FindSquish'
36b8b053d1 FindSquish: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10634
2025-04-11 10:16:03 -04:00
Brad King
f666b0489e Merge topic 'FindLua5x-headers'
14db9f9329 FindLua{50,51}: Fix finding headers in standard distros

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10635
2025-04-11 10:14:43 -04:00
Peter Kokot
add5ea827c FindDevIL: Update documentation
- Added examples section.
- Explained the DevIL package libraries and imported targets in more
  details.
- Separated the result variables and cache variables.
- Module documentation synced as much as possible for the time being
  with other similar find modules.
2025-04-10 22:54:08 +02:00
Peter Kokot
36b8b053d1 FindSquish: Update documentation
- Updated and synced module documentation according to other similar
  find modules.
- Added a separate examples section.
- Commands are listed using the `command` directives.
- Updated documentation for the `SquishTestScript.cmake` file. This is
  not actually a module but a test script that `FindSquish` uses and
  also isn't technically deprecated as it is still used. Documentation
  changed a bit to explain it is an internal script that shouldn't be
  used in the project directly.
2025-04-10 21:20:09 +02:00
alyokhin
14db9f9329 FindLua{50,51}: Fix finding headers in standard distros
`find_path` already knows how to search in `<prefix>/include` directories.
We need `PATH_SUFFIXES` only for the `/lua*` subdirectory.

Fixes: #26855
2025-04-10 14:00:37 -04:00
Brad King
602b3d2b19 Merge topic 'patch-FindJava'
bc3bcff18c FindJava: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10630
2025-04-10 09:10:25 -04:00
Brad King
97970d2f4a Merge topic 'patch-FindCygwin'
f95eb088ad FindCygwin, FindMsys: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10629
2025-04-10 09:09:11 -04:00
Brad King
b4835863b3 Merge topic 'patch-FindFreetype'
0b0d892dea FindFreetype: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10631
2025-04-10 09:07:14 -04:00
Brad King
0f6985fbfe Merge topic 'patch-FindIntl'
252d0d58cb FindIntl: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10628
2025-04-10 09:04:55 -04:00
Brad King
19f9e90568 Merge topic 'patch-FindFontconfig'
c398e44450 FindFontconfig: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10627
2025-04-10 09:00:25 -04:00
Brad King
cc2d986fdf Merge topic 'GNUInstallDirs-special-cases'
4ed399ccfb GNUInstallDirs: Change special path defaults to absolute
7566a477f7 GNUInstallDirs: Factor out helper for special absolute path logic
42dfcbf1a5 GNUInstallDirs: Refactor LIBDIR default calculation
9789f7d05e GNUInstallDirs: Add internal helper to compute specific defaults
83f44bbf53 GNUInstallDirs: Factor out helper to compute system type
0c9b6aa9e4 GNUInstallDirs: De-duplicate description of defaults
18e1341950 GNUInstallDirs: Move defaults from arguments to variables
9f41a67fce GNUInstallDirs: Reduce duplication of CMAKE_INSTALL_ prefix
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10542
2025-04-10 08:57:49 -04:00
Brad King
180fc85666 Merge topic 'FindXCTest-xcode-16'
2e59cee922 FindXCTest: Fix test module generation for Xcode 16
c653c1aa47 FindXCTest: Pass -bundle_loader linker flag for test module more reliably

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10573
2025-04-10 08:27:40 -04:00
Brad King
2e59cee922 FindXCTest: Fix test module generation for Xcode 16
In Xcode 7.3 and above, the `TEST_HOST` setting causes Xcode to
implicitly place the test module inside the executable bundle regardless
of the module's own location settings.  Since commit a364d2513a (Xcode:
Fixup XCTest bundle location for Xcode 7.3, 2016-03-25, v3.5.2~6^2) we
explicitly tell CMake to put the test module in the same location so
that generator expressions used by `xctest_add_test` agree with where
Xcode actually puts it.  In Xcode 16 and above, our explicit location
settings for the test module conflict with Xcode's `TEST_HOST` rules,
causing errors about multiple commands producing the same path.

Fix this by dropping CMake's explicit location for the test module
unless needed to match a project-specified location for the testee.
Instead, teach `xctest_add_test` to express the xctest module location
selected by `TEST_HOST` by using generator expressions referencing the
testee bundle.

Fixes: #26301
Fixes: #26514
2025-04-09 17:06:13 -04:00
Peter Kokot
bc3bcff18c FindJava: Update documentation
- Updated and reworded module documentation.
- Synced a bit with other similar find modules.
- Added separate examples section.
- Added `versionadded` directives for some components when they got
  introduced in the module.
2025-04-09 20:26:47 +02:00
Cristian Le
4ed399ccfb GNUInstallDirs: Change special path defaults to absolute
Add policy `CMP0192` for compatibility.

Closes: #25852
Signed-off-by: Cristian Le <git@lecris.dev>
2025-04-09 11:31:43 -04:00
Peter Kokot
f95eb088ad FindCygwin, FindMsys: Update documentation
This extends the modules documentation to clarify their intended usage
is for other find modules rather than in projects directly.
2025-04-09 15:44:44 +02:00
Brad King
0a23535877 Merge topic 'asm-no-msvc'
d4b3443ed2 ASM: Identify Microsoft assemblers more specifically
6baf65ec46 ASM: Do not consider MSVC C/CXX compiler for generic ASM
b52882e1e3 ASM: Drop outdated C compilers from assembler candidates
abfe98ce6c ASM: Consider C/CXX compilers only if enabled
d28fcdc8d8 ASM: Simplify compiler candidate list variable name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10626
2025-04-09 09:27:20 -04:00
Brad King
7bb7a6fb13 Merge topic 'android-riscv64'
201c3a491c Android: add support for riscv64-linux-android

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10622
2025-04-09 09:24:59 -04:00
Brad King
7a9505582c Merge topic 'patch-FindICU'
ed46adb6cf FindICU: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10599
2025-04-09 09:18:38 -04:00
Peter Kokot
0b0d892dea FindFreetype: Update documentation
- Synced module documentation with other similar find modules.
- Added examples section.
- Freetype_FOUND variable used. FREETYPE_FOUND is also set to the same
  value by the find_package_handle_standard_args().
2025-04-09 14:53:17 +02:00
Peter Kokot
252d0d58cb FindIntl: Update documentation
- Added examples section, highlighting the imported target usage.
- Synced the module documentation with other similar find modules.
- Extended gettext and intl introduction.
- Moved FindGettext module to the "See Also" section.
2025-04-09 02:29:19 +02:00
Peter Kokot
c398e44450 FindFontconfig: Update documentation
- Synced module documentation with other similar find modules.
- Added examples section, highlighting the imported target usage.
2025-04-08 23:46:35 +02:00
Brad King
d4b3443ed2 ASM: Identify Microsoft assemblers more specifically
Other tools may print "Microsoft" when invoked with `-?`, such as `cl`.
Look for output specific to the Microsoft Macro Assembler and its ARM
variant.
2025-04-08 15:23:08 -04:00