mike Thu Jun 1 19:14:48 2006 UTC Modified files: (Branch: PHP_5_2) /php-src NEWS /php-src/ext/mysql config.m4 php_mysql.c /php-src/ext/mysqli config.m4 /php-src/ext/pdo_mysql config.m4 Log: - Fix bug #37630: MySQL extensions should link against thread safe client libs if built with ZTS http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2027.2.547.2.72&r2=1.2027.2.547.2.73&diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.72 php-src/NEWS:1.2027.2.547.2.73 --- php-src/NEWS:1.2027.2.547.2.72 Thu Jun 1 19:11:59 2006 +++ php-src/NEWS Thu Jun 1 19:14:48 2006 @@ -51,6 +51,8 @@ - Fixed handling of extremely long paths inside tempnam() function. (Ilia) - Fixed bug #37635 (parameter of pcntl signal handler is trashed). (Mike) - Fixed bug #37632 (Protected method access problem). (Marcus) +- Fixed bug #37630 (MySQL extensions should link against thread safe client + libs if built with ZTS). (Mike) - Fixed bug #37620 (mysqli_ssl_set validation is inappropriate). (Georg) - Fixed bug #37616 (DATE_RFC822 does not product RFC 822 dates). (Hannes Magnusson, Derick) http://cvs.php.net/viewcvs.cgi/php-src/ext/mysql/config.m4?r1=1.67.2.1&r2=1.67.2.1.2.1&diff_format=u Index: php-src/ext/mysql/config.m4 diff -u php-src/ext/mysql/config.m4:1.67.2.1 php-src/ext/mysql/config.m4:1.67.2.1.2.1 --- php-src/ext/mysql/config.m4:1.67.2.1 Sun Sep 4 04:51:23 2005 +++ php-src/ext/mysql/config.m4 Thu Jun 1 19:14:48 2006 @@ -1,5 +1,5 @@ dnl -dnl $Id: config.m4,v 1.67.2.1 2005/09/04 04:51:23 wez Exp $ +dnl $Id: config.m4,v 1.67.2.1.2.1 2006/06/01 19:14:48 mike Exp $ dnl AC_DEFUN([MYSQL_LIB_CHK], [ @@ -86,7 +86,11 @@ Note that the MySQL client library is not bundled anymore!]) fi - MYSQL_LIBNAME=mysqlclient + if test "$enable_maintainer_zts" = "yes"; then + MYSQL_LIBNAME=mysqlclient_r + else + MYSQL_LIBNAME=mysqlclient + fi case $host_alias in *netware*[)] MYSQL_LIBNAME=mysql http://cvs.php.net/viewcvs.cgi/php-src/ext/mysql/php_mysql.c?r1=1.213.2.6.2.1&r2=1.213.2.6.2.2&diff_format=u Index: php-src/ext/mysql/php_mysql.c diff -u php-src/ext/mysql/php_mysql.c:1.213.2.6.2.1 php-src/ext/mysql/php_mysql.c:1.213.2.6.2.2 --- php-src/ext/mysql/php_mysql.c:1.213.2.6.2.1 Tue May 9 23:58:46 2006 +++ php-src/ext/mysql/php_mysql.c Thu Jun 1 19:14:48 2006 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_mysql.c,v 1.213.2.6.2.1 2006/05/09 23:58:46 helly Exp $ */ +/* $Id: php_mysql.c,v 1.213.2.6.2.2 2006/06/01 19:14:48 mike Exp $ */ /* TODO: * @@ -392,13 +392,6 @@ REGISTER_LONG_CONSTANT("MYSQL_CLIENT_INTERACTIVE", CLIENT_INTERACTIVE, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQL_CLIENT_IGNORE_SPACE", CLIENT_IGNORE_SPACE, CONST_CS | CONST_PERSISTENT); - -#ifdef ZTS -# if MYSQL_VERSION_ID >= 40000 - mysql_thread_init(); -# endif -#endif - return SUCCESS; } /* }}} */ @@ -407,12 +400,6 @@ */ PHP_MSHUTDOWN_FUNCTION(mysql) { -#ifdef ZTS -# if MYSQL_VERSION_ID >= 40000 - mysql_thread_end(); -# endif -#endif - UNREGISTER_INI_ENTRIES(); return SUCCESS; } http://cvs.php.net/viewcvs.cgi/php-src/ext/mysqli/config.m4?r1=1.22.2.1&r2=1.22.2.1.2.1&diff_format=u Index: php-src/ext/mysqli/config.m4 diff -u php-src/ext/mysqli/config.m4:1.22.2.1 php-src/ext/mysqli/config.m4:1.22.2.1.2.1 --- php-src/ext/mysqli/config.m4:1.22.2.1 Tue Nov 29 17:32:40 2005 +++ php-src/ext/mysqli/config.m4 Thu Jun 1 19:14:48 2006 @@ -1,5 +1,5 @@ dnl -dnl $Id: config.m4,v 1.22.2.1 2005/11/29 17:32:40 sniper Exp $ +dnl $Id: config.m4,v 1.22.2.1.2.1 2006/06/01 19:14:48 mike Exp $ dnl config.m4 for extension mysqli PHP_ARG_WITH(mysqli, for MySQLi support, @@ -22,9 +22,13 @@ MYSQL_CONFIG=$PHP_MYSQLI fi + MYSQL_LIB_NAME='mysqlclient' if test "$PHP_EMBEDDED_MYSQLI" = "yes"; then AC_DEFINE(HAVE_EMBEDDED_MYSQLI, 1, [embedded MySQL support enabled]) MYSQL_LIB_CFG='--libmysqld-libs' + elif test "$enable_maintainer_zts" = "yes"; then + MYSQL_LIB_CFG='--libs_r' + MYSQL_LIB_NAME='mysqlclient_r' else MYSQL_LIB_CFG='--libs' fi @@ -40,12 +44,12 @@ dnl dnl Check the library dnl - PHP_CHECK_LIBRARY(mysqlclient, mysql_set_server_option, + PHP_CHECK_LIBRARY($MYSQL_LIB_NAME, mysql_set_server_option, [ PHP_EVAL_INCLINE($MYSQLI_INCLINE) PHP_EVAL_LIBLINE($MYSQLI_LIBLINE, MYSQLI_SHARED_LIBADD) AC_DEFINE(HAVE_MYSQLILIB,1,[ ]) - PHP_CHECK_LIBRARY(mysqlclient, mysql_stmt_field_count, + PHP_CHECK_LIBRARY($MYSQL_LIB_NAME, mysql_stmt_field_count, [ ],[ AC_MSG_ERROR([MySQLI doesn't support versions < 4.1.3 (for MySQL 4.1.x) and < 5.0.1 for (MySQL 5.0.x) anymore. Please update your libraries.]) ],[$MYSQLI_LIBLINE]) http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_mysql/config.m4?r1=1.25.2.7.2.1&r2=1.25.2.7.2.2&diff_format=u Index: php-src/ext/pdo_mysql/config.m4 diff -u php-src/ext/pdo_mysql/config.m4:1.25.2.7.2.1 php-src/ext/pdo_mysql/config.m4:1.25.2.7.2.2 --- php-src/ext/pdo_mysql/config.m4:1.25.2.7.2.1 Thu Jun 1 15:14:45 2006 +++ php-src/ext/pdo_mysql/config.m4 Thu Jun 1 19:14:48 2006 @@ -1,11 +1,11 @@ dnl -dnl $Id: config.m4,v 1.25.2.7.2.1 2006/06/01 15:14:45 mike Exp $ +dnl $Id: config.m4,v 1.25.2.7.2.2 2006/06/01 19:14:48 mike Exp $ dnl if test "$PHP_PDO" != "no"; then AC_DEFUN([PDO_MYSQL_LIB_CHK], [ - str="$PDO_MYSQL_DIR/$1/libmysqlclient.*" + str="$PDO_MYSQL_DIR/$1/libmysqlclient*" for j in `echo $str`; do if test -r $j; then PDO_MYSQL_LIB_DIR=$MYSQL_DIR/$1 @@ -53,8 +53,14 @@ if test "x$SED" = "x"; then AC_PATH_PROG(SED, sed) fi + if test "$enable_maintainer_zts" = "yes"; then + PDO_MYSQL_LIBNAME=mysqlclient_r + PDO_MYSQL_LIBS=`$PDO_MYSQL_CONFIG --libs_r | $SED -e "s/'//g"` + else + PDO_MYSQL_LIBNAME=mysqlclient + PDO_MYSQL_LIBS=`$PDO_MYSQL_CONFIG --libs | $SED -e "s/'//g"` + fi PDO_MYSQL_INCLUDE=`$PDO_MYSQL_CONFIG --cflags | $SED -e "s/'//g"` - PDO_MYSQL_LIBS=`$PDO_MYSQL_CONFIG --libs | $SED -e "s/'//g"` PDO_MYSQL_SOCKET=`$PDO_MYSQL_CONFIG --socket` elif test -z "$PDO_MYSQL_DIR"; then AC_MSG_RESULT([not found]) @@ -80,7 +86,7 @@ AC_MSG_ERROR([Unable to find your mysql installation]) fi - PHP_ADD_LIBRARY_WITH_PATH(mysqlclient, $PDO_MYSQL_LIB_DIR, PDO_MYSQL_SHARED_LIBADD) + PHP_ADD_LIBRARY_WITH_PATH($PDO_MYSQL_LIBNAME, $PDO_MYSQL_LIB_DIR, PDO_MYSQL_SHARED_LIBADD) PHP_ADD_INCLUDE($PDO_MYSQL_INC_DIR) PDO_MYSQL_INCLUDE=-I$PDO_MYSQL_INC_DIR fi @@ -88,7 +94,7 @@ AC_DEFINE_UNQUOTED(PDO_MYSQL_UNIX_ADDR, "$PDO_MYSQL_SOCKET", [ ]) - PHP_CHECK_LIBRARY(mysqlclient, mysql_query, + PHP_CHECK_LIBRARY($PDO_MYSQL_LIBNAME, mysql_query, [ PHP_EVAL_LIBLINE($PDO_MYSQL_LIBS, PDO_MYSQL_SHARED_LIBADD) ],[
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php