php-src/ext/mysqli/config.m4

90 lines
3.0 KiB
Plaintext
Raw Normal View History

2003-03-19 23:52:45 +00:00
dnl
2003-02-12 16:24:41 +00:00
dnl $Id$
dnl config.m4 for extension mysqli
2003-03-19 23:52:45 +00:00
PHP_ARG_WITH(mysqli, for MySQLi support,
2007-11-06 10:00:39 +00:00
[ --with-mysqli[=FILE] Include MySQLi support. FILE is the path
to mysql_config. If mysqlnd is passed as FILE,
the MySQL native driver will be used [mysql_config]])
2003-02-12 16:24:41 +00:00
2003-12-07 15:33:19 +00:00
PHP_ARG_ENABLE(embedded_mysqli, whether to enable embedded MySQLi support,
2007-11-06 10:00:39 +00:00
[ --enable-embedded-mysqli MYSQLi: Enable embedded support
Note: Does not work with MySQL native driver!], no, no)
if test "$PHP_MYSQLI" = "mysqlnd"; then
dnl This needs to be set in any extension which wishes to use mysqlnd
PHP_MYSQLND_ENABLED=yes
2003-02-12 16:24:41 +00:00
elif test "$PHP_MYSQLI" != "no"; then
2003-02-12 16:24:41 +00:00
2003-03-19 23:52:45 +00:00
if test "$PHP_MYSQLI" = "yes"; then
MYSQL_CONFIG=`$php_shtool path mysql_config`
else
2003-12-07 15:33:19 +00:00
MYSQL_CONFIG=$PHP_MYSQLI
fi
MYSQL_LIB_NAME='mysqlclient'
2003-12-07 15:33:19 +00:00
if test "$PHP_EMBEDDED_MYSQLI" = "yes"; then
2003-12-08 18:57:09 +00:00
AC_DEFINE(HAVE_EMBEDDED_MYSQLI, 1, [embedded MySQL support enabled])
MYSQL_LIB_CFG='--libmysqld-libs'
dnl mysqlnd doesn't support embedded, so we have to add some extra stuff
mysqli_extra_sources="mysqli_embedded.c"
elif test "$enable_maintainer_zts" = "yes"; then
MYSQL_LIB_CFG='--libs_r'
MYSQL_LIB_NAME='mysqlclient_r'
2003-12-07 15:33:19 +00:00
else
MYSQL_LIB_CFG='--libs'
2003-03-19 23:52:45 +00:00
fi
2003-02-12 16:24:41 +00:00
if test -x "$MYSQL_CONFIG" && $MYSQL_CONFIG $MYSQL_LIB_CFG > /dev/null 2>&1; then
2005-11-29 17:32:40 +00:00
MYSQLI_INCLINE=`$MYSQL_CONFIG --cflags | $SED -e "s/'//g"`
MYSQLI_LIBLINE=`$MYSQL_CONFIG $MYSQL_LIB_CFG | $SED -e "s/'//g"`
2003-03-19 23:52:45 +00:00
else
2003-03-30 09:24:40 +00:00
AC_MSG_RESULT([mysql_config not found])
2003-03-19 23:52:45 +00:00
AC_MSG_ERROR([Please reinstall the mysql distribution])
2003-02-12 16:24:41 +00:00
fi
2003-03-19 23:52:45 +00:00
dnl
dnl Check the library
dnl
PHP_CHECK_LIBRARY($MYSQL_LIB_NAME, mysql_set_server_option,
2003-02-12 16:24:41 +00:00
[
2003-03-19 23:52:45 +00:00
PHP_EVAL_INCLINE($MYSQLI_INCLINE)
PHP_EVAL_LIBLINE($MYSQLI_LIBLINE, MYSQLI_SHARED_LIBADD)
AC_DEFINE(HAVE_MYSQLILIB, 1, [ ])
PHP_CHECK_LIBRARY($MYSQL_LIB_NAME, mysql_set_character_set,
[ ],[
AC_MSG_ERROR([MySQLI doesn't support versions < 4.1.13 (for MySQL 4.1.x) and < 5.0.7 for (MySQL 5.0.x) anymore. Please update your libraries.])
],[$MYSQLI_LIBLINE])
2003-02-12 16:24:41 +00:00
],[
2003-03-19 23:52:45 +00:00
AC_MSG_ERROR([wrong mysql library version or lib not found. Check config.log for more information.])
2003-02-12 16:24:41 +00:00
],[
2003-03-19 23:52:45 +00:00
$MYSQLI_LIBLINE
2003-02-12 16:24:41 +00:00
])
dnl
dnl Check the library for mysql_stmt_next_result
dnl
PHP_CHECK_LIBRARY($MYSQL_LIB_NAME, mysql_stmt_next_result,
[
AC_DEFINE(HAVE_STMT_NEXT_RESULT, 1, [ ])
],[
],[
$MYSQLI_LIBLINE
])
fi
dnl Build extension
if test "$PHP_MYSQLI" != "no"; then
mysqli_sources="mysqli.c mysqli_api.c mysqli_prop.c mysqli_nonapi.c \
mysqli_fe.c mysqli_report.c mysqli_driver.c mysqli_warning.c \
mysqli_exception.c $mysqli_extra_sources"
PHP_NEW_EXTENSION(mysqli, $mysqli_sources, $ext_shared)
2003-12-07 15:33:19 +00:00
PHP_SUBST(MYSQLI_SHARED_LIBADD)
PHP_INSTALL_HEADERS([ext/mysqli/php_mysqli_structs.h])
if test "$PHP_MYSQLI" = "mysqlnd"; then
PHP_ADD_EXTENSION_DEP(mysqli, mysqlnd)
AC_DEFINE([MYSQLI_USE_MYSQLND], 1, [Whether mysqlnd is enabled])
fi
2003-02-12 16:24:41 +00:00
fi