3 %bcond_without tests # build without tests
5 %define php_name php%{?php_suffix}
6 %define modname memcache
7 %define php_min_version 5.0.0
8 %include /usr/lib/rpm/macros.php
9 Summary: %{modname} - a memcached extension
10 Summary(pl.UTF-8): %{modname} - rozszerzenie memcached
11 Name: %{php_name}-pecl-%{modname}
15 Group: Development/Languages/PHP
16 #Source0: http://pecl.php.net/get/%{modname}-%{version}.tgz
17 Source0: https://github.com/websupport-sk/pecl-memcache/archive/NON_BLOCKING_IO_php7.tar.gz
18 # Source0-md5: 7751d8191302a726449d7c6506b8783d
19 Source1: %{modname}.ini
20 Source2: %{modname}-apache.conf
21 Source3: %{modname}-lighttpd.conf
23 Patch0: %{modname}-webapp.patch
24 URL: http://pecl.php.net/package/memcache/
25 BuildRequires: %{php_name}-devel >= 3:5.0.0
26 BuildRequires: %{php_name}-xml
27 BuildRequires: php-packagexml2cl
28 BuildRequires: rpm-php-pearprov >= 4.4.2-11
29 BuildRequires: rpmbuild(macros) >= 1.650
31 BuildRequires: %{php_name}-cli
32 BuildRequires: %{php_name}-session
34 %{?requires_php_extension}
35 Requires: %{php_name}-session
36 Requires: %{php_name}-zlib
38 Provides: php(memcache) = %{version}
39 Obsoletes: php-pecl-memcache < 3.0.8-5
40 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 %define _webapps /etc/webapps
43 %define _webapp %{modname}
44 %define _sysconfdir %{_webapps}/%{_webapp}
45 %define _appdir %{_datadir}/%{_webapp}
48 %define _noautopear pear
50 # put it together for rpmbuild
51 %define _noautoreq %{?_noautophp} %{?_noautopear}
54 Memcached is a caching daemon designed especially for dynamic web
55 applications to decrease database load by storing objects in memory.
57 This extension allows you to work with memcached through handy OO and
58 procedural interfaces.
60 %description -l pl.UTF-8
61 Memcached to zaprojektowany dla dynamicznych aplikacji internetowych
62 daemon cachujący mający za zadanie zmniejszenie obciążenia bazy danych
63 przez przechowywanie w pamięci obiektów.
65 To rozszerzenie umożliwia pracę z memcached za pomocą poręcznego
66 zorientowanego obiektowo (oraz przez procedury) interfejsu.
69 Summary: Web interface for memcache
71 # does not require extension itself
72 Requires: php(core) >= %{php_min_version}
77 Requires: webserver(php) >= 5.0
78 %if "%{_rpmversion}" >= "5"
83 Via this web interface script you can manage and view statistics of
88 mv pecl-%{modname}-*/{.??*,*} .
92 packagexml2cl package.xml > ChangeLog
99 # simple module load test
101 -d extension_dir=modules \
102 -d extension=%{php_extensiondir}/session.so \
103 -d extension=%{modname}.so \
105 grep %{modname} modules.log
109 rm -rf $RPM_BUILD_ROOT
110 install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}
111 install -p modules/%{modname}.so $RPM_BUILD_ROOT%{php_extensiondir}
112 # we use "session_" prefix in inifile to get loader *after* session extension
113 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
114 cp -p example.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
116 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}}
117 cp -p memcache.php $RPM_BUILD_ROOT%{_appdir}
118 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
119 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
120 cp -p $RPM_BUILD_ROOT%{_sysconfdir}/{apache,httpd}.conf
121 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
124 rm -rf $RPM_BUILD_ROOT
127 %php_webserver_restart
130 if [ "$1" = 0 ]; then
131 %php_webserver_restart
134 %triggerpostun -- %{name} < 3.0.4-2
135 if [ -f %{php_sysconfdir}/conf.d/%{modname}.ini.rpmsave ]; then
136 echo >&2 "Restoring old config: %{modname}.ini.rpmsave -> session_%{modname}.ini in %{php_sysconfdir}/conf.d"
137 cp -f %{php_sysconfdir}/conf.d/session_%{modname}.ini{,.rpmnew}
138 mv -f %{php_sysconfdir}/conf.d/{%{modname}.ini.rpmsave,session_%{modname}.ini}
139 %php_webserver_restart
142 %triggerin web -- apache1 < 1.3.37-3, apache1-base
143 %webapp_register apache %{_webapp}
145 %triggerun web -- apache1 < 1.3.37-3, apache1-base
146 %webapp_unregister apache %{_webapp}
148 %triggerin web -- apache < 2.2.0, apache-base
149 %webapp_register httpd %{_webapp}
151 %triggerun web -- apache < 2.2.0, apache-base
152 %webapp_unregister httpd %{_webapp}
154 %triggerin web -- lighttpd
155 %webapp_register lighttpd %{_webapp}
157 %triggerun web -- lighttpd
158 %webapp_unregister lighttpd %{_webapp}
161 %defattr(644,root,root,755)
162 %doc CREDITS README ChangeLog
163 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/session_%{modname}.ini
164 %attr(755,root,root) %{php_extensiondir}/%{modname}.so
165 %{_examplesdir}/%{name}-%{version}
168 %defattr(644,root,root,755)
169 %dir %attr(750,root,http) %{_sysconfdir}
170 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
171 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
172 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
173 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php