source: trunk/FACT++/.macro_dir/ac_check_class.m4@ 12650

Last change on this file since 12650 was 11722, checked in by tbretz, 13 years ago
File size: 2.2 KB
Line 
1dnl @synopsis AC_CHECK_PACKAGE(PACKAGE, FUNCTION, LIBRARY , HEADERFILE [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
2dnl
3dnl Provides --with-PACKAGE, --with-PACKAGE-include and --with-PACKAGE-libdir
4dnl options to configure. Supports the now standard --with-PACKAGE=DIR
5dnl approach where the package's include dir and lib dir are underneath DIR,
6dnl but also allows the include and lib directories to be specified seperately
7dnl
8dnl adds the extra -Ipath to CFLAGS if needed
9dnl adds extra -Lpath to LD_FLAGS if needed
10dnl searches for the FUNCTION in the LIBRARY with
11dnl AC_CHECK_LIBRARY and thus adds the lib to LIBS
12dnl
13dnl defines HAVE_PKG_PACKAGE if it is found, (where PACKAGE in the
14dnl HAVE_PKG_PACKAGE is replaced with the actual first parameter passed)
15dnl note that autoheader will complain of not having the HAVE_PKG_PACKAGE and you
16dnl will have to add it to acconfig.h manually
17dnl
18dnl @version $Id$
19dnl @author Caolan McNamara <caolan@skynet.ie>
20dnl
21dnl with fixes from...
22dnl Alexandre Duret-Lutz <duret_g@lrde.epita.fr>
23
24AC_DEFUN([AC_CHECK_CLASS],
25[
26
27AC_ARG_WITH($1,
28[ --with-$1[=DIR] root directory of $1 installation],
29with_$1=$withval
30if test "${with_$1}" != yes; then
31 $1_include="$withval/include"
32 $1_libdir="$withval/lib"
33fi
34)
35
36AC_ARG_WITH($1-include,
37[ --with-$1-include=DIR specify exact include dir for $1 headers (e.g. $4)],
38$1_include="$withval")
39
40AC_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
45if 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 AC_CHECK_HEADER($4,,no_good=yes)
60
61 AC_LANG_PUSH([C++])
62 AC_CHECK_CPP($3, [#include <$4>] , [$2],,no_good=yes, $7)
63 AC_LANG_POP([C++])
64
65 if test "$no_good" = yes; then
66dnl broken
67 ifelse([$6], , , [$6])
68
69 LIBS=$OLD_LIBS
70 LDFLAGS=$OLD_LDFLAGS
71 CPPFLAGS=$OLD_CPPFLAGS
72 CFLAGS=$OLD_CFLAGS
73 else
74dnl fixed
75 ifelse([$5], , , [$5])
76
77 AC_DEFINE(HAVE_PKG_$1)
78 fi
79
80fi
81
82])
Note: See TracBrowser for help on using the repository browser.