- unconditional noarch subpackages
[packages/php-xcache.git] / php-xcache.spec
1 # TODO
2 # - verify %lang codes
3 #
4 # Conditional build:
5 %bcond_without  web             # make web package
6
7 # build "web" only for 5.5 version
8 %if 0%{?_pld_builder:1} && "%{?php_suffix}" != "55"
9 %undefine       with_web
10 %endif
11
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}
17 # 3.2.0 leaks fds, use xcache-3.1 branch for now
18 # http://xcache.lighttpd.net/ticket/363
19 Blocker
20 Version:        3.2.0
21 Release:        0.1
22 License:        BSD
23 Group:          Development/Languages/PHP
24 Source0:        http://xcache.lighttpd.net/pub/Releases/%{version}/xcache-%{version}.tar.bz2
25 # Source0-md5:  3655bd20483dc23d24f87f9dc924a62e
26 Source1:        %{modname}-apache.conf
27 Source2:        %{modname}-lighttpd.conf
28 Patch0:         config.patch
29 Patch1:         ini-settings.patch
30 URL:            http://xcache.lighttpd.net/
31 BuildRequires:  %{php_name}-devel >= 4:5.2.17-8
32 BuildRequires:  rpmbuild(macros) >= 1.344
33 BuildRequires:  sed >= 4.0
34 %{?requires_zend_extension}
35 Requires:       php(core) >= 5.0.4
36 Requires(triggerpostun):        sed >= 4.0
37 Provides:       php(xcache) = %{version}
38 Obsoletes:      php-xcache < 3.1.0-3
39 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40
41 %define         _webapps        /etc/webapps
42 %define         _webapp         %{modname}
43 %define         _sysconfdir     %{_webapps}/%{_webapp}
44 %define         _appdir         %{_datadir}/%{_webapp}
45
46 %description
47 XCache is a fast, stable PHP opcode cacher that has been tested and is
48 now running on production servers under high load.
49
50 %description -l pl.UTF-8
51 XCache to szybkie, stabilne buforowanie opcodów PHP, przetestowane i
52 działające na produkcyjnych serwerach o dużym obciążeniu.
53
54 %package -n php-xcache-web
55 Summary:        WEB interface for xCache
56 Group:          Libraries
57 Requires:       %{name} = %{version}-%{release}
58 Requires:       webapps
59 Requires:       webserver(access)
60 Requires:       webserver(php) >= 5.0
61 Obsoletes:      php55-xcache-web < 3.1.0-5
62 BuildArch:      noarch
63
64 %description -n php-xcache-web
65 Via this web interface script you can manage and view statistics of
66 xCache.
67
68 More information you can find at %{url}.
69
70 %prep
71 %setup -q -n %{modname}-%{version}
72 %patch0 -p1
73 %patch1 -p1
74 %{__sed} -i.bak -e '
75         s,@extensiondir@,%{php_extensiondir},
76 ' xcache.ini
77
78 mv htdocs/config{.default,}.php
79 mv htdocs/config.example.php config.example.php
80 mv htdocs/cacher/config{.default,}.php
81 mv htdocs/cacher/config.example.php cacher.config.example.php
82 mv htdocs/coverager/config{.default,}.php
83 mv htdocs/coverager/config.example.php coverager.config.example.php
84
85 %{__rm} htdocs/common/lang/*.po
86 %{__rm} htdocs/coverager/lang/*.po
87 %{__rm} htdocs/cacher/lang/*.po
88
89 # wtf?
90 %{__rm} htdocs/diagnosis/lang/zh-tranditional.php
91
92 %build
93 phpize
94 %configure \
95         --enable-xcache \
96         --enable-xcache-optimizer \
97         --enable-xcache-coverager
98 %{__make}
99
100 %install
101 rm -rf $RPM_BUILD_ROOT
102 %{__make} install \
103         INSTALL_ROOT=$RPM_BUILD_ROOT
104
105 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
106 cp -p xcache.ini $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
107
108 # The cache directory where pre-compiled files will reside
109 install -d $RPM_BUILD_ROOT/var/cache/php-%{modname}
110
111 %if %{with web}
112 install -d $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}
113 cp -a htdocs/* $RPM_BUILD_ROOT%{_appdir}
114 %{__rm} $RPM_BUILD_ROOT%{_appdir}/diagnosis/lang/*.po
115
116 mv $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}/config.php
117 mv $RPM_BUILD_ROOT{%{_appdir}/cacher/config.php,%{_sysconfdir}/cacher.config.php}
118 mv $RPM_BUILD_ROOT{%{_appdir}/coverager/config.php,%{_sysconfdir}/coverager.config.php}
119 ln -s %{_sysconfdir}/config.php $RPM_BUILD_ROOT%{_appdir}/config.php
120 ln -s %{_sysconfdir}/cacher.config.php $RPM_BUILD_ROOT%{_appdir}/cacher/config.php
121 ln -s %{_sysconfdir}/coverager.config.php $RPM_BUILD_ROOT%{_appdir}/coverager/config.php
122 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
123 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
124 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
125 %endif
126
127 %clean
128 rm -rf $RPM_BUILD_ROOT
129
130 %post
131 %php_webserver_restart
132
133 %postun
134 if [ "$1" = 0 ]; then
135         %php_webserver_restart
136 fi
137
138 %triggerpostun -- %{name} < 3.0.0-0.8
139 %{__sed} -i -e 's,zend_extension,extension,' %{php_sysconfdir}/conf.d/%{modname}.ini
140
141 %triggerin -n php-xcache-web -- apache1 < 1.3.37-3, apache1-base
142 %webapp_register apache %{_webapp}
143
144 %triggerun -n php-xcache-web -- apache1 < 1.3.37-3, apache1-base
145 %webapp_unregister apache %{_webapp}
146
147 %triggerin -n php-xcache-web -- apache < 2.2.0, apache-base
148 %webapp_register httpd %{_webapp}
149
150 %triggerun -n php-xcache-web -- apache < 2.2.0, apache-base
151 %webapp_unregister httpd %{_webapp}
152
153 %triggerin -n php-xcache-web -- lighttpd
154 %webapp_register lighttpd %{_webapp}
155
156 %triggerun -n php-xcache-web -- lighttpd
157 %webapp_unregister lighttpd %{_webapp}
158
159 %files
160 %defattr(644,root,root,755)
161 %doc AUTHORS README THANKS
162 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/%{modname}.ini
163 %attr(755,root,root) %{php_extensiondir}/%{modname}.so
164
165 # XXX: what for this dir is used?
166 %dir %attr(775,root,http) /var/cache/php-xcache
167
168 %if %{with web}
169 %files -n php-xcache-web
170 %defattr(644,root,root,755)
171 %doc config*.example.php
172 %dir %attr(750,root,http) %{_sysconfdir}
173 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
174 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
175 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
176 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
177 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cacher.config.php
178 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/coverager.config.php
179 %dir %{_appdir}
180 %{_appdir}/*.php
181
182 %dir %{_appdir}/common
183 %{_appdir}/common/*.css
184 %{_appdir}/common/*.js
185 %{_appdir}/common/*.php
186 %{_appdir}/common/*.png
187 %dir %{_appdir}/common/lang
188 %{_appdir}/common/lang/en.php
189 %lang(cn) %{_appdir}/common/lang/zh-simplified.php
190 %lang(cn) %{_appdir}/common/lang/zh-traditional.php
191
192 %dir %{_appdir}/cacher
193 %{_appdir}/cacher/*.css
194 %{_appdir}/cacher/*.php
195 %{_appdir}/cacher/sub
196 %dir %{_appdir}/cacher/lang
197 %{_appdir}/cacher/lang/en.php
198 %lang(zh_CN) %{_appdir}/cacher/lang/zh-simplified.php
199 %lang(zh_CN) %{_appdir}/cacher/lang/zh-traditional.php
200
201 %dir %{_appdir}/coverager
202 %{_appdir}/coverager/*.css
203 %{_appdir}/coverager/*.php
204 %dir %{_appdir}/coverager/lang
205 %{_appdir}/coverager/lang/en.php
206 %lang(zh_CN) %{_appdir}/coverager/lang/zh-simplified.php
207 %lang(zh_CN) %{_appdir}/coverager/lang/zh-traditional.php
208
209 %dir %{_appdir}/diagnosis
210 %{_appdir}/diagnosis/*.css
211 %{_appdir}/diagnosis/*.php
212 %dir %{_appdir}/diagnosis/lang
213 %{_appdir}/diagnosis/lang/en.php
214 %lang(zh_CN) %{_appdir}/diagnosis/lang/zh-simplified.php
215 %lang(zh_CN) %{_appdir}/diagnosis/lang/zh-traditional.php
216 %endif
This page took 0.167794 seconds and 4 git commands to generate.