| 1 | dnl @synopsis AC_CHECK_PACKAGE(PACKAGE, FUNCTION, LIBRARY , HEADERFILE [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) | 
|---|
| 2 | dnl | 
|---|
| 3 | dnl Provides --with-PACKAGE, --with-PACKAGE-include and --with-PACKAGE-libdir | 
|---|
| 4 | dnl options to configure. Supports the now standard --with-PACKAGE=DIR | 
|---|
| 5 | dnl approach where the package's include dir and lib dir are underneath DIR, | 
|---|
| 6 | dnl but also allows the include and lib directories to be specified seperately | 
|---|
| 7 | dnl | 
|---|
| 8 | dnl adds the extra -Ipath to CFLAGS if needed | 
|---|
| 9 | dnl adds extra -Lpath to LD_FLAGS if needed | 
|---|
| 10 | dnl searches for the FUNCTION in the LIBRARY with | 
|---|
| 11 | dnl AC_CHECK_LIBRARY and thus adds the lib to LIBS | 
|---|
| 12 | dnl | 
|---|
| 13 | dnl defines HAVE_PKG_PACKAGE if it is found, (where PACKAGE in the | 
|---|
| 14 | dnl HAVE_PKG_PACKAGE is replaced with the actual first parameter passed) | 
|---|
| 15 | dnl note that autoheader will complain of not having the HAVE_PKG_PACKAGE and you | 
|---|
| 16 | dnl will have to add it to acconfig.h manually | 
|---|
| 17 | dnl | 
|---|
| 18 | dnl @version $Id$ | 
|---|
| 19 | dnl @author Caolan McNamara <caolan@skynet.ie> | 
|---|
| 20 | dnl | 
|---|
| 21 | dnl with fixes from... | 
|---|
| 22 | dnl Alexandre Duret-Lutz <duret_g@lrde.epita.fr> | 
|---|
| 23 |  | 
|---|
| 24 | AC_DEFUN([AC_CHECK_CLASS], | 
|---|
| 25 | [ | 
|---|
| 26 |  | 
|---|
| 27 | AC_ARG_WITH($1, | 
|---|
| 28 | [  --with-$1[=DIR]      root directory of $1 installation], | 
|---|
| 29 | with_$1=$withval | 
|---|
| 30 | if test "${with_$1}" != yes; then | 
|---|
| 31 | $1_include="$withval/include" | 
|---|
| 32 | $1_libdir="$withval/lib" | 
|---|
| 33 | fi | 
|---|
| 34 | ) | 
|---|
| 35 |  | 
|---|
| 36 | AC_ARG_WITH($1-include, | 
|---|
| 37 | [  --with-$1-include=DIR        specify exact include dir for $1 headers (e.g. $4)], | 
|---|
| 38 | $1_include="$withval") | 
|---|
| 39 |  | 
|---|
| 40 | AC_ARG_WITH($1-libdir, | 
|---|
| 41 | [  --with-$1-libdir=DIR        specify exact library dir for $1 library (e.g. lib$3) | 
|---|
| 42 | --without-$1        disables $1 usage completely], | 
|---|
| 43 | $1_libdir="$withval") | 
|---|
| 44 |  | 
|---|
| 45 | if test "${with_$1}" != no ; then | 
|---|
| 46 | OLD_LIBS=$LIBS | 
|---|
| 47 | OLD_LDFLAGS=$LDFLAGS | 
|---|
| 48 | OLD_CFLAGS=$CFLAGS | 
|---|
| 49 | OLD_CPPFLAGS=$CPPFLAGS | 
|---|
| 50 |  | 
|---|
| 51 | if test "${$1_libdir}" ; then | 
|---|
| 52 | LDFLAGS="$LDFLAGS -L${$1_libdir}" | 
|---|
| 53 | fi | 
|---|
| 54 | if test "${$1_include}" ; then | 
|---|
| 55 | CPPFLAGS="$CPPFLAGS -I${$1_include}" | 
|---|
| 56 | CFLAGS="$CFLAGS -I${$1_include}" | 
|---|
| 57 | fi | 
|---|
| 58 |  | 
|---|
| 59 | no_good=no | 
|---|
| 60 |  | 
|---|
| 61 | AC_CHECK_HEADER($4,,no_good=yes) | 
|---|
| 62 |  | 
|---|
| 63 | AC_LANG_PUSH([C++]) | 
|---|
| 64 | AC_CHECK_CPP($3, [#include <$4>] , [$2],,no_good=yes, $7) | 
|---|
| 65 | AC_LANG_POP([C++]) | 
|---|
| 66 |  | 
|---|
| 67 | if test "$no_good" = yes; then | 
|---|
| 68 | dnl     broken | 
|---|
| 69 | ifelse([$6], , , [$6]) | 
|---|
| 70 |  | 
|---|
| 71 | LIBS=$OLD_LIBS | 
|---|
| 72 | LDFLAGS=$OLD_LDFLAGS | 
|---|
| 73 | CPPFLAGS=$OLD_CPPFLAGS | 
|---|
| 74 | CFLAGS=$OLD_CFLAGS | 
|---|
| 75 | else | 
|---|
| 76 | dnl     fixed | 
|---|
| 77 | ifelse([$5], , , [$5]) | 
|---|
| 78 |  | 
|---|
| 79 | AC_DEFINE(HAVE_PKG_$1) | 
|---|
| 80 | fi | 
|---|
| 81 |  | 
|---|
| 82 | fi | 
|---|
| 83 |  | 
|---|
| 84 | ]) | 
|---|