summaryrefslogtreecommitdiffstats
path: root/php-pecl-openswoole26.spec
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2026-03-03 08:35:26 +0100
committerRemi Collet <remi@php.net>2026-03-03 08:35:26 +0100
commit1f9fb9a4b4c5f0381c132bd76f816683faa6cbc6 (patch)
tree315520baf18a8d02fa07424b648353cc69f9b005 /php-pecl-openswoole26.spec
parent3cf43f6be18467d4def070f0165b348f4b5df6b8 (diff)
update to 26.2.0HEADmaster
raise dependency on PHP 8.3 rename to php-pecl-openswoole26 for new API
Diffstat (limited to 'php-pecl-openswoole26.spec')
-rw-r--r--php-pecl-openswoole26.spec58
1 files changed, 38 insertions, 20 deletions
diff --git a/php-pecl-openswoole26.spec b/php-pecl-openswoole26.spec
index f802b41..711ffe8 100644
--- a/php-pecl-openswoole26.spec
+++ b/php-pecl-openswoole26.spec
@@ -1,13 +1,13 @@
-# remirepo spec file for php-pecl-openswoole25
+# remirepo spec file for php-pecl-openswoole26
#
-# SPDX-FileCopyrightText: Copyright 2013-2025 Remi Collet
+# SPDX-FileCopyrightText: Copyright 2013-2026 Remi Collet
# SPDX-License-Identifier: CECILL-2.1
# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
#
# Please, preserve the changelog entries
#
-%{?scl:%scl_package php-pecl-openswoole25}
+%{?scl:%scl_package php-pecl-openswoole26}
# See https://github.com/openswoole/swoole-src/issues/287
%global with_zts 0
@@ -15,34 +15,38 @@
# After 20-sockets, 20-mysqlnd
%global ini_name 40-%{pecl_name}.ini
+%if 0%{?fedora} || 0%{?rhel} >= 9
+%bcond_without uring
+%else
+%bcond_with uring
+%endif
+
+
%bcond_without cares
%bcond_without nghttpd2
%bcond_without brotli
%bcond_without pgsql
-%global upstream_version 25.2.0
+%global upstream_version 26.2.0
#global upstream_prever RC2
%global sources %{pecl_name}-%{upstream_version}%{?upstream_prever}
%global _configure ../%{sources}/configure
Summary: High Performance Programmatic Server for PHP with Async IO, Coroutines and Fibers
-Name: %{?scl_prefix}php-pecl-%{pecl_name}25
+Name: %{?scl_prefix}php-pecl-%{pecl_name}26
Version: %{upstream_version}%{?upstream_prever:~%{upstream_prever}}
-Release: 3%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Release: 1%{?dist}
# SPDX: extension is Apache-2.0
# hiredis is BSD-3-Clause
License: Apache-2.0 AND BSD-3-Clause
URL: https://pecl.php.net/package/%{pecl_name}
Source0: https://pecl.php.net/get/%{sources}.tgz
-Patch0: 0001-fix-cpu-affinity-check.patch
-Patch1: 0002-fix-futex-check.patch
-
BuildRequires: make
BuildRequires: %{?dtsprefix}gcc
BuildRequires: %{?dtsprefix}gcc-c++
-BuildRequires: %{?scl_prefix}php-devel >= 8.2
+BuildRequires: %{?scl_prefix}php-devel >= 8.3
BuildRequires: %{?scl_prefix}php-pear
BuildRequires: %{?scl_prefix}php-curl
BuildRequires: %{?scl_prefix}php-sockets
@@ -59,6 +63,9 @@ BuildRequires: brotli-devel
%if %{with pgsql}
BuildRequires: libpq-devel > 9
%endif
+%if %{with uring}
+BuildRequires: pkgconfig(liburing) >= 2
+%endif
Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api}
Requires: %{?scl_prefix}php(api) = %{php_core_api}
@@ -71,15 +78,17 @@ Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}
Provides: %{?scl_prefix}php-pecl(%{pecl_name}) = %{version}
Provides: %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version}
-%if 0%{?fedora} >= 42 || 0%{?rhel} >= 10 || "%{php_version}" > "8.4"
-Obsoletes: %{?scl_prefix}php-pecl-%{pecl_name} < 25
-Obsoletes: %{?scl_prefix}php-pecl-%{pecl_name}22 < 25
+%if 0%{?fedora} >= 44 || 0%{?rhel} >= 10 || "%{php_version}" > "8.5"
+Obsoletes: %{?scl_prefix}php-pecl-%{pecl_name} < 26
+Obsoletes: %{?scl_prefix}php-pecl-%{pecl_name}22 < 26
+Obsoletes: %{?scl_prefix}php-pecl-%{pecl_name}25 < 26
Provides: %{?scl_prefix}php-pecl-%{pecl_name} = %{version}-%{release}
Provides: %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa} = %{version}-%{release}
%else
# A single version can be installed
-Conflicts: %{?scl_prefix}php-pecl-%{pecl_name} < 25
-Conflicts: %{?scl_prefix}php-pecl-%{pecl_name}22 < 25
+Conflicts: %{?scl_prefix}php-pecl-%{pecl_name} < 26
+Conflicts: %{?scl_prefix}php-pecl-%{pecl_name}22 < 26
+Conflicts: %{?scl_prefix}php-pecl-%{pecl_name}25 < 26
%endif
# Only one extension can be installed (same symbols)
Conflicts: %{?scl_prefix}php-pecl-swoole
@@ -123,14 +132,12 @@ sed \
cd %{sources}
-%patch -P0 -p1 -b .pr376.1
-%patch -P1 -p1 -b .pr376.2
-
cp -p thirdparty/hiredis/COPYING hiredis-COPYING
cp -p thirdparty/nghttp2/COPYING nghttp2-COPYING
+cp -p thirdparty/llhttp/LICENSE llhttp-LICENSE
# Sanity check, really often broken
-extver=$(sed -n '/#define SWOOLE_VERSION /{s/.* "//;s/".*$//;p}' include/swoole_version.h)
+extver=$(sed -n '/#define OPENSWOOLE_VERSION /{s/.* "//;s/".*$//;p}' include/openswoole_version.h)
if test "x${extver}" != "x%{upstream_version}%{?upstream_prever}"; then
: Error: Upstream extension version is ${extver}, expecting %{upstream_version}%{?upstream_prever}.
exit 1
@@ -150,6 +157,7 @@ extension=%{pecl_name}.so
; Configuration
;openswoole.enable_coroutine = On
;openswoole.enable_preemptive_scheduler = Off
+;openswoole.use_fiber_context = Off
;openswoole.display_errors = On
;openswoole.unixsock_buffer_size = 8388608
EOF
@@ -172,6 +180,9 @@ peclbuild() {
%if %{with cares}
--enable-cares \
%endif
+%if %{with uring}
+ --enable-io-uring \
+%endif
--enable-hook-curl \
--with-libdir=%{_lib} \
--with-php-config=$1
@@ -217,8 +228,9 @@ for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//')
do install -Dpm 644 %{sources}/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i
done
+
# code not compatible with Python 3
-rm %{buildroot}%{pecl_testdir}/%{pecl_name}/tests/swoole_process/echo.py
+rm %{buildroot}%{pecl_testdir}/%{pecl_name}/tests/openswoole_process/echo.py
%check
@@ -243,6 +255,7 @@ OPT="--no-php-ini"
%files
%license %{sources}/LICENSE*
%license %{sources}/*-COPYING
+%license %{sources}/*-LICENSE
%{pecl_xmldir}/%{name}.xml
%config(noreplace) %{php_inidir}/%{ini_name}
@@ -270,6 +283,11 @@ OPT="--no-php-ini"
%changelog
+* Tue Mar 3 2026 Remi Collet <remi@remirepo.net> - 26.2.0-1
+- update to 26.2.0
+- raise dependency on PHP 8.3
+- rename to php-pecl-openswoole26 for new API
+
* Mon Feb 3 2025 Remi Collet <remi@remirepo.net> - 25.2.0-1
- update to 25.2.0
- re-license spec file to CECILL-2.1