summaryrefslogtreecommitdiff
path: root/swoole.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-08-08 16:54:50 +0000
committerCoprDistGit <infra@openeuler.org>2024-08-08 16:54:50 +0000
commitf6e6386cb5bb131d513e1e04db9cc246903f3811 (patch)
treed5aad0e9c6db0e814d95f7d3bc44f8f3ce1abe3f /swoole.spec
parent3035997810168182cee8c23fff790dbe2bf227dd (diff)
automatic import of swooleopeneuler24.03_LTS
Diffstat (limited to 'swoole.spec')
-rw-r--r--swoole.spec89
1 files changed, 89 insertions, 0 deletions
diff --git a/swoole.spec b/swoole.spec
new file mode 100644
index 0000000..9819e9a
--- /dev/null
+++ b/swoole.spec
@@ -0,0 +1,89 @@
+%global ini_name 40-swoole.ini
+
+Name: swoole
+Version: 5.1.3
+Release: 1
+Summary: Event-driven asynchronous and concurrent networking engine with high performance for PHP
+License: Apache 2.0
+URL: https://www.swoole.com/
+Source0: https://github.com/swoole/swoole-src/releases/download/v%{version}/%{name}-%{version}.tgz
+Patch0: swoole-5.1.3-fix-brotli-libname.patch
+BuildRequires: php(language) >= 8.0
+BuildRequires: php-cli >= 8.0
+BuildRequires: php-devel
+BuildRequires: openssl-devel >= 1.0.2
+BuildRequires: curl-devel
+BuildRequires: c-ares-devel
+BuildRequires: libnghttp2-devel
+BuildRequires: pkgconfig(libbrotlienc)
+BuildRequires: pkgconfig(libbrotlidec)
+BuildRequires: libpq-devel
+Requires: php(api) = %{php_core_api}
+Requires: php-curl
+
+%description
+Event-driven asynchronous and concurrent networking engine with high performance for PHP.
+ - event-driven
+ - coroutine
+ - asynchronous non-blocking
+ - multi-thread reactor
+ - multi-process worker
+ - multi-protocol
+ - millisecond timer
+ - built-in tcp/http/websocket/http2 server
+ - coroutine tcp/http/websocket client
+ - coroutine mysql client
+ - coroutine redis client
+ - coroutine read/write file system
+ - coroutine dns lookup
+ - support IPv4/IPv6/UnixSocket/TCP/UDP
+ - support SSL/TLS encrypted transmission
+
+%package devel
+Summary: Development files for %{name}
+Requires: %{name} = %{version}
+Requires: php-devel >= 8.0
+
+%description devel
+Development files for %{name}.
+
+%prep
+%autosetup -p1 -n %{name}-%{version}
+
+# Drop in the bit of configuration
+cat << 'EOF' | tee %{ini_name}
+; Enable swoole extension module
+extension = swoole.so
+EOF
+
+%build
+%{_bindir}/phpize
+%configure \
+ --enable-openssl \
+ --with-openssl-dir=%{_prefix} \
+ --enable-brotli \
+ --enable-cares \
+ --enable-swoole-curl \
+ --with-nghttp2-dir=%{_prefix} \
+ --enable-swoole-pgsql
+%make_build
+
+%install
+%make_install INSTALL_ROOT=%{buildroot}
+
+install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
+
+%files
+%license LICENSE
+%{php_inidir}/%{ini_name}
+%{_libdir}/php/modules/swoole.so
+
+%files devel
+%{_includedir}/php/ext/swoole
+
+%changelog
+* Wed Jul 31 2024 Funda Wang <fundawang@yeah.net> - 5.1.3-1
+- update to version 5.1.3
+
+* Mon Aug 21 2023 Funda Wang <fundawang@yeah.net> - 5.0.3-1
+- Import package