AX_EXT_CHECK_HEADER(<header>, <paths>).
,
Duncan Simpson <dps@simpson.demon.co.uk>
AllPermissive
Copying and distribution of this file, with or
without modification, are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. Users of this software should generally follow the
principles of the
MIT License includings its disclaimer.
other's Installed Packages (released)
Check for <header> with -I<path> for each path in <paths> if need
be. The first sucecssful path is chosen (eg if you say
AX_EXT_CHECK_HEADER(foo.h, bar baz qux) and -Ibaz works then -Iqux
will not be tested.
Any -I flags that locate a header are added to CFLAGS and CPPFLAGS.
AS with AC_CHECK_HEADERS it causes HAVE_<header>_H to be defined as
1.
Example:
AX_EXT_HAVE_HEADER(openssl/rsa.h, /usr/local/include /usr/local/ssl/include /usr/local/openssl/include)
AC_DEFUN([AX_EXT_HAVE_HEADER],
[AC_LANG_PUSH(C)
AC_CHECK_HEADER($1, [$3 got="yes"], [$4 got="no"], $5)
hdr=`echo $1 | $as_tr_sh`
for dir in $2; do
if test "x${got}" = "xno"; then
ext_hashdr_cvdir=`echo $dir | $as_tr_sh`
AC_CACHE_CHECK([for $1 library with -I$dir],
[ext_cv${ext_hashdr_cvdir}_hashdr_${hdr}],
[ext_have_hdr_save_cflags=${CFLAGS}
CFLAGS="${CFLAGS} -I${dir}"
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM([#inc[]lude <$1>])],
[got="yes"; eval "ext_cv${ext_hashdr_cvdir}_hashdr_${hdr}"="yes"],
[got="no"; eval "ext_cv${ext_hashdr_cvdir}_hashdr_${hdr}"="no"])
CFLAGS=$ext_have_hdr_save_cflags])
if eval `echo 'test x${'ext_cv${ext_hashdr_cvdir}_hashdr_${hdr}'}' = "xyes"`; then
CFLAGS="${CFLAGS} -I${dir}"
CPPFLAGS="${CPPFLAGS} -I${dir}"
got="yes";
hdr=`echo $1 | $as_tr_cpp`
AC_DEFINE_UNQUOTED(HAVE_${hdr}, 1,
[Define this if you have the $1 header])
fi; fi; done
AC_LANG_POP])