From 5a590fa023923897d2848966163cb6d2f6acdec7 Mon Sep 17 00:00:00 2001 From: cmiller Date: Wed, 20 Jun 2001 19:56:28 +0000 Subject: [PATCH] New file to fix corrupted restored one. --- aclocal.m4 | 1202 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1202 insertions(+) create mode 100644 aclocal.m4 diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 0000000..7ff0cd1 --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,1202 @@ +## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*- +## Copyright (C) 1996-1999 Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 1996 +## +## 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. + +# serial 40 AC_PROG_LIBTOOL +AC_DEFUN(AC_PROG_LIBTOOL, +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ +DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN(AC_LIBTOOL_SETUP, +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_RANLIB])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +dnl + +case "$target" in +NONE) lt_target="$host" ;; +*) lt_target="$target" ;; +esac + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case "$lt_target" in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case "`/usr/bin/file conftest.o`" in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; +]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN(AC_ENABLE_SHARED, [dnl +define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case "$enableval" in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN(AC_ENABLE_STATIC, [dnl +define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case "$enableval" in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl +define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case "$enableval" in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN(AC_PROG_LD, +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$ac_cv_prog_gcc" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + ac_prog=`($CC -print-prog-name=ld) 2>&5` + case "$ac_prog" in + # Accept absolute paths. +changequote(,)dnl + [\\/]* | [A-Za-z]:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' +changequote([,])dnl + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(ac_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + ac_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + ac_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$ac_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN(AC_PROG_LD_GNU, +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + ac_cv_prog_gnu_ld=yes +else + ac_cv_prog_gnu_ld=no +fi]) +]) + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN(AC_PROG_NM, +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(ac_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + ac_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + ac_cv_path_NM="$ac_dir/nm -B" + break + elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + ac_cv_path_NM="$ac_dir/nm -p" + break + else + ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm +fi]) +NM="$ac_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN(AC_CHECK_LIBM, +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case "$lt_target" in +*-*-beos* | *-*-cygwin*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library, adds --enable-ltdl-convenience to +# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor +# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed +# to be `${top_builddir}/libltdl'. Make sure you start DIR with +# '${top_builddir}/' (note the single quotes!) if your package is not +# flat, and, if you're not using automake, define top_builddir as +# appropriate in the Makefiles. +AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case "$enable_ltdl_convenience" in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la + INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library, and adds --enable-ltdl-install to +# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor +# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed +# to be `${top_builddir}/libltdl'. Make sure you start DIR with +# '${top_builddir}/' (note the single quotes!) if your package is not +# flat, and, if you're not using automake, define top_builddir as +# appropriate in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la + INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +dnl old names +AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl +AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl +AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl +AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl +AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl +AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl +AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +dnl See whether we need a declaration for a function. +dnl RADIUSD_NEED_DECLARATION(FUNCTION [, EXTRA-HEADER-FILES]) +AC_DEFUN(RADIUSD_NEED_DECLARATION, +[AC_MSG_CHECKING([whether $1 must be declared]) +AC_CACHE_VAL(radius_cv_decl_needed_$1, +[AC_TRY_COMPILE([ +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef HAVE_CRYPT_H +#include +#endif +#ifdef HAVE_ERRNO_H +#include +#endif +#ifdef HAVE_RESOURCE_H +#include +#endif +#ifdef HAVE_GETOPT_H +#include +#endif +#ifdef HAVE_MALLOC_H +#include +#endif +#ifdef HAVE_UTMP_H +#include +#endif +#ifdef HAVE_UTMPX_H +#include +#endif +#ifdef HAVE_SYS_SELECT_H +#include +#endif +#ifdef HAVE_DLFCN_H +#include +#endif +#ifdef HAVE_REGEX_H +#include +#endif +#ifdef HAVE_SYSLOG_H +#include +#endif +#ifdef HAVE_INTTYPES_H +#include +#endif +#ifdef HAVE_STDINT_H +#include +#endif +#ifdef HAVE_ARPA_INET_H +#include +#endif +$2], +[char *(*pfn) = (char *(*)) $1], +eval "radius_cv_decl_needed_$1=no", eval "radius_cv_decl_needed_$1=yes")]) +if eval "test \"`echo '$radius_cv_decl_needed_'$1`\" = yes"; then + AC_MSG_RESULT(yes) + radius_tr_decl=NEED_DECLARATION_`echo $1 | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + AC_DEFINE_UNQUOTED($radius_tr_decl) +else + AC_MSG_RESULT(no) +fi +])dnl + +dnl Check multiple functions to see whether each needs a declaration. +dnl RADIUSD_NEED_DECLARATIONS(FUNCTION... [, EXTRA-HEADER-FILES]) +AC_DEFUN(RADIUSD_NEED_DECLARATIONS, +[for ac_func in $1 +do +RADIUSD_NEED_DECLARATION($ac_func, $2) +done +]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + + +dnl Checks to see if this is SUNPro we're building with +dnl Usage: +dnl AC_PROG_CC_SUNPRO +AC_DEFUN(AC_PROG_CC_SUNPRO, +[AC_CACHE_CHECK(whether we are using SUNPro C, ac_cv_prog_suncc, +[dnl The semicolon is to pacify NeXT's syntax-checking cpp. +cat > conftest.c </dev/null 2>&1; then + ac_cv_prog_suncc=yes +else + ac_cv_prog_suncc=no +fi])]) + +dnl # +dnl # AC_CHECK_TYPE_INCLUDE([#includes ...], type, default-C-types) +dnl # +dnl # This function is like AC_CHECK_TYPE, but you can give this one +dnl # a list of include files to check. +dnl # +AC_DEFUN(AC_CHECK_TYPE_INCLUDE, +[ + AC_CACHE_CHECK(for $2, ac_cv_type_$2, + [ ac_cv_type_$2=no + AC_TRY_COMPILE($1, + [$2 foo], + ac_cv_type_$2=yes, + ) + ] + ) + + if test "$ac_cv_type_$2" != "yes"; then + AC_DEFINE($2, $3) + fi +]) + +dnl Check the PostgreSQL installation + +AC_DEFUN(POSTGRESQL_CHECKS, [ + AC_SUBST(PGROOT) + AC_SUBST(PQ_LIBS) + AC_SUBST(PG_INCLUDE_DIR) + +AC_CHECKING(for PostgreSQL includes) + +dnl First Check for a local install +if test $PGROOT ; then + IS_LOCAL=1 +else + dnl Check common local install paths + if test -d /usr/local/pgsql ; then + PGROOT="/usr/local/pgsql" + ISLOCAL=1 + elif test -d /usr/local/postgresql ; then + PGROOT="/usr/local/postgresql" + ISLOCAL=1 + elif test -d /opt/pgsql ; then + PGROOT="/opt/pgsql" + ISLOCAL=1 + elif test -d /opt/postgresql ; then + PGROOT="/opt/postgresql" + ISLOCAL=1 + fi +fi +dnl If we have a local install path, check for some files +if test $PGROOT && test IS_LOCAL ; then + if test -e $PGROOT/lib/libpq.so ; then + if test -e $PGROOT/lib/libpq.a ; then + PQ_LIBS="-L$PGROOT/lib -lpq" + fi + fi + AC_CHECK_HEADERS($PGROOT/include/libpq-fe.h $PGROOT/include/postgres.h, + FOUND_PG_HEADERS=1) + if test $FOUND_PG_HEADERS ; then + PG_INCLUDE_DIR="$PGROOT/include" + fi +fi + +dnl Now check for the two common distribution installation locations +if test "x$PGROOT" = "x" ; then + AC_CHECK_LIB(pq,PQconnectdb,FOUND_PQLIB=1) + if test $FOUND_PQLIB ; then + PQ_LIBS="-lpq" + fi + if test -d /usr/include/pgsql ; then + PG_INCLUDE_DIR="/usr/include/pgsql" + PG_INCLUDED_DIR="$PG_INCLUDE_DIR/" + elif test -d /usr/include/postgresql ; then + PG_INCLUDE_DIR="/usr/include/postgresql" + PG_INCLUDED_DIR="$PG_INCLUDE_DIR/" + fi + AC_CHECK_HEADER("${PG_INCLUDED_DIR}libpq-fe.h",AC_DEFINE(HAVE_LIBPQ_FE_H)) + AC_CHECK_HEADER("${PG_INCLUDED_DIR}postgres.h",AC_DEFINE(HAVE_POSTGRES_H)) + if test $HAVE_HEADER-LIBPQ-FE.H ; then + PG_INCLUDE_DIR="$PG_INCLUDE_DIR" + fi + if test -d /usr/lib/pgsql ; then + PGROOT="/usr/lib/pgsql" + elif test -d /usr/lib/postgresql ; then + PGROOT="/usr/lib/postgresql" + fi +fi + +if test "$PGROOT" && test "$PQ_LIBS" && test "$PG_INCLUDE_DIR" ; then + echo Postgresql found in $PGROOT. +fi + +]) + +dnl ####################################################################### +dnl # +dnl # Look for Oracle in a variety of places. +dnl # +AC_DEFUN(ORACLE_CHECKS, [ + AC_SUBST(ORACLE_LIBS) + AC_SUBST(ORACLE_INCLUDE) + +AC_MSG_CHECKING([for oci.h]) + +dnl # +dnl # First, see if we can build it WITHOUT using any special includes +dnl # +AC_TRY_COMPILE([#include ], + [ int a = 1;], + ORACLE_INCLUDE=" ", + ORACLE_INCLUDE=) + +dnl # +dnl # If not, look for it in a number of directories. +dnl # +if test "x$ORACLE_INCLUDE" = "x"; then + old_CFLAGS="$CFLAGS" + + AC_LOCATE_DIR(oracle_include_dir,oci.h) + + for try in /usr/local/include/oracle /usr/local/oracle/include $oracle_include_dir; do + CFLAGS="$old_CFLAGS -I$try" + AC_TRY_COMPILE([#include ], + [ int a = 1;], + ORACLE_INCLUDE="-I$try", + ORACLE_INCLUDE=) + if test "x$ORACLE_INCLUDE" != "x"; then + break; + fi + done + CFLAGS="$old_CFLAGS" +fi + +if test "x$ORACLE_INCLUDE" = "x"; then + AC_MSG_RESULT(no) +else + AC_MSG_RESULT(yes) + +dnl # +dnl # Now do the same thing, looking for the Oracle library directory +dnl # + AC_MSG_CHECKING([for oracle_init in -loracleclient]) + +dnl # +dnl # Look for it in a number of directories. +dnl # + old_LIBS="$LIBS" + + AC_LOCATE_DIR(oracle_lib_dir,[liboracleclient.so]) + AC_LOCATE_DIR(oracle_lib_dir,[liboracleclient.a]) + + for try in /usr/lib/oracle /usr/local/lib/oracle /usr/local/oracle/lib $oracle_lib_dir; do + LIBS="$old_LIBS -L$try -loracleclient" + AC_TRY_LINK([extern char oracle_init();], + [ oracle_init()], + ORACLE_LIBS="-L$try -loracleclient", + ORACLE_LIBS=) + if test "x$ORACLE_LIBS" != "x"; then + break; + fi + done + LIBS="$old_LIBS" + + dnl # + dnl # If one or the other isn't found, disable them both.. + dnl # If both are found, enable them both. + dnl # + if test "x$ORACLE_LIBS" = "x"; then + AC_MSG_RESULT(no) + ORACLE_INCLUDE= + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_OCI_H) + fi +fi +]) + +dnl ####################################################################### +dnl # +dnl # Look for ODBC in a variety of places. +dnl # +AC_DEFUN(ODBC_CHECKS, [ + AC_SUBST(ODBC_LIBS) + AC_SUBST(ODBC_INCLUDE) + +AC_MSG_CHECKING([for isql.h]) + +dnl # +dnl # First, see if we can build it WITHOUT using any special includes +dnl # +AC_TRY_COMPILE([#include ], + [ int a = 1;], + ODBC_INCLUDE=" ", + ODBC_INCLUDE=) + +dnl # +dnl # If not, look for it in a number of directories. +dnl # +if test "x$ODBC_INCLUDE" = "x"; then + old_CFLAGS="$CFLAGS" + + AC_LOCATE_DIR(odbc_include_dir, isql.h) + + for try in /usr/include /usr/local/include/odbc /usr/local/odbc/include $odbc_include_dir; do + CFLAGS="$old_CFLAGS -I$try" + AC_TRY_COMPILE([#include ], + [ int a = 1;], + ODBC_INCLUDE="-I$try", + ODBC_INCLUDE=) + if test "x$ODBC_INCLUDE" != "x"; then + break; + fi + done + CFLAGS="$old_CFLAGS" +fi + +if test "x$ODBC_INCLUDE" = "x"; then + AC_MSG_RESULT(no) +else + AC_MSG_RESULT(yes) + +dnl # +dnl # Now do the same thing, looking for the ODBC library directory +dnl # + AC_MSG_CHECKING([for odbc_init in -lodbcclient]) + +dnl # +dnl # Look for it in a number of directories. +dnl # + old_LIBS="$LIBS" + + AC_LOCATE_DIR(odbc_lib_dir, [libodbcclient.so]) + AC_LOCATE_DIR(odbc_lib_dir, [libodbcclient.a]) + + for try in /usr/lib /usr/lib/odbc /usr/local/lib/odbc /usr/local/odbc/lib $odbc_lib_dir; do + LIBS="$old_LIBS -L$try -lodbcclient" + AC_TRY_LINK([extern char odbc_init();], + [ odbc_init()], + ODBC_LIBS="-L$try -lodbcclient", + ODBC_LIBS=) + if test "x$ODBC_LIBS" != "x"; then + break; + fi + done + LIBS="$old_LIBS" + + dnl # + dnl # If one or the other isn't found, disable them both.. + dnl # If both are found, enable them both. + dnl # + if test "x$ODBC_LIBS" = "x"; then + AC_MSG_RESULT(no) + ODBC_INCLUDE= + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_ISQL_H) + fi +fi +]) + +dnl ####################################################################### +dnl # +dnl # Look for SNMP in a variety of places. +dnl # +AC_DEFUN(SNMP_CHECKS, [ + AC_SUBST(SNMP_LIBS) + AC_SUBST(SNMP_INCLUDE) + +AC_MSG_CHECKING([for asn1.h]) + +dnl # +dnl # First, see if we can build it WITHOUT using any special includes +dnl # +AC_TRY_COMPILE([ +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_STDINT_H +#include +#endif +#ifdef HAVE_STDIO_H +#include +#endif +#ifdef HAVE_NETDB_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#include ], + [ int a = 1;], + SNMP_INCLUDE=" ", + SNMP_INCLUDE=) + +dnl # +dnl # If not, look for it in a number of directories. +dnl # +if test "x$SNMP_INCLUDE" = "x"; then + old_CFLAGS="$CFLAGS" + for try in /usr/include/ucd-snmp /usr/local/include/ucd-snmp $snmp_include_dir; do + CFLAGS="$old_CFLAGS -I$try" + AC_TRY_COMPILE([ +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_STDINT_H +#include +#endif +#ifdef HAVE_STDIO_H +#include +#endif +#ifdef HAVE_NETDB_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#include ], + [ int a = 1;], + SNMP_INCLUDE="-I$try", + SNMP_INCLUDE=) + if test "x$SNMP_INCLUDE" != "x"; then + break; + fi + done + CFLAGS="$old_CFLAGS" +fi + +if test "x$SNMP_INCLUDE" = "x"; then + AC_MSG_RESULT(no) +else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_ASN1_H) + +dnl # +dnl # Check for the rest of the SNMP headers. +dnl # + old_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $SNMP_INCLUDE" + + AC_MSG_CHECKING(for snmp.h) + AC_TRY_COMPILE([ +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_STDINT_H +#include +#endif +#ifdef HAVE_STDIO_H +#include +#endif +#ifdef HAVE_NETDB_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef HAVE_ASN1_H +#include +#endif +#include ], + [ int a = 1;], + [AC_DEFINE(HAVE_SNMP_H) ac_cv_header_snmp_h=yes]) + if test "x$ac_cv_header_snmp_h" = "xyes"; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + fi + + AC_MSG_CHECKING(for snmp_impl.h) + AC_TRY_COMPILE([ +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_STDINT_H +#include +#endif +#ifdef HAVE_STDIO_H +#include +#endif +#ifdef HAVE_NETDB_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef HAVE_ASN1_H +#include +#endif +#ifdef HAVE_SNMP_H +#include +#endif +#include ], + [ int a = 1;], + [AC_DEFINE(HAVE_SNMP_IMPL_H) ac_cv_header_snmp_impl_h=yes]) + if test "x$ac_cv_header_snmp_h" = "xyes"; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + fi + +dnl # +dnl # Now do the same thing, looking for the SNMP library directory +dnl # + AC_MSG_CHECKING([for snmp_build_var_op in -lsnmp]) + +dnl # +dnl # First, see if we can build it WITHOUT using any special includes +dnl # + old_LIBS="$LIBS" + LIBS="$old_LIBS -lsnmp" + AC_TRY_LINK([extern char snmp_build_var_op();], + [ snmp_build_var_op()], + SNMP_LIBS="-lsnmp", + SNMP_LIBS=) + + + for try in /usr/lib /usr/local/lib /usr/local/snmp/lib $snmp_lib_dir; do + LIBS="$old_LIBS -L$try -lsnmp" + AC_TRY_LINK([extern char snmp_build_var_op();], + [ snmp_build_var_op()], + SNMP_LIBS="-L$try -lsnmp", + SNMP_LIBS=) + if test "x$SNMP_LIBS" != "x"; then + break; + fi + +dnl # +dnl # That didn't work. Try adding the '-lcrypto' line. +dnl # Some SNMP libraries are linked against SSL... +dnl # + LIBS="$old_LIBS -L$try -lsnmp -lcrypto" + AC_TRY_LINK([extern char snmp_build_var_op();], + [ snmp_build_var_op()], + SNMP_LIBS="-L$try -lsnmp -lcrypto", + SNMP_LIBS=) + if test "x$SNMP_LIBS" != "x"; then + break; + fi + done + LIBS="$old_LIBS" + + dnl # + dnl # If one or the other isn't found, disable them both.. + dnl # If both are found, enable them both. + dnl # + CFLAGS="$old_CFLAGS" + if test "x$SNMP_LIBS" = "x"; then + AC_MSG_RESULT(no) + SNMP_INCLUDE= + else + AC_MSG_RESULT(yes) + AC_DEFINE(WITH_SNMP) + AC_DEFINE(HAVE_LIBSNMP) + fi +fi +]) + + +dnl # +dnl # Locate the directory in which a particular file is found. +dnl # +dnl # Usage: AC_LOCATE_DIR(MYSQLLIB_DIR, libmysqlclient.a) +dnl # +dnl # Defines the variable MYSQLLIB_DIR to be the directory(s) in +dnl # which the file libmysqlclient.a is to be found. +dnl # +dnl # +AC_DEFUN(AC_LOCATE_DIR, +[ +dnl # If we have the program 'locate', then the problem of finding a +dnl # particular file becomes MUCH easier. +dnl # + +dnl # +dnl # No 'locate' defined, do NOT do anything. +dnl # +if test "x$LOCATE" != "x"; then + dnl # + dnl # Root through a series of directories, looking for the given file. + dnl # + DIRS= + file=$2 + + for x in `${LOCATE} $file 2>/dev/null`; do + dnl # + dnl # When asked for 'foo', locate will also find 'foo_bar', which we + dnl # don't want. We want that EXACT filename. + dnl # + dnl # We ALSO want to be able to look for files like 'mysql/mysql.h', + dnl # and properly match them, too. So we try to strip off the last + dnl # part of the filename, using the name of the file we're looking + dnl # for. If we CANNOT strip it off, then the name will be unchanged. + dnl # + base=`echo $x | sed "s%/${file}%%"` + if test "x$x" = "x$base"; then + continue; + fi + + dir=`${DIRNAME} $x 2>/dev/null` + dnl # + dnl # Exclude a number of directories. + dnl # + exclude=`echo ${dir} | ${GREP} /home` + if test "x$exclude" != "x"; then + continue + fi + + dnl # + dnl # OK, we have an exact match. Let's be sure that we only find ONE + dnl # matching directory. + dnl # + already=`echo \$$1 ${DIRS} | ${GREP} ${dir}` + if test "x$already" = "x"; then + DIRS="$DIRS $dir" + fi + done +fi + +dnl # +dnl # And remember the directory in which we found the file. +dnl # +eval "$1=\"\$$1 $DIRS\"" +]) + + +dnl ####################################################################### +dnl # +dnl # Look for a library in a number of places. +dnl # +AC_DEFUN(AC_SMART_CHECK_LIB, [ + +AC_MSG_CHECKING([for $2 in -l$1]) + +smart_lib= +smart_lib_dir= + +dnl # +dnl # Try to link it first, using the default libs && library paths +dnl # + old_LIBS="$LIBS" + LIBS="$LIBS -l$1" + AC_TRY_LINK([extern char $2();], + [ $2()], + smart_lib="-l$1") + + if test "x$smart_lib" = "x"; then + AC_LOCATE_DIR(smart_lib_dir,[lib$1.so]) + AC_LOCATE_DIR(smart_lib_dir,[lib$1.a]) + + for try in $smart_lib_dir /usr/local/lib/ /opt/lib; do + LIBS="$old_LIBS -L$try -l$1" + + AC_TRY_LINK([extern char $2();], + [ $2()], + smart_lib="-L$try -l$1") + if test "x$smart_lib" != "x"; then + break; + fi + done + LIBS="$old_LIBS" + fi + + dnl # + dnl # Found it, set the appropriate variable. + dnl # + if test "x$smart_lib" != "x"; then + AC_MSG_RESULT(yes) + eval "ac_cv_lib_$1_$2=yes" + LIBS="$old_LIBS $smart_lib" + SMART_LIBS="$SMART_LIBS $smart_lib" + else + AC_MSG_RESULT(no) +fi +]) + +dnl ####################################################################### +dnl # +dnl # Look for a header file in a number of places. +dnl # +AC_DEFUN(AC_SMART_CHECK_INCLUDE, [ + +ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` +AC_MSG_CHECKING([for $1]) + +smart_include= +smart_include_dir= + +dnl # +dnl # Try to link it first, using the default includes +dnl # + old_CFLAGS="$CFLAGS" + AC_TRY_COMPILE([#include <$1>], + [ int a = 1;], + smart_include=" ", + smart_include=) + + if test "x$smart_include" = "x"; then + AC_LOCATE_DIR(smart_include_dir,$1) + + for try in $smart_include_dir /usr/local/include/ /opt/include; do + CFLAGS="$old_CFLAGS -I$try" + + AC_TRY_COMPILE([#include <$1>], + [ int a = 1;], + smart_include="-I$try", + smart_include=) + + if test "x$smart_include" != "x"; then + break; + fi + done + CFLAGS="$old_CFLAGS" + fi + + dnl # + dnl # Found it, set the appropriate variable. + dnl # + if test "x$smart_include" != "x"; then + AC_MSG_RESULT(yes) + eval "ac_cv_header_$ac_safe=yes" + CFLAGS="$old_CFLAGS $smart_include" + SMART_CFLAGS="$SMART_CFLAGS $smart_include" + else + AC_MSG_RESULT(no) +fi +]) + +dnl ####################################################################### +dnl # +dnl # Look for a header file in a number of places. +dnl # +dnl # Usage: AC_CHECK_STRUCT_HAS_MEMBER([#include ], [struct foo], member) +dnl # If the member is defined, then the variable +dnl # ac_cv_type_struct_foo_member is set to 'yes' +dnl # +AC_DEFUN(AC_CHECK_STRUCT_HAS_MEMBER, [ + AC_MSG_CHECKING([for $3 in $2]) + +dnl BASED on 'offsetof': +dnl #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) +dnl + + AC_TRY_COMPILE([ +$1 +#ifndef offsetof +#define offsetof(TYPE, MEMBER) ((int) &((TYPE *)0)->MEMBER) +#endif +], + [ int foo = offsetof($2, $3) ], + has_element=" ", + has_element=) + + ac_safe_type=`echo "$2" | sed 'y% %_%'` + if test "x$has_element" != "x"; then + AC_MSG_RESULT(yes) + eval "ac_cv_type_${ac_safe_type}_has_$3=yes" + else + AC_MSG_RESULT(no) + eval "ac_cv_type_${ac_safe_type}_has_$3=" + fi +]) -- 2.1.4