# - Obsolete pkg-config module for CMake, use FindPkgConfig instead.
#
# This module defines the following macro:
#
# PKGCONFIG(package includedir libdir linkflags cflags)
#
# Calling PKGCONFIG will fill the desired information into the 4 given arguments,
# e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS)
# if pkg-config was NOT found or the specified software package doesn't exist, the
# variable will be empty when the function returns, otherwise they will contain
# the respective information
#
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
find_program ( PKGCONFIG_EXECUTABLE NAMES pkg-config )
macro ( PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags )
message ( STATUS
" W A R N I N G : y o u a r e u s i n g t h e o b s o l e t e ' P K G C O N F I G ' m a c r o , u s e F i n d P k g C o n f i g " )
# reset the variables at the beginning
set ( ${ _include_DIR } )
set ( ${ _link_DIR } )
set ( ${ _link_FLAGS } )
set ( ${ _cflags } )
# if pkg-config has been found
if ( PKGCONFIG_EXECUTABLE )
exec_program ( ${ PKGCONFIG_EXECUTABLE } ARGS ${ _package } --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull )
# and if the package of interest also exists for pkg-config, then get the information
if ( NOT _return_VALUE )
exec_program ( ${ PKGCONFIG_EXECUTABLE } ARGS ${ _package } --variable=includedir
O U T P U T _ V A R I A B L E $ { _ i n c l u d e _ D I R } )
string ( REGEX REPLACE "[\r\n]" " " ${ _include_DIR } "${${_include_DIR}}" )
exec_program ( ${ PKGCONFIG_EXECUTABLE } ARGS ${ _package } --variable=libdir
O U T P U T _ V A R I A B L E $ { _ l i n k _ D I R } )
string ( REGEX REPLACE "[\r\n]" " " ${ _link_DIR } "${${_link_DIR}}" )
exec_program ( ${ PKGCONFIG_EXECUTABLE } ARGS ${ _package } --libs
O U T P U T _ V A R I A B L E $ { _ l i n k _ F L A G S } )
string ( REGEX REPLACE "[\r\n]" " " ${ _link_FLAGS } "${${_link_FLAGS}}" )
exec_program ( ${ PKGCONFIG_EXECUTABLE } ARGS ${ _package } --cflags
O U T P U T _ V A R I A B L E $ { _ c f l a g s } )
string ( REGEX REPLACE "[\r\n]" " " ${ _cflags } "${${_cflags}}" )
else ( )
message ( STATUS "PKGCONFIG() indicates that ${_package} is not installed (install the package which contains ${_package}.pc if you want to support this feature)" )
endif ( )
# if pkg-config has NOT been found, INFORM the user
else ( )
message ( STATUS "WARNING: PKGCONFIG() indicates that the tool pkg-config has not been found on your system. You should install it." )
endif ( )
endmacro ( )
mark_as_advanced ( PKGCONFIG_EXECUTABLE )