File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / pdo_mysql / config.m4
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue May 29 12:34:41 2012 UTC (12 years, 1 month ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_29p0, v5_4_29, v5_4_20p0, v5_4_20, v5_4_17p0, v5_4_17, HEAD
php 5.4.3+patches

    1: dnl $Id: config.m4,v 1.1.1.2 2012/05/29 12:34:41 misho Exp $
    2: dnl config.m4 for extension pdo_mysql
    3: dnl vim: se ts=2 sw=2 et:
    4: 
    5: PHP_ARG_WITH(pdo-mysql, for MySQL support for PDO,
    6: [  --with-pdo-mysql[=DIR]    PDO: MySQL support. DIR is the MySQL base directory
    7:                                  If no value or mysqlnd is passed as DIR, the
    8:                                  MySQL native driver will be used])
    9: 
   10: if test -z "$PHP_ZLIB_DIR"; then
   11:   PHP_ARG_WITH(zlib-dir, for the location of libz,
   12:   [  --with-zlib-dir[=DIR]       PDO_MySQL: Set the path to libz install prefix], no, no)
   13: fi
   14: 
   15: if test "$PHP_PDO_MYSQL" != "no"; then
   16: 
   17:   if test "$PHP_PDO" = "no" && test "$ext_shared" = "no"; then
   18:     AC_MSG_ERROR([PDO is not enabled! Add --enable-pdo to your configure line.])
   19:   fi
   20: 
   21:   AC_DEFUN([PDO_MYSQL_LIB_CHK], [
   22:     str="$PDO_MYSQL_DIR/$1/libmysqlclient*"
   23:     for j in `echo $str`; do
   24:       if test -r $j; then
   25:         PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/$1
   26:         break 2
   27:       fi
   28:     done
   29:   ])
   30: 
   31:   if test "$PHP_PDO_MYSQL" != "yes" && test "$PHP_PDO_MYSQL" != "mysqlnd"; then
   32:     if test -f $PHP_PDO_MYSQL && test -x $PHP_PDO_MYSQL ; then
   33:       PDO_MYSQL_CONFIG=$PHP_PDO_MYSQL
   34:     else
   35:       if test -d "$PHP_PDO_MYSQL" ; then
   36:         if test -x "$PHP_PDO_MYSQL/bin/mysql_config" ; then
   37:           PDO_MYSQL_CONFIG="$PHP_PDO_MYSQL/bin/mysql_config"
   38:         else
   39:           PDO_MYSQL_DIR="$PHP_PDO_MYSQL"
   40:         fi
   41:       fi
   42:     fi
   43:   fi
   44:   
   45:   if test "$PHP_PDO_MYSQL" = "yes" || test "$PHP_PDO_MYSQL" = "mysqlnd"; then
   46:     dnl enables build of mysqnd library
   47:     PHP_MYSQLND_ENABLED=yes
   48:     AC_DEFINE([PDO_USE_MYSQLND], 1, [Whether pdo_mysql uses mysqlnd])
   49:   else
   50:     AC_DEFINE(HAVE_MYSQL, 1, [Whether you have MySQL])
   51: 
   52:     AC_MSG_CHECKING([for mysql_config])
   53:     if test -n "$PDO_MYSQL_CONFIG"; then
   54:       AC_MSG_RESULT($PDO_MYSQL_CONFIG)
   55:       if test "x$SED" = "x"; then
   56:         AC_PATH_PROG(SED, sed)
   57:       fi
   58:       if test "$enable_maintainer_zts" = "yes"; then
   59:         PDO_MYSQL_LIBNAME=mysqlclient_r
   60:         PDO_MYSQL_LIBS=`$PDO_MYSQL_CONFIG --libs_r | $SED -e "s/'//g"`
   61:       else
   62:         PDO_MYSQL_LIBNAME=mysqlclient
   63:         PDO_MYSQL_LIBS=`$PDO_MYSQL_CONFIG --libs | $SED -e "s/'//g"`
   64:       fi
   65:       PDO_MYSQL_INCLUDE=`$PDO_MYSQL_CONFIG --cflags | $SED -e "s/'//g"`
   66:     elif test -n "$PDO_MYSQL_DIR"; then
   67:       AC_MSG_RESULT([not found])
   68:       AC_MSG_CHECKING([for mysql install under $PDO_MYSQL_DIR])
   69:       if test -r $PDO_MYSQL_DIR/include/mysql; then
   70:         PDO_MYSQL_INC_DIR=$PDO_MYSQL_DIR/include/mysql
   71:       else
   72:         PDO_MYSQL_INC_DIR=$PDO_MYSQL_DIR/include
   73:       fi
   74:       if test -r $PDO_MYSQL_DIR/$PHP_LIBDIR/mysql; then
   75:         PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/$PHP_LIBDIR/mysql
   76:       else
   77:         PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/$PHP_LIBDIR
   78:       fi
   79: 
   80:       if test -r "$PDO_MYSQL_LIB_DIR"; then
   81:         AC_MSG_RESULT([libs under $PDO_MYSQL_LIB_DIR; seems promising])
   82:       else
   83:         AC_MSG_RESULT([can not find it])
   84:         AC_MSG_ERROR([Unable to find your mysql installation])
   85:       fi
   86: 
   87:       PHP_ADD_INCLUDE($PDO_MYSQL_INC_DIR)
   88:       PDO_MYSQL_INCLUDE=-I$PDO_MYSQL_INC_DIR
   89:     else
   90:       AC_MSG_RESULT([not found])
   91:       AC_MSG_ERROR([Unable to find your mysql installation])
   92:     fi
   93: 
   94:     PHP_CHECK_LIBRARY($PDO_MYSQL_LIBNAME, mysql_commit,
   95:     [
   96:       PHP_EVAL_INCLINE($PDO_MYSQL_INCLUDE)
   97:       PHP_EVAL_LIBLINE($PDO_MYSQL_LIBS, PDO_MYSQL_SHARED_LIBADD)
   98:     ],[
   99:       if test "$PHP_ZLIB_DIR" != "no"; then
  100:         PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR, PDO_MYSQL_SHARED_LIBADD)
  101:         PHP_CHECK_LIBRARY($PDO_MYSQL_LIBNAME, mysql_commit, [], [
  102:           AC_MSG_ERROR([PDO_MYSQL configure failed, MySQL 4.1 needed. Please check config.log for more information.])
  103:         ], [
  104:           -L$PHP_ZLIB_DIR/$PHP_LIBDIR -L$PDO_MYSQL_LIB_DIR 
  105:         ])  
  106:         PDO_MYSQL_LIBS="$PDO_MYSQL_LIBS -L$PHP_ZLIB_DIR/$PHP_LIBDIR -lz"
  107:       else
  108:         PHP_ADD_LIBRARY(z,, PDO_MYSQL_SHARED_LIBADD)
  109:         PHP_CHECK_LIBRARY($PDO_MYSQL_LIBNAME, mysql_query, [], [
  110:           AC_MSG_ERROR([Try adding --with-zlib-dir=<DIR>. Please check config.log for more information.])
  111:         ], [
  112:           -L$PDO_MYSQL_LIB_DIR
  113:         ])   
  114:         PDO_MYSQL_LIBS="$PDO_MYSQL_LIBS -lz"
  115:       fi
  116: 
  117:       PHP_EVAL_INCLINE($PDO_MYSQL_INCLUDE)
  118:       PHP_EVAL_LIBLINE($PDO_MYSQL_LIBS, PDO_MYSQL_SHARED_LIBADD)
  119:     ],[
  120:       $PDO_MYSQL_LIBS
  121:     ])
  122:   fi
  123: 
  124:   ifdef([PHP_CHECK_PDO_INCLUDES],
  125:   [
  126:     PHP_CHECK_PDO_INCLUDES
  127:   ],[
  128:     AC_MSG_CHECKING([for PDO includes])
  129:     if test -f $abs_srcdir/include/php/ext/pdo/php_pdo_driver.h; then
  130:       pdo_cv_inc_path=$abs_srcdir/ext
  131:     elif test -f $abs_srcdir/ext/pdo/php_pdo_driver.h; then
  132:       pdo_cv_inc_path=$abs_srcdir/ext
  133:     elif test -f $prefix/include/php/ext/pdo/php_pdo_driver.h; then
  134:       pdo_cv_inc_path=$prefix/include/php/ext
  135:     else
  136:       AC_MSG_ERROR([Cannot find php_pdo_driver.h.])
  137:     fi
  138:     AC_MSG_RESULT($pdo_cv_inc_path)
  139:   ])
  140: 
  141:   if test -n "$PDO_MYSQL_CONFIG"; then
  142:     PDO_MYSQL_SOCKET=`$PDO_MYSQL_CONFIG --socket`
  143:     AC_DEFINE_UNQUOTED(PDO_MYSQL_UNIX_ADDR, "$PDO_MYSQL_SOCKET", [ ])
  144:   fi
  145: 
  146:   dnl fix after renaming to pdo_mysql
  147:   PHP_NEW_EXTENSION(pdo_mysql, pdo_mysql.c mysql_driver.c mysql_statement.c, $ext_shared,,-I$pdo_cv_inc_path -I)
  148:   ifdef([PHP_ADD_EXTENSION_DEP],
  149:   [
  150:     PHP_ADD_EXTENSION_DEP(pdo_mysql, pdo)
  151:     if test "$PHP_MYSQL" = "mysqlnd"; then
  152:       PHP_ADD_EXTENSION_DEP(pdo_mysql, mysqlnd)
  153:     fi
  154:   ])
  155:   PDO_MYSQL_MODULE_TYPE=external
  156: 
  157:   PHP_SUBST(PDO_MYSQL_SHARED_LIBADD)
  158:   PHP_SUBST_OLD(PDO_MYSQL_MODULE_TYPE)
  159: fi

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>