Fix build with PHP 8.0

This commit is contained in:
Sunpoet Po-Chuan Hsieh 2020-11-06 11:21:58 +00:00
parent d03a5f3471
commit f9f55b43a1
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=554219
5 changed files with 69 additions and 0 deletions

View file

@ -0,0 +1,14 @@
--- src/php_tarantool.h.orig 2020-06-29 22:41:13 UTC
+++ src/php_tarantool.h
@@ -180,7 +180,11 @@ PHP_TARANTOOL_API zend_class_entry *php_tarantool_get_
PHP_TARANTOOL_API zend_class_entry *php_tarantool_get_ioexception(void);
PHP_TARANTOOL_API zend_class_entry *php_tarantool_get_clienterror(void);
PHP_TARANTOOL_API zend_class_entry *php_tarantool_get_parsingexception(void);
+#if PHP_MAJOR_VERSION >= 8
+PHP_TARANTOOL_API zend_class_entry *php_tarantool_get_exception_base(int root);
+#else
PHP_TARANTOOL_API zend_class_entry *php_tarantool_get_exception_base(int root TSRMLS_DC);
+#endif
#ifdef ZTS
# define TARANTOOL_G(v) TSRMG(tarantool_globals_id, zend_tarantool_globals *, v)

View file

@ -0,0 +1,15 @@
--- src/tarantool.c.orig 2020-06-29 22:41:13 UTC
+++ src/tarantool.c
@@ -14,6 +14,12 @@
#include "utils.h"
+#if PHP_MAJOR_VERSION >= 8
+#define TSRMLS_CC
+#define TSRMLS_DC
+#define TSRMLS_FETCH()
+#endif
+
static int __tarantool_authenticate(tarantool_connection *obj);
static void tarantool_stream_close(tarantool_connection *obj);

View file

@ -0,0 +1,13 @@
--- src/tarantool_exception.c.orig 2020-06-29 22:41:13 UTC
+++ src/tarantool_exception.c
@@ -4,6 +4,10 @@
#include "tarantool_exception.h"
+#if PHP_MAJOR_VERSION >= 8
+#define TSRMLS_DC
+#endif
+
zend_class_entry *TarantoolException_ptr;
zend_class_entry *TarantoolIOException_ptr;
zend_class_entry *TarantoolClientError_ptr;

View file

@ -0,0 +1,13 @@
--- src/tarantool_msgpack.c.orig 2020-06-29 22:41:13 UTC
+++ src/tarantool_msgpack.c
@@ -5,6 +5,10 @@
#include "third_party/msgpuck.h"
+#if PHP_MAJOR_VERSION >= 8
+#define TSRMLS_FETCH()
+#endif
+
#ifndef HASH_KEY_NON_EXISTENT
#define HASH_KEY_NON_EXISTENT HASH_KEY_NON_EXISTANT
#endif /* HASH_KEY_NON_EXISTENT */

View file

@ -0,0 +1,14 @@
--- src/tarantool_network.c.orig 2020-06-29 22:41:13 UTC
+++ src/tarantool_network.c
@@ -11,6 +11,11 @@
#include "php_tarantool.h"
#include "tarantool_network.h"
+#if PHP_MAJOR_VERSION >= 8
+#define TSRMLS_CC
+#define TSRMLS_FETCH()
+#endif
+
void double_to_tv(double tm, struct timeval *tv) {
tv->tv_sec = floor(tm);
tv->tv_usec = floor((tm - floor(tm)) * pow(10, 6));