summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--441.patch74
-rw-r--r--unit-php.spec10
2 files changed, 83 insertions, 1 deletions
diff --git a/441.patch b/441.patch
new file mode 100644
index 0000000..5a2adc7
--- /dev/null
+++ b/441.patch
@@ -0,0 +1,74 @@
+From cecd5e36a067dda5365f7a4439b72bc5a061400d Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@remirepo.net>
+Date: Wed, 1 Jul 2020 08:01:13 +0200
+Subject: [PATCH] fix #440 API change in PHP 8.0.0alpha1
+
+---
+ src/nxt_php_sapi.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/src/nxt_php_sapi.c b/src/nxt_php_sapi.c
+index 7ae8484d..8b611306 100644
+--- a/src/nxt_php_sapi.c
++++ b/src/nxt_php_sapi.c
+@@ -28,6 +28,9 @@
+ #if PHP_VERSION_ID >= 70000
+ #define NXT_PHP7 1
+ #endif
++#if PHP_VERSION_ID >= 80000
++#define NXT_PHP8 1
++#endif
+
+ /* PHP 8 */
+ #ifndef TSRMLS_CC
+@@ -61,11 +64,15 @@ typedef struct {
+ } nxt_php_run_ctx_t;
+
+
++#ifdef NXT_PHP8
++typedef int (*nxt_php_disable_t)(const char *p, size_t size);
++#else
+ #ifdef NXT_PHP7
+ typedef int (*nxt_php_disable_t)(char *p, size_t size);
+ #else
+ typedef int (*nxt_php_disable_t)(char *p, uint TSRMLS_DC);
+ #endif
++#endif
+
+ #if PHP_VERSION_ID < 70200
+ typedef void (*zif_handler)(INTERNAL_FUNCTION_PARAMETERS);
+@@ -105,11 +112,15 @@ nxt_inline void nxt_php_set_str(nxt_unit_request_info_t *req, const char *name,
+ static void nxt_php_set_cstr(nxt_unit_request_info_t *req, const char *name,
+ const char *str, uint32_t len, zval *track_vars_array TSRMLS_DC);
+ static void nxt_php_register_variables(zval *track_vars_array TSRMLS_DC);
++#ifdef NXT_PHP8
++static void nxt_php_log_message(const char *message, int syslog_type_int);
++#else
+ #ifdef NXT_HAVE_PHP_LOG_MESSAGE_WITH_SYSLOG_TYPE
+ static void nxt_php_log_message(char *message, int syslog_type_int);
+ #else
+ static void nxt_php_log_message(char *message TSRMLS_DC);
+ #endif
++#endif
+
+ #ifdef NXT_PHP7
+ static size_t nxt_php_unbuffered_write(const char *str,
+@@ -1269,6 +1280,10 @@ nxt_php_set_cstr(nxt_unit_request_info_t *req, const char *name,
+ }
+
+
++#ifdef NXT_PHP8
++static void
++nxt_php_log_message(const char *message, int syslog_type_int)
++#else
+ #ifdef NXT_HAVE_PHP_LOG_MESSAGE_WITH_SYSLOG_TYPE
+ static void
+ nxt_php_log_message(char *message, int syslog_type_int)
+@@ -1276,6 +1291,7 @@ nxt_php_log_message(char *message, int syslog_type_int)
+ static void
+ nxt_php_log_message(char *message TSRMLS_DC)
+ #endif
++#endif
+ {
+ nxt_log(nxt_php_task, NXT_LOG_NOTICE, "php message: %s", message);
+ }
diff --git a/unit-php.spec b/unit-php.spec
index be1835c..1265cb8 100644
--- a/unit-php.spec
+++ b/unit-php.spec
@@ -35,13 +35,15 @@ Requires: %{scl_prefix}php-embedded
Name: %{?scl_prefix}%{project}-php
Version: 1.18.0
-Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
Summary: PHP module for NGINX Unit
License: ASL 2.0
URL: https://unit.nginx.org/
Source0: https://github.com/%{gh_owner}/%{project}/archive/%{gh_commit}/%{project}-%{version}-%{gh_short}.tar.gz
+Patch0: https://patch-diff.githubusercontent.com/raw/nginx/unit/pull/441.patch
+
BuildRequires: %{?dtsprefix}gcc
BuildRequires: %{?scl_prefix}php-devel
BuildRequires: %{?scl_prefix}php-embedded
@@ -60,6 +62,7 @@ and NGINX unit %{version}.
%prep
%setup -qn %{project}-%{gh_commit}
+%patch0 -p1
%build
@@ -118,6 +121,11 @@ make %{modname}-install DESTDIR=%{buildroot}
%changelog
+* Wed Aug 5 2020 Remi Collet <remi@remirepo.net> - 1.18.0-2
+- rebuild for 8.0.0beta1
+- add patch for PHP 8.0.0 from
+ https://github.com/nginx/unit/pull/441
+
* Sun May 31 2020 Remi Collet <remi@remirepo.net> - 1.18.0-1
- update to 1.18.0
- drop patches merged upstream