]> granicus.if.org Git - php/commitdiff
Possible Fix for #10570, #10585, #10539 and maybe others.
authorfoobar <sniper@php.net>
Wed, 2 May 2001 00:21:25 +0000 (00:21 +0000)
committerfoobar <sniper@php.net>
Wed, 2 May 2001 00:21:25 +0000 (00:21 +0000)
ext/mysql/config.m4
ext/mysql/php_mysql.c

index 587ecba2ef9df7ea4e7413f2ccd034f5189f453a..0131258aee5bbf47ed8107aed6e709c660a6da3b 100644 (file)
@@ -69,6 +69,7 @@ elif test "$PHP_MYSQL" != "no"; then
   fi
 
   MYSQL_MODULE_TYPE="external"
+
   for i in lib lib/mysql; do
     MYSQL_LIB_CHK($i)
   done
@@ -77,15 +78,25 @@ elif test "$PHP_MYSQL" != "no"; then
     AC_MSG_ERROR(Cannot find mysqlclient library under $MYSQL_DIR)
   fi
 
-  PHP_ADD_LIBRARY_WITH_PATH(mysqlclient, $MYSQL_LIB_DIR, MYSQL_SHARED_LIBADD)
-
   dnl Check if mysql_config is found. If yes, use the LIBS provided by it..
   if test -x "$MYSQL_DIR/bin/mysql_config"; then
-    PHP_EVAL_LIBLINE($MYSQL_DIR/bin/mysql_config --libs)   
+    MYSQL_LIBS=`$echo $MYSQL_DIR/bin/mysql_config --libs   | sed -e "s/'//g"`
+    MYSQL_INCLUDE=`$echo $MYSQL_DIR/bin/mysql_config --cflags | sed -e "s/'//g"`
+    AC_DEFINE_UNQUOTED(MYSQL_UNIX_ADDR, "`$MYSQL_DIR/bin/mysql_config --socket`", [Default mysql unix socket])
+  else
+    MYSQL_LIBS="-L$MYSQL_LIB_DIR -lmysqlclient"
+    MYSQL_INCLUDE="-I$MYSQL_INC_DIR"
+    PHP_MYSQL_SOCK
   fi
 
-  PHP_ADD_INCLUDE($MYSQL_INC_DIR)
+  PHP_EVAL_LIBLINE($MYSQL_LIBS, MYSQL_SHARED_LIBADD)
+  PHP_EVAL_INCLINE($MYSQL_INCLUDE)
+
 else
   MYSQL_MODULE_TYPE="none"
 fi
+
 PHP_SUBST(MYSQL_SHARED_LIBADD)
+PHP_SUBST_OLD(MYSQL_MODULE_TYPE)
+PHP_SUBST_OLD(MYSQL_LIBS)
+PHP_SUBST_OLD(MYSQL_INCLUDE)
index 06802ce6c81069b4d66f12df59cc00e761e83c26..a22c40b91bbe7fb6cf299abbfa460e802e8e51ca 100644 (file)
@@ -337,8 +337,9 @@ PHP_MINFO_FUNCTION(mysql)
        php_info_print_table_row(2, "Active Links", buf);
        php_info_print_table_row(2, "Client API version", mysql_get_client_info());
 #ifndef PHP_WIN32
+       php_info_print_table_row(2, "MYSQL_MODULE_TYPE", PHP_MYSQL_TYPE);
+       php_info_print_table_row(2, "MYSQL_SOCKET", MYSQL_UNIX_ADDR);
        php_info_print_table_row(2, "MYSQL_INCLUDE", PHP_MYSQL_INCLUDE);
-       php_info_print_table_row(2, "MYSQL_LFLAGS", PHP_MYSQL_LFLAGS);
        php_info_print_table_row(2, "MYSQL_LIBS", PHP_MYSQL_LIBS);
 #endif
        php_info_print_table_end();