mirror of
https://github.com/php/php-src.git
synced 2024-11-27 03:44:07 +08:00
converted ext/sqlite and ext/pdo_mysql to use static tsrmls cache
This commit is contained in:
parent
073c79b8b5
commit
aac7b1db7c
@ -144,7 +144,7 @@ if test "$PHP_PDO_MYSQL" != "no"; then
|
||||
fi
|
||||
|
||||
dnl fix after renaming to pdo_mysql
|
||||
PHP_NEW_EXTENSION(pdo_mysql, pdo_mysql.c mysql_driver.c mysql_statement.c, $ext_shared,,-I$pdo_cv_inc_path -I)
|
||||
PHP_NEW_EXTENSION(pdo_mysql, pdo_mysql.c mysql_driver.c mysql_statement.c, $ext_shared,,-I$pdo_cv_inc_path -I -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
|
||||
ifdef([PHP_ADD_EXTENSION_DEP],
|
||||
[
|
||||
PHP_ADD_EXTENSION_DEP(pdo_mysql, pdo)
|
||||
|
@ -12,7 +12,7 @@ if (PHP_PDO_MYSQL != "no") {
|
||||
} else {
|
||||
if (CHECK_LIB("libmysql.lib", "pdo_mysql", PHP_PDO_MYSQL) &&
|
||||
CHECK_HEADER_ADD_INCLUDE("mysql.h", "CFLAGS_PDO_MYSQL", PHP_PHP_BUILD + "\\include\\mysql;" + PHP_PDO_MYSQL)) {
|
||||
EXTENSION("pdo_mysql", "pdo_mysql.c mysql_driver.c mysql_statement.c");
|
||||
EXTENSION("pdo_mysql", "pdo_mysql.c mysql_driver.c mysql_statement.c", null, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
|
||||
} else {
|
||||
WARNING("pdo_mysql not enabled; libraries and headers not found");
|
||||
}
|
||||
|
@ -32,6 +32,9 @@
|
||||
#include "php_pdo_mysql_int.h"
|
||||
|
||||
#ifdef COMPILE_DL_PDO_MYSQL
|
||||
#ifdef ZTS
|
||||
ZEND_TSRMLS_CACHE_DEFINE;
|
||||
#endif
|
||||
ZEND_GET_MODULE(pdo_mysql)
|
||||
#endif
|
||||
|
||||
@ -206,6 +209,9 @@ static PHP_RSHUTDOWN_FUNCTION(pdo_mysql)
|
||||
*/
|
||||
static PHP_GINIT_FUNCTION(pdo_mysql)
|
||||
{
|
||||
#if defined(COMPILE_DL_PDO_MYSQL) && defined(ZTS)
|
||||
ZEND_TSRMLS_CACHE_UPDATE;
|
||||
#endif
|
||||
#ifndef PHP_WIN32
|
||||
pdo_mysql_globals->default_socket = NULL;
|
||||
#endif
|
||||
|
@ -83,7 +83,10 @@ ZEND_END_MODULE_GLOBALS(pdo_mysql)
|
||||
ZEND_EXTERN_MODULE_GLOBALS(pdo_mysql)
|
||||
|
||||
#ifdef ZTS
|
||||
#define PDO_MYSQL_G(v) TSRMG(pdo_mysql_globals_id, zend_pdo_mysql_globals *, v)
|
||||
#define PDO_MYSQL_G(v) ZEND_TSRMG(pdo_mysql_globals_id, zend_pdo_mysql_globals *, v)
|
||||
# ifdef COMPILE_DL_PDO_MYSQL
|
||||
ZEND_TSRMLS_CACHE_EXTERN;
|
||||
# endif
|
||||
#else
|
||||
#define PDO_MYSQL_G(v) (pdo_mysql_globals.v)
|
||||
#endif
|
||||
|
@ -5,7 +5,7 @@ ARG_WITH("sqlite3", "SQLite 3 support", "no");
|
||||
|
||||
if (PHP_SQLITE3 != "no") {
|
||||
ADD_FLAG("CFLAGS_SQLITE3", "/D SQLITE_THREADSAFE=" + (PHP_ZTS == "yes" ? "1" : "0") + " /D SQLITE_ENABLE_FTS3=1 /D SQLITE_ENABLE_COLUMN_METADATA=1 /D SQLITE_CORE=1 /D SQLITE_API=__declspec(dllexport) ");
|
||||
EXTENSION("sqlite3", "sqlite3.c", null, "/I" + configure_module_dirname + "/libsqlite /I" + configure_module_dirname);
|
||||
EXTENSION("sqlite3", "sqlite3.c", null, "/I" + configure_module_dirname + "/libsqlite /I" + configure_module_dirname + " /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
|
||||
|
||||
ADD_SOURCES(configure_module_dirname + "/libsqlite", "sqlite3.c", "sqlite3");
|
||||
|
||||
|
@ -8,7 +8,7 @@ PHP_ARG_WITH(sqlite3, whether to enable the SQLite3 extension,
|
||||
|
||||
if test $PHP_SQLITE3 != "no"; then
|
||||
sqlite3_extra_sources=""
|
||||
PHP_SQLITE3_CFLAGS=""
|
||||
PHP_SQLITE3_CFLAGS=" -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 "
|
||||
|
||||
dnl when running phpize enable_maintainer_zts is not available
|
||||
if test -z "$enable_maintainer_zts"; then
|
||||
|
@ -32,6 +32,9 @@ ZEND_END_MODULE_GLOBALS(sqlite3)
|
||||
|
||||
#ifdef ZTS
|
||||
# define SQLITE3G(v) TSRMG(sqlite3_globals_id, zend_sqlite3_globals *, v)
|
||||
# ifdef COMPILE_DL_SQLITE3
|
||||
ZEND_TSRMLS_CACHE_EXTERN;
|
||||
# endif
|
||||
#else
|
||||
# define SQLITE3G(v) (sqlite3_globals.v)
|
||||
#endif
|
||||
|
@ -2271,6 +2271,9 @@ PHP_MINFO_FUNCTION(sqlite3)
|
||||
*/
|
||||
static PHP_GINIT_FUNCTION(sqlite3)
|
||||
{
|
||||
#if defined(COMPILE_DL_SQLITE3) && defined(ZTS)
|
||||
ZEND_TSRMLS_CACHE_UPDATE;
|
||||
#endif
|
||||
memset(sqlite3_globals, 0, sizeof(*sqlite3_globals));
|
||||
}
|
||||
/* }}} */
|
||||
@ -2296,6 +2299,9 @@ zend_module_entry sqlite3_module_entry = {
|
||||
/* }}} */
|
||||
|
||||
#ifdef COMPILE_DL_SQLITE3
|
||||
#ifdef ZTS
|
||||
ZEND_TSRMLS_CACHE_DEFINE;
|
||||
#endif
|
||||
ZEND_GET_MODULE(sqlite3)
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user