1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-05-09 06:42:18 +08:00

FindGSL: Update documentation

This commit is contained in:
Peter Kokot 2025-03-25 23:08:06 +01:00
parent 080c1a4e17
commit 0969be33ff
No known key found for this signature in database
GPG Key ID: A94800907AA79B36

View File

@ -7,7 +7,7 @@ FindGSL
.. versionadded:: 3.2 .. versionadded:: 3.2
Find the native GNU Scientific Library (GSL) includes and libraries. Finds the native GNU Scientific Library (GSL) includes and libraries.
The GNU Scientific Library (GSL) is a numerical library for C and C++ The GNU Scientific Library (GSL) is a numerical library for C and C++
programmers. It is free software under the GNU General Public programmers. It is free software under the GNU General Public
@ -16,47 +16,71 @@ License.
Imported Targets Imported Targets
^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^
If GSL is found, this module defines the following :prop_tgt:`IMPORTED` If GSL is found, this module defines the following :ref:`Imported Targets`:
targets::
GSL::gsl - The main GSL library. ``GSL::gsl``
GSL::gslcblas - The CBLAS support library used by GSL. The main GSL library that provides all usage requirements to use GSL.
``GSL::gslcblas``
The CBLAS support library used by GSL. It is linked also into the
``GSL::gsl`` target but provided separately for granularity.
Result Variables Result Variables
^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^
This module will set the following variables in your project:: This module will set the following variables in the project:
GSL_FOUND - True if GSL found on the local system ``GSL_FOUND``
GSL_INCLUDE_DIRS - Location of GSL header files. True if GSL is found on the local system.
GSL_LIBRARIES - The GSL libraries. ``GSL_INCLUDE_DIRS``
GSL_VERSION - The version of the discovered GSL install. Directory containing GSL header files.
``GSL_LIBRARIES``
The GSL libraries.
``GSL_VERSION``
The version of the discovered GSL installation.
Hints Hints
^^^^^ ^^^^^
Set ``GSL_ROOT_DIR`` to a directory that contains a GSL installation. ``GSL_ROOT_DIR``
Set this variable to a directory that contains a GSL installation.
This script expects to find libraries at ``$GSL_ROOT_DIR/lib`` and the GSL If this variable is not set, this module will use pkg-config and default paths
headers at ``$GSL_ROOT_DIR/include/gsl``. The library directory may to find GSL. If this variable is provided, then this module expects to find
optionally provide Release and Debug folders. If available, the libraries libraries at ``${GSL_ROOT_DIR}/lib`` and the GSL headers at
named ``gsld``, ``gslblasd`` or ``cblasd`` are recognized as debug libraries. ``${GSL_ROOT_DIR}/include/gsl``.
For Unix-like systems, this script will use ``$GSL_ROOT_DIR/bin/gsl-config``
(if found) to aid in the discovery of GSL. The library directory may optionally provide Release and Debug folders. If
available, the libraries named ``gsld``, ``gslblasd`` or ``cblasd`` are
recognized as debug libraries. For Unix-like systems, this module will also
use ``gsl-config`` (if found) to aid in the discovery of GSL.
Cache Variables Cache Variables
^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^
This module may set the following variables depending on platform and type This module may set the following variables depending on platform and type
of GSL installation discovered. These variables may optionally be set to of GSL installation discovered. These variables may optionally be set to
help this module find the correct files:: help this module find the correct files:
GSL_CBLAS_LIBRARY - Location of the GSL CBLAS library. ``GSL_CBLAS_LIBRARY``
GSL_CBLAS_LIBRARY_DEBUG - Location of the debug GSL CBLAS library (if any). Location of the GSL CBLAS library.
GSL_CONFIG_EXECUTABLE - Location of the ``gsl-config`` script (if any). ``GSL_CBLAS_LIBRARY_DEBUG``
GSL_LIBRARY - Location of the GSL library. Location of the debug GSL CBLAS library (if any).
GSL_LIBRARY_DEBUG - Location of the debug GSL library (if any). ``GSL_CONFIG_EXECUTABLE``
Location of the ``gsl-config`` script (if any).
``GSL_LIBRARY``
Location of the GSL library.
``GSL_LIBRARY_DEBUG``
Location of the debug GSL library (if any).
Examples
^^^^^^^^
Finding GSL and linking it to a project target:
.. code-block:: cmake
find_package(GSL)
target_link_libraries(project_target PRIVATE GSL::gsl)
#]=======================================================================] #]=======================================================================]
cmake_policy(PUSH) cmake_policy(PUSH)