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

Reply via email to