Check{,C,CXX,OBJC,OBJCXX,Fortran}SourceCompiles: Update documentation

Changes:

- Added intro code blocks showing how to include these modules.
- Added examples sections.
- Used "command" instead of "macro".
- Commands sections added to have a clearer overview of the modules at
  first encounter.
- Reworded commands arguments a bit.
- Added a rubric title for variables that affect the checks.
- CheckFortranSourceCompiles: Added CMake version when SRC_EXT option
  was introduced.
- Listed CMAKE_TRY_COMPILE_TARGET_TYPE variable in the rubric together
  with CMAKE_REQUIRED_* variables and added an include RST file for it.
- Used lowercase style for check_fortran_source_compiles().
This commit is contained in:
Peter Kokot
2025-05-26 02:35:45 +02:00
parent cfcff29087
commit e6f9ebbbe1
12 changed files with 501 additions and 143 deletions

View File

@@ -35,7 +35,7 @@ exercise, complete ``TODO 1`` through ``TODO 5``.
Start by editing ``MathFunctions/CMakeLists.txt``. Include the
:module:`CheckCXXSourceCompiles` module. Then, use
``check_cxx_source_compiles`` to determine whether ``log`` and ``exp`` are
``check_cxx_source_compiles()`` to determine whether ``log`` and ``exp`` are
available from ``cmath``. If they are available, use
:command:`target_compile_definitions` to specify ``HAVE_LOG`` and ``HAVE_EXP``
as compile definitions.

View File

@@ -0,0 +1,6 @@
:variable:`CMAKE_TRY_COMPILE_TARGET_TYPE`
Internally, the :command:`try_compile` command is used to perform the
check, and this variable controls the type of target it creates. If this
variable is set to ``EXECUTABLE`` (the default), the check compiles and
links the test source code as an executable program. If set to
``STATIC_LIBRARY``, the test source code is compiled but not linked.

View File

@@ -191,7 +191,7 @@ Modules
meant for a prefix other than :variable:`CMAKE_INSTALL_PREFIX`.
* The :module:`CheckFortranSourceCompiles` module was added to
provide a ``CHECK_Fortran_SOURCE_COMPILES`` macro.
provide a ``check_fortran_source_compiles()`` command.
* The :module:`ExternalData` module learned to tolerate a ``DATA{}``
reference to a missing source file with a warning instead of

View File

@@ -158,8 +158,8 @@ Modules
* An :module:`AndroidTestUtilities` module was added to manage transfer
of test data to an Android device.
* The :module:`CheckFortranSourceCompiles` module macro
``CHECK_Fortran_SOURCE_COMPILES`` gained a ``SRC_EXT`` option
* The :module:`CheckFortranSourceCompiles` module command
``check_fortran_source_compiles()`` gained a ``SRC_EXT`` option
to specify a custom test Fortran source file extension.
* The :module:`ExternalProject` module gained ``HTTP_USERNAME`` and