5 %bcond_without web # make web package
7 # don't build for php53
8 %if 0%{?_pld_builder:1} && "%{?php_suffix}" != "55"
12 %define php_name php%{?php_suffix}
13 %define modname xcache
14 Summary: %{modname} - PHP opcode cacher
15 Summary(pl.UTF-8): %{modname} - buforowanie opcodów PHP
16 Name: %{php_name}-%{modname}
20 Group: Development/Languages/PHP
21 Source0: http://xcache.lighttpd.net/pub/Releases/%{version}/xcache-%{version}.tar.bz2
22 # Source0-md5: e5816d47d52be200b959bf69a673ff74
23 Source1: %{modname}-apache.conf
24 Source2: %{modname}-lighttpd.conf
26 Patch1: ini-settings.patch
27 URL: http://xcache.lighttpd.net/
28 BuildRequires: %{php_name}-devel >= 4:5.2.17-8
29 BuildRequires: rpmbuild(macros) >= 1.344
30 BuildRequires: sed >= 4.0
31 %{?requires_zend_extension}
32 Requires: php(core) >= 5.0.4
33 Requires(triggerpostun): sed >= 4.0
34 Obsoletes: php-xcache < 3.1.0-3
35 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37 %define _webapps /etc/webapps
38 %define _webapp %{modname}
39 %define _sysconfdir %{_webapps}/%{_webapp}
40 %define _appdir %{_datadir}/%{_webapp}
43 XCache is a fast, stable PHP opcode cacher that has been tested and is
44 now running on production servers under high load.
46 %description -l pl.UTF-8
47 XCache to szybkie, stabilne buforowanie opcodów PHP, przetestowane i
48 działające na produkcyjnych serwerach o dużym obciążeniu.
50 %package -n php-xcache-web
51 Summary: WEB interface for xCache
53 Requires: %{name} = %{version}-%{release}
55 Requires: webserver(access)
56 Requires: webserver(php) >= 5.0
57 Obsoletes: php55-xcache-web < 3.1.0-5
58 %if "%{_rpmversion}" >= "5"
62 %description -n php-xcache-web
63 Via this web interface script you can manage and view statistics of
66 More information you can find at %{url}.
69 %setup -q -n %{modname}-%{version}
73 s,@extensiondir@,%{php_extensiondir},
76 mv htdocs/config{.default,}.php
77 mv htdocs/config.example.php config.example.php
78 mv htdocs/cacher/config{.default,}.php
79 mv htdocs/cacher/config.example.php cacher.config.example.php
80 mv htdocs/coverager/config{.default,}.php
81 mv htdocs/coverager/config.example.php coverager.config.example.php
83 %{__rm} htdocs/common/lang/*.po
84 %{__rm} htdocs/coverager/lang/*.po
85 %{__rm} htdocs/cacher/lang/*.po
88 %{__rm} htdocs/diagnosis/lang/zh-tranditional.php
94 --enable-xcache-optimizer \
95 --enable-xcache-coverager
99 rm -rf $RPM_BUILD_ROOT
101 INSTALL_ROOT=$RPM_BUILD_ROOT
103 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
104 cp -p xcache.ini $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
106 # The cache directory where pre-compiled files will reside
107 install -d $RPM_BUILD_ROOT/var/cache/php-%{modname}
110 install -d $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}
111 cp -a htdocs/* $RPM_BUILD_ROOT%{_appdir}
112 %{__rm} $RPM_BUILD_ROOT%{_appdir}/diagnosis/lang/*.po
114 mv $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}/config.php
115 mv $RPM_BUILD_ROOT{%{_appdir}/cacher/config.php,%{_sysconfdir}/cacher.config.php}
116 mv $RPM_BUILD_ROOT{%{_appdir}/coverager/config.php,%{_sysconfdir}/coverager.config.php}
117 ln -s %{_sysconfdir}/config.php $RPM_BUILD_ROOT%{_appdir}/config.php
118 ln -s %{_sysconfdir}/cacher.config.php $RPM_BUILD_ROOT%{_appdir}/cacher/config.php
119 ln -s %{_sysconfdir}/coverager.config.php $RPM_BUILD_ROOT%{_appdir}/coverager/config.php
120 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
121 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
122 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
126 rm -rf $RPM_BUILD_ROOT
129 %php_webserver_restart
132 if [ "$1" = 0 ]; then
133 %php_webserver_restart
136 %triggerpostun -- %{name} < 3.0.0-0.8
137 %{__sed} -i -e 's,zend_extension,extension,' %{php_sysconfdir}/conf.d/%{modname}.ini
139 %triggerin -n php-xcache-web -- apache1 < 1.3.37-3, apache1-base
140 %webapp_register apache %{_webapp}
142 %triggerun -n php-xcache-web -- apache1 < 1.3.37-3, apache1-base
143 %webapp_unregister apache %{_webapp}
145 %triggerin -n php-xcache-web -- apache < 2.2.0, apache-base
146 %webapp_register httpd %{_webapp}
148 %triggerun -n php-xcache-web -- apache < 2.2.0, apache-base
149 %webapp_unregister httpd %{_webapp}
151 %triggerin -n php-xcache-web -- lighttpd
152 %webapp_register lighttpd %{_webapp}
154 %triggerun -n php-xcache-web -- lighttpd
155 %webapp_unregister lighttpd %{_webapp}
158 %defattr(644,root,root,755)
159 %doc AUTHORS README THANKS
160 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/%{modname}.ini
161 %attr(755,root,root) %{php_extensiondir}/%{modname}.so
163 # XXX: what for this dir is used?
164 %dir %attr(775,root,http) /var/cache/php-xcache
167 %files -n php-xcache-web
168 %defattr(644,root,root,755)
169 %doc config*.example.php
170 %dir %attr(750,root,http) %{_sysconfdir}
171 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
172 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
173 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
174 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
175 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cacher.config.php
176 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/coverager.config.php
180 %dir %{_appdir}/common
181 %{_appdir}/common/*.css
182 %{_appdir}/common/*.js
183 %{_appdir}/common/*.php
184 %{_appdir}/common/*.png
185 %dir %{_appdir}/common/lang
186 %{_appdir}/common/lang/en.php
187 %lang(cn) %{_appdir}/common/lang/zh-simplified.php
188 %lang(cn) %{_appdir}/common/lang/zh-traditional.php
190 %dir %{_appdir}/cacher
191 %{_appdir}/cacher/*.css
192 %{_appdir}/cacher/*.php
193 %{_appdir}/cacher/sub
194 %dir %{_appdir}/cacher/lang
195 %{_appdir}/cacher/lang/en.php
196 %lang(zh_CN) %{_appdir}/cacher/lang/zh-simplified.php
197 %lang(zh_CN) %{_appdir}/cacher/lang/zh-traditional.php
199 %dir %{_appdir}/coverager
200 %{_appdir}/coverager/*.css
201 %{_appdir}/coverager/*.php
202 %dir %{_appdir}/coverager/lang
203 %{_appdir}/coverager/lang/en.php
204 %lang(zh_CN) %{_appdir}/coverager/lang/zh-simplified.php
205 %lang(zh_CN) %{_appdir}/coverager/lang/zh-traditional.php
207 %dir %{_appdir}/diagnosis
208 %{_appdir}/diagnosis/*.css
209 %{_appdir}/diagnosis/*.php
210 %dir %{_appdir}/diagnosis/lang
211 %{_appdir}/diagnosis/lang/en.php
212 %lang(zh_CN) %{_appdir}/diagnosis/lang/zh-simplified.php
213 %lang(zh_CN) %{_appdir}/diagnosis/lang/zh-traditional.php