freeswitch/build/config/odbc.m4
Michael Jerris 09c46acc37 fix odbc build on osx
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11634 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-04 18:15:16 +00:00

158 lines
3.9 KiB
Plaintext

dnl Derrick Brashear
dnl from KTH krb and Arla
AC_DEFUN([ODBC_INC_WHERE1], [
ac_cv_found_odbc_inc=no
if test -f "$1/sql.h" ; then
ac_cv_found_odbc_inc=yes
fi
])
AC_DEFUN([ODBC_INC_WHERE], [
for i in $1; do
AC_MSG_CHECKING(for odbc header in $i)
ODBC_INC_WHERE1($i)
if test "$ac_cv_found_odbc_inc" = "yes"; then
ac_cv_odbc_where_inc=$i
AC_MSG_RESULT(found)
break
else
AC_MSG_RESULT(no found)
fi
done
])
AC_DEFUN([ODBC_LIB_WHERE1], [
saved_LIBS=$LIBS
case "$host" in
*darwin*)
LIBS="$saved_LIBS -L$1 -lodbc -framework CoreFoundation"
;;
*)
LIBS="$saved_LIBS -L$1 -lodbc"
;;
esac
AC_TRY_LINK(
[#include <sql.h>],
[SQLHDBC con;
SQLDisconnect(con);],
[ac_cv_found_odbc_lib=yes],
ac_cv_found_odbc_lib=no)
LIBS=$saved_LIBS
])
AC_DEFUN([TEST_LIBPATH], [
changequote(<<, >>)
define(<<AC_CV_FOUND>>, translit(ac_cv_found_$2_lib, <<- *>>, <<__p>>))
changequote([, ])
if test "$AC_CV_FOUND" = "yes"; then
if test \! -r "$1/lib$2.a" -a \! -r "$1/lib$2.so" -a \! -r "$1/lib$2.sl" -a \! -r "$1/lib$2.dylib"; then
AC_CV_FOUND=no
fi
fi
])
AC_DEFUN([ODBC_LIB_WHERE], [
for i in $1; do
AC_MSG_CHECKING(for odbc library in $i)
ODBC_LIB_WHERE1($i)
TEST_LIBPATH($i, odbc)
if test "$ac_cv_found_odbc_lib" = "yes" ; then
ac_cv_odbc_where_lib=$i
AC_MSG_RESULT(found)
break
else
AC_MSG_RESULT(no found)
fi
done
])
AC_DEFUN([FIND_LIB_SUBDIR],
[dnl
AC_ARG_WITH([lib-subdir], AC_HELP_STRING([--with-lib-subdir=DIR],[Find libraries in DIR instead of lib]))
AC_CHECK_SIZEOF(long)
AC_CACHE_CHECK([what directory libraries are found in], [ac_cv_cmu_lib_subdir],
[test "X$with_lib_subdir" = "Xyes" && with_lib_subdir=
test "X$with_lib_subdir" = "Xno" && with_lib_subdir=
if test "X$with_lib_subdir" = "X" ; then
ac_cv_cmu_lib_subdir=lib
if test $ac_cv_sizeof_long -eq 4 ; then
test -d /usr/lib32 && ac_cv_cmu_lib_subdir=lib32
fi
if test $ac_cv_sizeof_long -eq 8 ; then
test -d /usr/lib64 && ac_cv_cmu_lib_subdir=lib64
fi
else
ac_cv_cmu_lib_subdir=$with_lib_subdir
fi])
AC_SUBST(LIB_SUBDIR, $ac_cv_cmu_lib_subdir)
])
AC_DEFUN([AX_LIB_ODBC], [
AC_REQUIRE([FIND_LIB_SUBDIR])
AC_ARG_WITH(odbc,
[ --with-odbc=PREFIX Compile with ODBC support],
[if test "X$with_odbc" = "X"; then
with_odbc=yes
fi])
AC_ARG_WITH(odbc-lib,
[ --with-odbc-lib=dir use odbc libraries in dir],
[if test "$withval" = "yes" -o "$withval" = "no"; then
AC_MSG_ERROR([No argument for --with-odbc-lib])
fi])
AC_ARG_WITH(odbc-include,
[ --with-odbc-include=dir use odbc headers in dir],
[if test "$withval" = "yes" -o "$withval" = "no"; then
AC_MSG_ERROR([No argument for --with-odbc-include])
fi])
if test "X$with_odbc" != "X"; then
if test "$with_odbc" != "yes"; then
ac_cv_odbc_where_lib=$with_odbc
ac_cv_odbc_where_inc=$with_odbc/include
fi
fi
if test "X$with_odbc_lib" != "X"; then
ac_cv_odbc_where_lib=$with_odbc_lib
fi
if test "X$ac_cv_odbc_where_lib" = "X"; then
ODBC_LIB_WHERE(/usr/$LIB_SUBDIR /usr/local/$LIB_SUBDIR)
fi
if test "X$with_odbc_include" != "X"; then
ac_cv_odbc_where_inc=$with_odbc_include
fi
if test "X$ac_cv_odbc_where_inc" = "X"; then
ODBC_INC_WHERE(/usr/include /usr/local/include)
fi
AC_MSG_CHECKING(whether to include odbc)
if test "X$ac_cv_odbc_where_lib" = "X" -a "X$ac_cv_odbc_where_inc" = "X"; then
ac_cv_found_odbc=no
AC_MSG_RESULT(no)
else
ac_cv_found_odbc=yes
AC_MSG_RESULT(yes)
ODBC_INC_DIR=$ac_cv_pcap_where_inc
ODBC_LIB_DIR=$ac_cv_pcap_where_lib
ODBC_INC_FLAGS="-I${ODBC_INC_DIR}"
case "$host" in
*darwin*)
ODBC_LIB_FLAGS="-L${ODBC_LIB_DIR} -lodbc -framework CoreFoundation"
;;
*)
ODBC_LIB_FLAGS="-L${ODBC_LIB_DIR} -lodbc"
;;
esac
AC_SUBST(ODBC_INC_DIR)
AC_SUBST(ODBC_LIB_DIR)
AC_SUBST(ODBC_INC_FLAGS)
AC_SUBST(ODBC_LIB_FLAGS)
AC_DEFINE([HAVE_ODBC],[1],[libodbc])
fi
])