]> git.pld-linux.org Git - packages/php-pecl-memcache.git/blob - php-pecl-memcache.spec
e2f6502f1c4188c2c87e4bd7349f1d4dfc2b7f9f
[packages/php-pecl-memcache.git] / php-pecl-memcache.spec
1 #
2 # Conditional build:
3 %bcond_without  tests           # build without tests
4
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}
12 Version:        3.0.9
13 Release:        1
14 License:        PHP 3.01
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
22 Source4:        config.php
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
30 %if %{with tests}
31 BuildRequires:  %{php_name}-cli
32 BuildRequires:  %{php_name}-session
33 BuildRequires:  %{php_name}-spl
34 %endif
35 %{?requires_php_extension}
36 Requires:       %{php_name}-session
37 Requires:       %{php_name}-zlib
38 Suggests:       memcached
39 Provides:       php(memcache) = %{version}
40 Obsoletes:      php-pecl-memcache < 3.0.8-5
41 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43 %define         _webapps        /etc/webapps
44 %define         _webapp         %{modname}
45 %define         _sysconfdir     %{_webapps}/%{_webapp}
46 %define         _appdir         %{_datadir}/%{_webapp}
47
48 # bad depsolver
49 %define         _noautopear     pear
50
51 # put it together for rpmbuild
52 %define         _noautoreq      %{?_noautophp} %{?_noautopear}
53
54 %description
55 Memcached is a caching daemon designed especially for dynamic web
56 applications to decrease database load by storing objects in memory.
57
58 This extension allows you to work with memcached through handy OO and
59 procedural interfaces.
60
61 %description -l pl.UTF-8
62 Memcached to zaprojektowany dla dynamicznych aplikacji internetowych
63 daemon cachujący mający za zadanie zmniejszenie obciążenia bazy danych
64 przez przechowywanie w pamięci obiektów.
65
66 To rozszerzenie umożliwia pracę z memcached za pomocą poręcznego
67 zorientowanego obiektowo (oraz przez procedury) interfejsu.
68
69 %package web
70 Summary:        Web interface for memcache
71 Group:          Libraries
72 # does not require extension itself
73 Requires:       php(core) >= %{php_min_version}
74 Requires:       php(date)
75 Requires:       php(gd)
76 Requires:       php(pcre)
77 Requires:       webapps
78 Requires:       webserver(php) >= 5.0
79 %if "%{_rpmversion}" >= "5"
80 BuildArch:      noarch
81 %endif
82
83 %description web
84 Via this web interface script you can manage and view statistics of
85 memcache.
86
87 %prep
88 %setup -qc
89 mv pecl-%{modname}-*/{.??*,*} .
90 %patch0 -p1
91
92 %build
93 packagexml2cl package.xml > ChangeLog
94 phpize
95 %configure \
96         --with-zlib-dir=/usr
97 %{__make}
98
99 %if %{with tests}
100 # simple module load test
101 %{__php} -n -q \
102         -d extension_dir=modules \
103         -d extension=%{php_extensiondir}/spl.so \
104         -d extension=%{php_extensiondir}/session.so \
105         -d extension=%{modname}.so \
106         -m > modules.log
107 grep %{modname} modules.log
108
109 cat <<'EOF' > run-tests.sh
110 #!/bin/sh
111 export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
112 exec %{__make} test \
113         PHP_EXECUTABLE=%{__php} \
114         PHP_TEST_SHARED_SYSTEM_EXTENSIONS="spl session" \
115         RUN_TESTS_SETTINGS="-q $*"
116 EOF
117 chmod +x run-tests.sh
118
119 ./run-tests.sh
120 %endif
121
122 %install
123 rm -rf $RPM_BUILD_ROOT
124 install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}
125 install -p modules/%{modname}.so $RPM_BUILD_ROOT%{php_extensiondir}
126 # we use "session_" prefix in inifile to get loader *after* session extension
127 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
128 cp -p example.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
129
130 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}}
131 cp -p memcache.php $RPM_BUILD_ROOT%{_appdir}
132 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
133 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
134 cp -p $RPM_BUILD_ROOT%{_sysconfdir}/{apache,httpd}.conf
135 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
136
137 %clean
138 rm -rf $RPM_BUILD_ROOT
139
140 %post
141 %php_webserver_restart
142
143 %postun
144 if [ "$1" = 0 ]; then
145         %php_webserver_restart
146 fi
147
148 %triggerpostun -- %{name} < 3.0.4-2
149 if [ -f %{php_sysconfdir}/conf.d/%{modname}.ini.rpmsave ]; then
150         echo >&2 "Restoring old config: %{modname}.ini.rpmsave -> session_%{modname}.ini in %{php_sysconfdir}/conf.d"
151         cp -f %{php_sysconfdir}/conf.d/session_%{modname}.ini{,.rpmnew}
152         mv -f %{php_sysconfdir}/conf.d/{%{modname}.ini.rpmsave,session_%{modname}.ini}
153         %php_webserver_restart
154 fi
155
156 %triggerin web -- apache1 < 1.3.37-3, apache1-base
157 %webapp_register apache %{_webapp}
158
159 %triggerun web -- apache1 < 1.3.37-3, apache1-base
160 %webapp_unregister apache %{_webapp}
161
162 %triggerin web -- apache < 2.2.0, apache-base
163 %webapp_register httpd %{_webapp}
164
165 %triggerun web -- apache < 2.2.0, apache-base
166 %webapp_unregister httpd %{_webapp}
167
168 %triggerin web -- lighttpd
169 %webapp_register lighttpd %{_webapp}
170
171 %triggerun web -- lighttpd
172 %webapp_unregister lighttpd %{_webapp}
173
174 %files
175 %defattr(644,root,root,755)
176 %doc CREDITS README ChangeLog
177 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/session_%{modname}.ini
178 %attr(755,root,root) %{php_extensiondir}/%{modname}.so
179 %{_examplesdir}/%{name}-%{version}
180
181 %files web
182 %defattr(644,root,root,755)
183 %dir %attr(750,root,http) %{_sysconfdir}
184 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
185 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
186 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
187 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
188 %{_appdir}
This page took 0.621001 seconds and 2 git commands to generate.