]> git.pld-linux.org Git - packages/php-pecl-memcache.git/blame - php-pecl-memcache.spec
repated failures for tests/029.phpt
[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
3917ea3d 8%include /usr/lib/rpm/macros.php
a9222c27
ER
9Summary: %{modname} - a memcached extension
10Summary(pl.UTF-8): %{modname} - rozszerzenie memcached
3917ea3d 11Name: %{php_name}-pecl-%{modname}
10d2ed2a
ER
12Version: 3.0.9
13Release: 1
d7d5fbe6 14License: PHP 3.01
15f9ce79 15Group: Development/Languages/PHP
10d2ed2a
ER
16#Source0: http://pecl.php.net/get/%{modname}-%{version}.tgz
17Source0: https://github.com/websupport-sk/pecl-memcache/archive/NON_BLOCKING_IO_php7.tar.gz
18# Source0-md5: 7751d8191302a726449d7c6506b8783d
20995d54 19Source1: %{modname}.ini
afdaa3d2
ER
20Source2: %{modname}-apache.conf
21Source3: %{modname}-lighttpd.conf
22Source4: config.php
23Patch0: %{modname}-webapp.patch
8d125064 24Patch1: tests.patch
016f4b1b 25URL: http://pecl.php.net/package/memcache/
3917ea3d 26BuildRequires: %{php_name}-devel >= 3:5.0.0
241a36be 27BuildRequires: %{php_name}-xml
fae887d4 28BuildRequires: php-packagexml2cl
afdaa3d2 29BuildRequires: rpm-php-pearprov >= 4.4.2-11
62a21c7f 30BuildRequires: rpmbuild(macros) >= 1.650
8dfd8797
ER
31%if %{with tests}
32BuildRequires: %{php_name}-cli
af5be609 33BuildRequires: %{php_name}-pcre
8dfd8797 34BuildRequires: %{php_name}-session
ef0230c6 35BuildRequires: %{php_name}-spl
b1a4ab93 36BuildRequires: memcached
8dfd8797 37%endif
0bee29d4 38%{?requires_php_extension}
3917ea3d
ER
39Requires: %{php_name}-session
40Requires: %{php_name}-zlib
afdaa3d2 41Suggests: memcached
bd3aaaff 42Provides: php(memcache) = %{version}
41a892be 43Obsoletes: php-pecl-memcache < 3.0.8-5
15f9ce79
AG
44BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45
afdaa3d2
ER
46%define _webapps /etc/webapps
47%define _webapp %{modname}
48%define _sysconfdir %{_webapps}/%{_webapp}
49%define _appdir %{_datadir}/%{_webapp}
50
51# bad depsolver
52%define _noautopear pear
53
54# put it together for rpmbuild
55%define _noautoreq %{?_noautophp} %{?_noautopear}
56
15f9ce79
AG
57%description
58Memcached is a caching daemon designed especially for dynamic web
59applications to decrease database load by storing objects in memory.
60
61This extension allows you to work with memcached through handy OO and
62procedural interfaces.
63
6dd6de29 64%description -l pl.UTF-8
15f9ce79 65Memcached to zaprojektowany dla dynamicznych aplikacji internetowych
6dd6de29
JR
66daemon cachujący mający za zadanie zmniejszenie obciążenia bazy danych
67przez przechowywanie w pamięci obiektów.
15f9ce79 68
6dd6de29 69To rozszerzenie umożliwia pracę z memcached za pomocą poręcznego
15f9ce79
AG
70zorientowanego obiektowo (oraz przez procedury) interfejsu.
71
afdaa3d2
ER
72%package web
73Summary: Web interface for memcache
74Group: Libraries
09120ee3 75# does not require extension itself
fae887d4 76Requires: php(core) >= %{php_min_version}
3917ea3d
ER
77Requires: php(date)
78Requires: php(gd)
79Requires: php(pcre)
afdaa3d2
ER
80Requires: webapps
81Requires: webserver(php) >= 5.0
3917ea3d
ER
82%if "%{_rpmversion}" >= "5"
83BuildArch: noarch
84%endif
afdaa3d2
ER
85
86%description web
87Via this web interface script you can manage and view statistics of
88memcache.
89
15f9ce79 90%prep
10d2ed2a
ER
91%setup -qc
92mv pecl-%{modname}-*/{.??*,*} .
afdaa3d2 93%patch0 -p1
8d125064 94%patch1 -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]
85fa36ce 137EOF
b1a4ab93 138
15f9ce79 139%build
6c6304c8 140packagexml2cl package.xml > ChangeLog
15f9ce79 141phpize
172c079e
AG
142%configure \
143 --with-zlib-dir=/usr
15f9ce79
AG
144%{__make}
145
8dfd8797
ER
146%if %{with tests}
147# simple module load test
148%{__php} -n -q \
149 -d extension_dir=modules \
af5be609 150 -d extension=%{php_extensiondir}/pcre.so \
ef0230c6 151 -d extension=%{php_extensiondir}/spl.so \
8dfd8797
ER
152 -d extension=%{php_extensiondir}/session.so \
153 -d extension=%{modname}.so \
154 -m > modules.log
155grep %{modname} modules.log
e7368be2
ER
156
157cat <<'EOF' > run-tests.sh
158#!/bin/sh
159export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
160exec %{__make} test \
161 PHP_EXECUTABLE=%{__php} \
af5be609 162 PHP_TEST_SHARED_SYSTEM_EXTENSIONS="pcre spl session" \
e7368be2
ER
163 RUN_TESTS_SETTINGS="-q $*"
164EOF
165chmod +x run-tests.sh
166
b1a4ab93
ER
167# Launch the Memcached service and stop it on exit
168%{_sbindir}/memcached -p 11211 -U 11211 -d -P $PWD/memcached.pid
169trap 'kill $(cat memcached.pid)' EXIT INT
170
e7368be2 171./run-tests.sh
8dfd8797
ER
172%endif
173
15f9ce79
AG
174%install
175rm -rf $RPM_BUILD_ROOT
a9222c27 176install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}
20995d54
ER
177install -p modules/%{modname}.so $RPM_BUILD_ROOT%{php_extensiondir}
178# we use "session_" prefix in inifile to get loader *after* session extension
10d2ed2a
ER
179cp -p %{SOURCE1} $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
180cp -p example.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
afdaa3d2
ER
181
182install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}}
10d2ed2a
ER
183cp -p memcache.php $RPM_BUILD_ROOT%{_appdir}
184cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
185cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
186cp -p $RPM_BUILD_ROOT%{_sysconfdir}/{apache,httpd}.conf
187cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
15f9ce79
AG
188
189%clean
190rm -rf $RPM_BUILD_ROOT
191
192%post
86295f4f 193%php_webserver_restart
15f9ce79 194
0bee29d4
ER
195%postun
196if [ "$1" = 0 ]; then
86295f4f 197 %php_webserver_restart
15f9ce79
AG
198fi
199
c69936a3
ER
200%triggerpostun -- %{name} < 3.0.4-2
201if [ -f %{php_sysconfdir}/conf.d/%{modname}.ini.rpmsave ]; then
202 echo >&2 "Restoring old config: %{modname}.ini.rpmsave -> session_%{modname}.ini in %{php_sysconfdir}/conf.d"
203 cp -f %{php_sysconfdir}/conf.d/session_%{modname}.ini{,.rpmnew}
204 mv -f %{php_sysconfdir}/conf.d/{%{modname}.ini.rpmsave,session_%{modname}.ini}
205 %php_webserver_restart
206fi
207
afdaa3d2
ER
208%triggerin web -- apache1 < 1.3.37-3, apache1-base
209%webapp_register apache %{_webapp}
210
211%triggerun web -- apache1 < 1.3.37-3, apache1-base
212%webapp_unregister apache %{_webapp}
213
fbc0c377 214%triggerin web -- apache < 2.2.0, apache-base
afdaa3d2
ER
215%webapp_register httpd %{_webapp}
216
fbc0c377 217%triggerun web -- apache < 2.2.0, apache-base
afdaa3d2
ER
218%webapp_unregister httpd %{_webapp}
219
220%triggerin web -- lighttpd
221%webapp_register lighttpd %{_webapp}
222
223%triggerun web -- lighttpd
224%webapp_unregister lighttpd %{_webapp}
225
15f9ce79
AG
226%files
227%defattr(644,root,root,755)
6c6304c8 228%doc CREDITS README ChangeLog
c69936a3 229%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/session_%{modname}.ini
a9222c27
ER
230%attr(755,root,root) %{php_extensiondir}/%{modname}.so
231%{_examplesdir}/%{name}-%{version}
afdaa3d2
ER
232
233%files web
234%defattr(644,root,root,755)
235%dir %attr(750,root,http) %{_sysconfdir}
236%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
237%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
238%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
1ec0934f 239%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
afdaa3d2 240%{_appdir}
This page took 0.063742 seconds and 4 git commands to generate.