]> git.pld-linux.org Git - packages/php-pecl-memcache.git/blame - php-pecl-memcache.spec
tests/bug73539.phpt fails on most versions on builders
[packages/php-pecl-memcache.git] / php-pecl-memcache.spec
CommitLineData
8dfd8797
ER
1#
2# Conditional build:
3%bcond_without tests # build without tests
4
3917ea3d 5%define php_name php%{?php_suffix}
a9222c27 6%define modname memcache
afdaa3d2 7%define php_min_version 5.0.0
7362daf0 8%define commit e702b5f91
3917ea3d 9%include /usr/lib/rpm/macros.php
a9222c27
ER
10Summary: %{modname} - a memcached extension
11Summary(pl.UTF-8): %{modname} - rozszerzenie memcached
3917ea3d 12Name: %{php_name}-pecl-%{modname}
10d2ed2a 13Version: 3.0.9
7362daf0 14Release: 2
d7d5fbe6 15License: PHP 3.01
15f9ce79 16Group: Development/Languages/PHP
10d2ed2a 17#Source0: http://pecl.php.net/get/%{modname}-%{version}.tgz
7362daf0
ER
18# https://github.com/websupport-sk/pecl-memcache/commits/NON_BLOCKING_IO_php7
19Source0: https://github.com/websupport-sk/pecl-memcache/archive/%{commit}/%{modname}-%{version}-%{commit}.tar.gz
20# Source0-md5: 945e6a30b3cac160abf9b6d103c5676b
20995d54 21Source1: %{modname}.ini
afdaa3d2
ER
22Source2: %{modname}-apache.conf
23Source3: %{modname}-lighttpd.conf
24Source4: config.php
25Patch0: %{modname}-webapp.patch
016f4b1b 26URL: http://pecl.php.net/package/memcache/
3917ea3d 27BuildRequires: %{php_name}-devel >= 3:5.0.0
241a36be 28BuildRequires: %{php_name}-xml
fae887d4 29BuildRequires: php-packagexml2cl
afdaa3d2 30BuildRequires: rpm-php-pearprov >= 4.4.2-11
62a21c7f 31BuildRequires: rpmbuild(macros) >= 1.650
8dfd8797
ER
32%if %{with tests}
33BuildRequires: %{php_name}-cli
af5be609 34BuildRequires: %{php_name}-pcre
8dfd8797 35BuildRequires: %{php_name}-session
ef0230c6 36BuildRequires: %{php_name}-spl
b1a4ab93 37BuildRequires: memcached
8dfd8797 38%endif
0bee29d4 39%{?requires_php_extension}
3917ea3d
ER
40Requires: %{php_name}-session
41Requires: %{php_name}-zlib
afdaa3d2 42Suggests: memcached
bd3aaaff 43Provides: php(memcache) = %{version}
41a892be 44Obsoletes: php-pecl-memcache < 3.0.8-5
15f9ce79
AG
45BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46
afdaa3d2
ER
47%define _webapps /etc/webapps
48%define _webapp %{modname}
49%define _sysconfdir %{_webapps}/%{_webapp}
50%define _appdir %{_datadir}/%{_webapp}
51
52# bad depsolver
53%define _noautopear pear
54
55# put it together for rpmbuild
56%define _noautoreq %{?_noautophp} %{?_noautopear}
57
15f9ce79
AG
58%description
59Memcached is a caching daemon designed especially for dynamic web
60applications to decrease database load by storing objects in memory.
61
62This extension allows you to work with memcached through handy OO and
63procedural interfaces.
64
6dd6de29 65%description -l pl.UTF-8
15f9ce79 66Memcached to zaprojektowany dla dynamicznych aplikacji internetowych
6dd6de29
JR
67daemon cachujący mający za zadanie zmniejszenie obciążenia bazy danych
68przez przechowywanie w pamięci obiektów.
15f9ce79 69
6dd6de29 70To rozszerzenie umożliwia pracę z memcached za pomocą poręcznego
15f9ce79
AG
71zorientowanego obiektowo (oraz przez procedury) interfejsu.
72
afdaa3d2
ER
73%package web
74Summary: Web interface for memcache
75Group: Libraries
09120ee3 76# does not require extension itself
fae887d4 77Requires: php(core) >= %{php_min_version}
3917ea3d
ER
78Requires: php(date)
79Requires: php(gd)
80Requires: php(pcre)
afdaa3d2
ER
81Requires: webapps
82Requires: webserver(php) >= 5.0
3917ea3d
ER
83%if "%{_rpmversion}" >= "5"
84BuildArch: noarch
85%endif
afdaa3d2
ER
86
87%description web
88Via this web interface script you can manage and view statistics of
89memcache.
90
15f9ce79 91%prep
10d2ed2a
ER
92%setup -qc
93mv pecl-%{modname}-*/{.??*,*} .
afdaa3d2 94%patch0 -p1
15f9ce79 95
b1a4ab93
ER
96# locks up on carme, likely due udp very long timeout
97rm tests/039.phpt
85fa36ce
ER
98rm tests/041.phpt
99rm tests/042.phpt
100
101# skip failed tests
102xfail() {
103 set +x
104 while read s; do
105 t=$(echo "$s" | sed -rne 's/.+\[(.+)\]/\1/p')
106
107 test -f "$t"
108 echo >&2 "XFAIL: $s"
109 cat >> $t <<-EOF
110
111 --XFAIL--
112 Skip
113 EOF
114 done
115}
116
117xfail <<'EOF'
118memcache->addServer() [tests/019.phpt]
119memcache->set()/memcache->get() with multiple keys and load balancing [tests/020.phpt]
120memcache->getExtendedStats() [tests/022.phpt]
121memcache_get_extended_stats() [tests/022a.phpt]
122memcache->delete() with load balancing [tests/023.phpt]
123memcache->increment() with load balancing [tests/025.phpt]
124memcache->delete() with load balancing [tests/026.phpt]
125memcache->addServer() adding server in failed mode [tests/031.phpt]
126memcache->getServerStatus(), memcache->setServerParams() [tests/032.phpt]
127memcache::connect() with unix domain socket [tests/035.phpt]
128memcache->get() over UDP [tests/038.phpt]
129memcache->increment()/decrement() with multiple keys [tests/040.phpt]
130ini_set('memcache.redundancy') [tests/043.phpt]
131ini_set('memcache.session_redundancy') [tests/044.phpt]
132hash strategies and functions [tests/046.phpt]
133ini_set('session.save_handler') with unix domain socket [tests/053.phpt]
134FLAKY: memcache->addServer() with microsecond timeout [tests/056.phpt]
d41cf5ce 135ini_set('session.save_handler') [tests/036.phpt]
c6406d16 136ini_set("memcache.allow_failover") [tests/029.phpt]
b5fd9090
ER
137%if "%{php_major_version}.%{php_minor_version}" >= "7.1"
138strange keys [tests/005.phpt]
139%endif
ea2e044e 140memcache multi host save path function [tests/bug73539.phpt]
85fa36ce 141EOF
b1a4ab93 142
15f9ce79 143%build
6c6304c8 144packagexml2cl package.xml > ChangeLog
15f9ce79 145phpize
172c079e
AG
146%configure \
147 --with-zlib-dir=/usr
15f9ce79
AG
148%{__make}
149
8dfd8797
ER
150%if %{with tests}
151# simple module load test
152%{__php} -n -q \
153 -d extension_dir=modules \
af5be609 154 -d extension=%{php_extensiondir}/pcre.so \
ef0230c6 155 -d extension=%{php_extensiondir}/spl.so \
8dfd8797
ER
156 -d extension=%{php_extensiondir}/session.so \
157 -d extension=%{modname}.so \
158 -m > modules.log
159grep %{modname} modules.log
e7368be2
ER
160
161cat <<'EOF' > run-tests.sh
162#!/bin/sh
163export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
164exec %{__make} test \
165 PHP_EXECUTABLE=%{__php} \
af5be609 166 PHP_TEST_SHARED_SYSTEM_EXTENSIONS="pcre spl session" \
e7368be2
ER
167 RUN_TESTS_SETTINGS="-q $*"
168EOF
169chmod +x run-tests.sh
170
b1a4ab93
ER
171# Launch the Memcached service and stop it on exit
172%{_sbindir}/memcached -p 11211 -U 11211 -d -P $PWD/memcached.pid
173trap 'kill $(cat memcached.pid)' EXIT INT
174
e7368be2 175./run-tests.sh
8dfd8797
ER
176%endif
177
15f9ce79
AG
178%install
179rm -rf $RPM_BUILD_ROOT
a9222c27 180install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}
20995d54
ER
181install -p modules/%{modname}.so $RPM_BUILD_ROOT%{php_extensiondir}
182# we use "session_" prefix in inifile to get loader *after* session extension
10d2ed2a
ER
183cp -p %{SOURCE1} $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
184cp -p example.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
afdaa3d2
ER
185
186install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}}
10d2ed2a
ER
187cp -p memcache.php $RPM_BUILD_ROOT%{_appdir}
188cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
189cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
190cp -p $RPM_BUILD_ROOT%{_sysconfdir}/{apache,httpd}.conf
191cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
15f9ce79
AG
192
193%clean
194rm -rf $RPM_BUILD_ROOT
195
196%post
86295f4f 197%php_webserver_restart
15f9ce79 198
0bee29d4
ER
199%postun
200if [ "$1" = 0 ]; then
86295f4f 201 %php_webserver_restart
15f9ce79
AG
202fi
203
c69936a3
ER
204%triggerpostun -- %{name} < 3.0.4-2
205if [ -f %{php_sysconfdir}/conf.d/%{modname}.ini.rpmsave ]; then
206 echo >&2 "Restoring old config: %{modname}.ini.rpmsave -> session_%{modname}.ini in %{php_sysconfdir}/conf.d"
207 cp -f %{php_sysconfdir}/conf.d/session_%{modname}.ini{,.rpmnew}
208 mv -f %{php_sysconfdir}/conf.d/{%{modname}.ini.rpmsave,session_%{modname}.ini}
209 %php_webserver_restart
210fi
211
afdaa3d2
ER
212%triggerin web -- apache1 < 1.3.37-3, apache1-base
213%webapp_register apache %{_webapp}
214
215%triggerun web -- apache1 < 1.3.37-3, apache1-base
216%webapp_unregister apache %{_webapp}
217
fbc0c377 218%triggerin web -- apache < 2.2.0, apache-base
afdaa3d2
ER
219%webapp_register httpd %{_webapp}
220
fbc0c377 221%triggerun web -- apache < 2.2.0, apache-base
afdaa3d2
ER
222%webapp_unregister httpd %{_webapp}
223
224%triggerin web -- lighttpd
225%webapp_register lighttpd %{_webapp}
226
227%triggerun web -- lighttpd
228%webapp_unregister lighttpd %{_webapp}
229
15f9ce79
AG
230%files
231%defattr(644,root,root,755)
6c6304c8 232%doc CREDITS README ChangeLog
c69936a3 233%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/session_%{modname}.ini
a9222c27
ER
234%attr(755,root,root) %{php_extensiondir}/%{modname}.so
235%{_examplesdir}/%{name}-%{version}
afdaa3d2
ER
236
237%files web
238%defattr(644,root,root,755)
239%dir %attr(750,root,http) %{_sysconfdir}
240%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
241%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
242%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
1ec0934f 243%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
afdaa3d2 244%{_appdir}
This page took 0.119513 seconds and 4 git commands to generate.