2004-05-18 18:01:52 +00:00
|
|
|
dnl
|
|
|
|
dnl $Id$
|
|
|
|
dnl
|
|
|
|
|
2005-02-28 08:18:47 +00:00
|
|
|
if test "$PHP_PDO" != "no"; then
|
|
|
|
|
2005-02-13 07:17:06 +00:00
|
|
|
AC_DEFUN([PDO_MYSQL_LIB_CHK], [
|
2005-01-07 05:24:21 +00:00
|
|
|
str="$PDO_MYSQL_DIR/$1/libmysqlclient.*"
|
2004-05-18 18:01:52 +00:00
|
|
|
for j in `echo $str`; do
|
|
|
|
if test -r $j; then
|
2005-01-07 05:24:21 +00:00
|
|
|
PDO_MYSQL_LIB_DIR=$MYSQL_DIR/$1
|
2004-05-18 18:01:52 +00:00
|
|
|
break 2
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
])
|
|
|
|
|
2004-08-15 19:17:58 +00:00
|
|
|
PHP_ARG_WITH(pdo-mysql, for MySQL support for PDO,
|
2005-05-29 23:17:16 +00:00
|
|
|
[ --with-pdo-mysql[=DIR] PDO: MySQL support. DIR is the MySQL base directory])
|
2004-05-18 18:01:52 +00:00
|
|
|
|
|
|
|
if test "$PHP_PDO_MYSQL" != "no"; then
|
|
|
|
AC_DEFINE(HAVE_MYSQL, 1, [Whether you have MySQL])
|
|
|
|
|
2004-05-19 18:51:01 +00:00
|
|
|
for i in $PHP_PDO_MYSQL /usr/local /usr ; do
|
2005-06-13 23:37:20 +00:00
|
|
|
PDO_MYSQL_DIR=$i
|
|
|
|
PDO_MYSQL_CONFIG=$PDO_MYSQL_DIR/bin/mysql_config
|
|
|
|
if test -r $i/include/mysql; then
|
|
|
|
PDO_MYSQL_INC_DIR=$i/include/mysql
|
|
|
|
else
|
|
|
|
PDO_MYSQL_INC_DIR=$i/include
|
|
|
|
fi
|
|
|
|
if test -r $i/lib/mysql; then
|
|
|
|
PDO_MYSQL_LIB_DIR=$i/lib/mysql
|
|
|
|
else
|
|
|
|
PDO_MYSQL_LIB_DIR=$i/lib
|
|
|
|
fi
|
|
|
|
if test -x $PDO_MYSQL_CONFIG; then
|
|
|
|
break
|
|
|
|
fi
|
2004-05-18 18:01:52 +00:00
|
|
|
done
|
|
|
|
|
2005-01-07 05:24:21 +00:00
|
|
|
if test -z "$PDO_MYSQL_DIR"; then
|
2004-05-18 18:01:52 +00:00
|
|
|
AC_MSG_ERROR([Cannot find MySQL header files under $PHP_MYSQL.
|
2005-05-29 23:17:16 +00:00
|
|
|
Note that the MySQL client library is not bundled anymore!])
|
2004-05-18 18:01:52 +00:00
|
|
|
fi
|
|
|
|
|
2005-01-07 05:24:21 +00:00
|
|
|
if test -x $PDO_MYSQL_CONFIG; then
|
|
|
|
PDO_MYSQL_SOCKET=`$PDO_MYSQL_CONFIG --socket`
|
|
|
|
fi
|
2004-05-18 18:01:52 +00:00
|
|
|
|
2004-05-19 15:12:05 +00:00
|
|
|
AC_DEFINE_UNQUOTED(PDO_MYSQL_UNIX_ADDR, "$PDO_MYSQL_SOCKET", [ ])
|
2004-05-18 18:01:52 +00:00
|
|
|
|
2005-01-07 05:24:21 +00:00
|
|
|
PHP_ADD_LIBRARY_WITH_PATH(mysqlclient, $PDO_MYSQL_LIB_DIR, PDO_MYSQL_SHARED_LIBADD)
|
|
|
|
PHP_ADD_INCLUDE($PDO_MYSQL_INC_DIR)
|
|
|
|
if test -x $PDO_MYSQL_CONFIG; then
|
2005-06-13 23:37:20 +00:00
|
|
|
PDO_MYSQL_LIBS=`$PDO_MYSQL_CONFIG --libs`
|
|
|
|
PHP_SUBST_OLD(PDO_MYSQL_LIBS)
|
2005-01-07 05:24:21 +00:00
|
|
|
fi
|
2004-05-19 15:12:05 +00:00
|
|
|
|
2005-02-13 07:15:02 +00:00
|
|
|
_SAVE_LDFLAGS=$LDFLAGS
|
|
|
|
LDFLAGS="$LDFLAGS $PDO_MYSQL_LIBS"
|
2005-07-03 02:20:08 +00:00
|
|
|
AC_CHECK_FUNCS([mysql_commit mysql_stmt_prepare mysql_next_result mysql_sqlstate])
|
2005-02-13 07:15:02 +00:00
|
|
|
LDFLAGS=$_SAVE_LDFLAGS
|
|
|
|
|
2005-07-27 02:39:46 +00:00
|
|
|
ifdef([PHP_CHECK_PDO_INCLUDES],
|
|
|
|
[
|
|
|
|
PHP_CHECK_PDO_INCLUDES
|
|
|
|
],[
|
|
|
|
AC_MSG_CHECKING([for PDO includes])
|
|
|
|
if test -f $abs_srcdir/include/php/ext/pdo/php_pdo_driver.h; then
|
|
|
|
pdo_inc_path=$abs_srcdir/ext
|
|
|
|
elif test -f $abs_srcdir/ext/pdo/php_pdo_driver.h; then
|
|
|
|
pdo_inc_path=$abs_srcdir/ext
|
|
|
|
elif test -f $prefix/include/php/ext/pdo/php_pdo_driver.h; then
|
|
|
|
pdo_inc_path=$prefix/include/php/ext
|
|
|
|
else
|
|
|
|
AC_MSG_ERROR([Cannot find php_pdo_driver.h.])
|
|
|
|
fi
|
|
|
|
AC_MSG_RESULT($pdo_inc_path)
|
|
|
|
])
|
2004-05-18 18:01:52 +00:00
|
|
|
|
2004-05-18 23:07:22 +00:00
|
|
|
PHP_NEW_EXTENSION(pdo_mysql, pdo_mysql.c mysql_driver.c mysql_statement.c, $ext_shared,,-I$pdo_inc_path)
|
2005-09-24 23:23:25 +00:00
|
|
|
ifdef([PHP_ADD_EXTENSION_DEP],
|
2005-07-27 02:39:46 +00:00
|
|
|
[
|
|
|
|
PHP_ADD_EXTENSION_DEP(pdo_mysql, pdo)
|
|
|
|
])
|
2004-05-18 18:01:52 +00:00
|
|
|
PDO_MYSQL_MODULE_TYPE=external
|
2005-01-07 05:24:21 +00:00
|
|
|
PDO_MYSQL_INCLUDE=-I$PDO_MYSQL_INC_DIR
|
2004-05-18 18:01:52 +00:00
|
|
|
|
|
|
|
PHP_SUBST(PDO_MYSQL_SHARED_LIBADD)
|
|
|
|
PHP_SUBST_OLD(PDO_MYSQL_MODULE_TYPE)
|
|
|
|
PHP_SUBST_OLD(PDO_MYSQL_LIBS)
|
|
|
|
PHP_SUBST_OLD(PDO_MYSQL_INCLUDE)
|
|
|
|
fi
|
2005-02-28 08:18:47 +00:00
|
|
|
|
|
|
|
fi
|