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