106 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			106 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								# extra_pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Copyright (c) 2008-2012 Erik de Castro Lopo <erikd@mega-nerd.com>
							 | 
						||
| 
								 | 
							
								# Copyright (c) 2004 Scott James Remnant <scott@netsplit.com>.
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# This program is free software; you can redistribute it and/or modify
							 | 
						||
| 
								 | 
							
								# it under the terms of the GNU General Public License as published by
							 | 
						||
| 
								 | 
							
								# the Free Software Foundation; either version 2 of the License, or
							 | 
						||
| 
								 | 
							
								# (at your option) any later version.
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# This program is distributed in the hope that it will be useful, but
							 | 
						||
| 
								 | 
							
								# WITHOUT ANY WARRANTY; without even the implied warranty of
							 | 
						||
| 
								 | 
							
								# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
							 | 
						||
| 
								 | 
							
								# General Public License for more details.
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# You should have received a copy of the GNU General Public License
							 | 
						||
| 
								 | 
							
								# along with this program; if not, write to the Free Software
							 | 
						||
| 
								 | 
							
								# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# As a special exception to the GNU General Public License, if you
							 | 
						||
| 
								 | 
							
								# distribute this file as part of a program that contains a
							 | 
						||
| 
								 | 
							
								# configuration script generated by Autoconf, you may include it under
							 | 
						||
| 
								 | 
							
								# the same distribution terms that you use for the rest of that program.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# --------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								# PKG_CHECK_MOD_VERSION(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
							 | 
						||
| 
								 | 
							
								# [ACTION-IF-NOT-FOUND])
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# This is a very slight modification to the macro PKG_CHECK_MODULES that
							 | 
						||
| 
								 | 
							
								# is in the original pkg.m4 file. It prints the versions in the checking
							 | 
						||
| 
								 | 
							
								# message (erikd@mega-nerd.com).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_DEFUN([PKG_CHECK_MOD_VERSION],
							 | 
						||
| 
								 | 
							
								[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
							 | 
						||
| 
								 | 
							
								AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
							 | 
						||
| 
								 | 
							
								AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								pkg_failed=no
							 | 
						||
| 
								 | 
							
								AC_MSG_CHECKING([for $2 ])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
							 | 
						||
| 
								 | 
							
								_PKG_CONFIG([$1][_LIBS], [libs], [$2])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								pkg_link_saved_CFLAGS=$CFLAGS
							 | 
						||
| 
								 | 
							
								pkg_link_saved_LIBS=$LIBS
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								eval "pkg_CFLAGS=\${pkg_cv_[]$1[]_CFLAGS}"
							 | 
						||
| 
								 | 
							
								eval "pkg_LIBS=\${pkg_cv_[]$1[]_LIBS}"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								CFLAGS="$CFLAGS $pkg_CFLAGS"
							 | 
						||
| 
								 | 
							
								LIBS="$LIBS $pkg_LIBS"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>]], [puts ("")])], pkg_link=yes, pkg_link=no)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								CFLAGS=$pkg_link_saved_CFLAGS
							 | 
						||
| 
								 | 
							
								LIBS=$pkg_link_saved_LIBS
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AS_IF([test x$pkg_link = xno], [
							 | 
						||
| 
								 | 
							
									AS_ECHO_N(["link failed ... "])
							 | 
						||
| 
								 | 
							
									pkg_failed=yes
							 | 
						||
| 
								 | 
							
								])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
							 | 
						||
| 
								 | 
							
								and $1[]_LIBS to avoid the need to call pkg-config.
							 | 
						||
| 
								 | 
							
								See the pkg-config man page for more details.])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if test $pkg_failed = yes; then
							 | 
						||
| 
								 | 
							
								        _PKG_SHORT_ERRORS_SUPPORTED
							 | 
						||
| 
								 | 
							
								        if test $_pkg_short_errors_supported = yes; then
							 | 
						||
| 
								 | 
							
									        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
							 | 
						||
| 
								 | 
							
								        else
							 | 
						||
| 
								 | 
							
									        $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
									# Put the nasty error message in config.log where it belongs
							 | 
						||
| 
								 | 
							
									echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									ifelse([$4], , [AC_MSG_ERROR(dnl
							 | 
						||
| 
								 | 
							
								[Package requirements ($2) were not met:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$$1_PKG_ERRORS
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Consider adjusting the PKG_CONFIG_PATH environment variable if you
							 | 
						||
| 
								 | 
							
								installed software in a non-standard prefix.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								_PKG_TEXT
							 | 
						||
| 
								 | 
							
								])],
							 | 
						||
| 
								 | 
							
										[AC_MSG_RESULT([no])
							 | 
						||
| 
								 | 
							
								                $4])
							 | 
						||
| 
								 | 
							
								elif test $pkg_failed = untried; then
							 | 
						||
| 
								 | 
							
									ifelse([$4], , [AC_MSG_FAILURE(dnl
							 | 
						||
| 
								 | 
							
								[The pkg-config script could not be found or is too old.  Make sure it
							 | 
						||
| 
								 | 
							
								is in your PATH or set the PKG_CONFIG environment variable to the full
							 | 
						||
| 
								 | 
							
								path to pkg-config.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								_PKG_TEXT
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
							 | 
						||
| 
								 | 
							
										[$4])
							 | 
						||
| 
								 | 
							
								else
							 | 
						||
| 
								 | 
							
									$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
							 | 
						||
| 
								 | 
							
									$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
							 | 
						||
| 
								 | 
							
								        AC_MSG_RESULT([yes])
							 | 
						||
| 
								 | 
							
									ifelse([$3], , :, [$3])
							 | 
						||
| 
								 | 
							
								fi[]dnl
							 | 
						||
| 
								 | 
							
								])# PKG_CHECK_MOD_VERSION
							 |