FindPkgConfig
A pkg-config module for CMake.
Finds the pkg-config executable and add the pkg_check_modules() and pkg_search_module() commands.
In order to find the pkg-config executable, it uses the PKG_CONFIG_EXECUTABLE variable or the PKG_CONFIG environment variable first.
- 
pkg_get_variable
- 
Retrieves the value of a variable from a package: pkg_get_variable(<RESULT> <MODULE> <VARIABLE>) For example: pkg_get_variable(GI_GIRDIR gobject-introspection-1.0 girdir) 
- 
pkg_check_modules
- 
Checks for all the given modules. pkg_check_modules(<PREFIX> [REQUIRED] [QUIET] [NO_CMAKE_PATH] [NO_CMAKE_ENVIRONMENT_PATH] <MODULE> [<MODULE>]*)When the REQUIREDargument was set, macros will fail with an error when module(s) could not be found.When the QUIETargument is set, no status messages will be printed.By default, if CMAKE_MINIMUM_REQUIRED_VERSIONis 3.1 or later, or ifPKG_CONFIG_USE_CMAKE_PREFIX_PATHis set, theCMAKE_PREFIX_PATH,CMAKE_FRAMEWORK_PATH, andCMAKE_APPBUNDLE_PATHcache and environment variables will be added topkg-configsearch path. TheNO_CMAKE_PATHandNO_CMAKE_ENVIRONMENT_PATHarguments disable this behavior for the cache variables and the environment variables, respectively.It sets the following variables: PKG_CONFIG_FOUND ... if pkg-config executable was found PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program PKG_CONFIG_VERSION_STRING ... the version of the pkg-config program found (since CMake 2.8.8)For the following variables two sets of values exist; first one is the common one and has the given PREFIX. The second set contains flags which are given out when pkg-configwas called with the--staticoption.<XPREFIX>_FOUND ... set to 1 if module(s) exist <XPREFIX>_LIBRARIES ... only the libraries (w/o the '-l') <XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L') <XPREFIX>_LDFLAGS ... all required linker flags <XPREFIX>_LDFLAGS_OTHER ... all other linker flags <XPREFIX>_INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I') <XPREFIX>_CFLAGS ... all required cflags <XPREFIX>_CFLAGS_OTHER ... the other compiler flags <XPREFIX> = <PREFIX> for common case <XPREFIX> = <PREFIX>_STATIC for static linking There are some special variables whose prefix depends on the count of given modules. When there is only one module, <PREFIX> stays unchanged. When there are multiple modules, the prefix will be changed to <PREFIX>_<MODNAME>: <XPREFIX>_VERSION ... version of the module <XPREFIX>_PREFIX ... prefix-directory of the module <XPREFIX>_INCLUDEDIR ... include-dir of the module <XPREFIX>_LIBDIR ... lib-dir of the module <XPREFIX> = <PREFIX> when |MODULES| == 1, else <XPREFIX> = <PREFIX>_<MODNAME> A <MODULE> parameter can have the following formats: {MODNAME} ... matches any version {MODNAME}>={VERSION} ... at least version <VERSION> is required {MODNAME}={VERSION} ... exactly version <VERSION> is required {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>Examples pkg_check_modules (GLIB2 glib-2.0) pkg_check_modules (GLIB2 glib-2.0>=2.10) Requires at least version 2.10 of glib2 and defines e.g. GLIB2_VERSION=2.10.3pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0) Requires both glib2 and gtk2, and defines e.g. FOO_glib-2.0_VERSION=2.10.3andFOO_gtk+-2.0_VERSION=2.8.20pkg_check_modules (XRENDER REQUIRED xrender) Defines for example: XRENDER_LIBRARIES=Xrender;X11`` XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp 
- 
pkg_search_module
- 
Same as pkg_check_modules(), but instead it checks for given modules and uses the first working one.pkg_search_module(<PREFIX> [REQUIRED] [QUIET] [NO_CMAKE_PATH] [NO_CMAKE_ENVIRONMENT_PATH] <MODULE> [<MODULE>]*)Examples pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2) 
- 
PKG_CONFIG_EXECUTABLE
- 
Path to the pkg-config executable. 
- 
PKG_CONFIG_USE_CMAKE_PREFIX_PATH
- 
Whether pkg_check_modules()andpkg_search_module()should add the paths inCMAKE_PREFIX_PATH,CMAKE_FRAMEWORK_PATH, andCMAKE_APPBUNDLE_PATHcache and environment variables topkg-configsearch path.If this variable is not set, this behavior is enabled by default if CMAKE_MINIMUM_REQUIRED_VERSIONis 3.1 or later, disabled otherwise.
    © 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
    https://cmake.org/cmake/help/v3.5/module/FindPkgConfig.html