-%define _modname memcache
-%define _status stable
-
-Summary: %{_modname} - a memcached extension
-Summary(pl): %{_modname} - rozszerzenie memcached
-Name: php-pecl-%{_modname}
-Version: 1.1
-Release: 1
-License: PHP 2.02
+%define modname memcache
+Summary: %{modname} - a memcached extension
+Summary(pl.UTF-8): %{modname} - rozszerzenie memcached
+Name: php-pecl-%{modname}
+Version: 3.0.4
+Release: 3
+License: PHP 3.01
Group: Development/Languages/PHP
-Source0: http://pecl.php.net/get/%{_modname}-%{version}.tgz
-# Source0-md5: 6aa3d2b08d7fcd89b94165cf0370d79e
-URL: http://pecl.php.net/package/memcached/
-BuildRequires: libtool
-BuildRequires: php-devel
-Requires: php-common
-Obsoletes: php-pear-%{_modname}
+Source0: http://pecl.php.net/get/%{modname}-%{version}.tgz
+# Source0-md5: 07933ce0191274201ea6905cd509c5b0
+URL: http://pecl.php.net/package/memcache/
+BuildRequires: php-devel >= 3:5.0.0
+BuildRequires: rpmbuild(macros) >= 1.344
+%{?requires_php_extension}
+Requires: php-common >= 4:5.0.4
+Requires: php-session
+Requires: php-zlib
+#Suggests: memcached
+Obsoletes: php-pear-%{modname}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _sysconfdir /etc/php
-%define extensionsdir %{_libdir}/php
-
%description
Memcached is a caching daemon designed especially for dynamic web
applications to decrease database load by storing objects in memory.
This extension allows you to work with memcached through handy OO and
procedural interfaces.
-In PECL status of this extension is: %{_status}.
-
-%description -l pl
+%description -l pl.UTF-8
Memcached to zaprojektowany dla dynamicznych aplikacji internetowych
-daemon cachuj±cy maj±cy za zadanie zmniejszenie obci±zenia bazy danych
-przez przechowywanie w pamiêci obiektów.
+daemon cachujący mający za zadanie zmniejszenie obciążenia bazy danych
+przez przechowywanie w pamięci obiektów.
-To rozszerzenie umo¿liwia pracê z memcached za pomoc± porêcznego
+To rozszerzenie umożliwia pracę z memcached za pomocą poręcznego
zorientowanego obiektowo (oraz przez procedury) interfejsu.
-To rozszerzenie ma w PECL status: %{_status}.
-
%prep
%setup -q -c
+mv %{modname}-%{version}/* .
%build
-cd %{_modname}-%{version}
phpize
-%configure
+%configure \
+ --with-zlib-dir=/usr
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{extensionsdir}
-
-install %{_modname}-%{version}/modules/%{_modname}.so $RPM_BUILD_ROOT%{extensionsdir}
+install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}
+
+install modules/%{modname}.so $RPM_BUILD_ROOT%{php_extensiondir}
+cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
+; Enable %{modname} extension module
+extension=%{modname}.so
+;memcache.allow_failover=1
+;memcache.chunk_size=8192
+;memcache.default_port=11211
+;memcache.protocol=ascii
+;memcache.redudndancy=1
+;memcache.session_redundancy=2
+;memcache.hash_strategy=consistent
+;memcache.hash_function=crc32
+EOF
+cp -a example.php memcache.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
%clean
rm -rf $RPM_BUILD_ROOT
%post
-%{_sbindir}/php-module-install install %{_modname} %{_sysconfdir}/php-cgi.ini
+%php_webserver_restart
+
+%postun
+if [ "$1" = 0 ]; then
+ %php_webserver_restart
+fi
-%preun
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove %{_modname} %{_sysconfdir}/php-cgi.ini
+%triggerpostun -- %{name} < 3.0.4-2
+if [ -f %{php_sysconfdir}/conf.d/%{modname}.ini.rpmsave ]; then
+ echo >&2 "Restoring old config: %{modname}.ini.rpmsave -> session_%{modname}.ini in %{php_sysconfdir}/conf.d"
+ cp -f %{php_sysconfdir}/conf.d/session_%{modname}.ini{,.rpmnew}
+ mv -f %{php_sysconfdir}/conf.d/{%{modname}.ini.rpmsave,session_%{modname}.ini}
+ %php_webserver_restart
fi
%files
%defattr(644,root,root,755)
-%doc %{_modname}-%{version}/{CREDITS,README}
-%attr(755,root,root) %{extensionsdir}/%{_modname}.so
+%doc CREDITS README
+%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/session_%{modname}.ini
+%attr(755,root,root) %{php_extensiondir}/%{modname}.so
+%{_examplesdir}/%{name}-%{version}