]> git.pld-linux.org Git - packages/php-pecl-memcache.git/blobdiff - php-pecl-memcache.spec
php 5.2 deps
[packages/php-pecl-memcache.git] / php-pecl-memcache.spec
index bc9ea19b2defe20197dcb5a71a390b7413168725..1d8f84af087b7d68fa5eb3cc0b1649dd0ad41be0 100644 (file)
@@ -1,31 +1,46 @@
-%include       /usr/lib/rpm/macros.php
+#
+# Conditional build:
+%bcond_without tests           # build without tests
+
+%define                php_name        php%{?php_suffix}
 %define                modname memcache
 %define                php_min_version 5.0.0
+%define                commit e702b5f91
+%include       /usr/lib/rpm/macros.php
 Summary:       %{modname} - a memcached extension
 Summary(pl.UTF-8):     %{modname} - rozszerzenie memcached
-Name:          php-pecl-%{modname}
-Version:       3.0.6
-Release:       7
+Name:          %{php_name}-pecl-%{modname}
+Version:       4.0.3
+Release:       1
 License:       PHP 3.01
 Group:         Development/Languages/PHP
-Source0:       http://pecl.php.net/get/%{modname}-%{version}.tgz
-# Source0-md5: 23c2a1548f3fc7658b98b1c60e6d83b1
+Source0:       https://github.com/websupport-sk/pecl-memcache/archive/%{version}/%{modname}-%{version}.tar.gz
+# Source0-md5: 21a001ef690a1397a8b62990254cc8c2
 Source1:       %{modname}.ini
 Source2:       %{modname}-apache.conf
 Source3:       %{modname}-lighttpd.conf
 Source4:       config.php
 Patch0:                %{modname}-webapp.patch
-URL:           http://pecl.php.net/package/memcache/
-BuildRequires: php-devel >= 3:5.0.0
+URL:           https://github.com/websupport-sk/pecl-memcache/
+BuildRequires: %{php_name}-devel >= 3:5.0.0
+BuildRequires: %{php_name}-xml
 BuildRequires: php-packagexml2cl
 BuildRequires: rpm-php-pearprov >= 4.4.2-11
-BuildRequires: rpmbuild(macros) >= 1.344
+BuildRequires: rpmbuild(macros) >= 1.650
+%if %{with tests}
+BuildRequires: %{php_name}-cli
+BuildRequires: %{php_name}-pcre
+BuildRequires: %{php_name}-session
+BuildRequires: %{php_name}-simplexml
+BuildRequires: %{php_name}-spl
+BuildRequires: memcached
+%endif
 %{?requires_php_extension}
-Requires:      php(core) >= 5.0.4
-Requires:      php-session
-Requires:      php-zlib
+Requires:      %{php_name}-session
+Requires:      %{php_name}-zlib
 Suggests:      memcached
-Obsoletes:     php-pear-%{modname}
+Provides:      php(memcache) = %{version}
+Obsoletes:     php-pecl-memcache < 3.0.8-5
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _webapps        /etc/webapps
@@ -59,21 +74,43 @@ Summary:    Web interface for memcache
 Group:         Libraries
 # does not require extension itself
 Requires:      php(core) >= %{php_min_version}
-Requires:      php-date
-Requires:      php-gd
-Requires:      php-pcre
+Requires:      php(date)
+Requires:      php(gd)
+Requires:      php(pcre)
 Requires:      webapps
 Requires:      webserver(php) >= 5.0
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description web
 Via this web interface script you can manage and view statistics of
 memcache.
 
 %prep
-%setup -q -c
-mv %{modname}-%{version}/* .
+%setup -qc
+mv pecl-%{modname}-*/{.??*,*} .
 %patch0 -p1
 
+# skip failed tests
+xfail() {
+       set +x
+       while read s; do
+               t=$(echo "$s" | sed -rne 's/.+\[(.+)\]/\1/p')
+
+               test -f "$t"
+               echo >&2 "XFAIL: $s"
+               cat >> $t <<-EOF
+
+               --XFAIL--
+               Skip
+               EOF
+       done
+}
+
+xfail <<'EOF'
+EOF
+
 %build
 packagexml2cl package.xml > ChangeLog
 phpize
@@ -81,20 +118,49 @@ phpize
        --with-zlib-dir=/usr
 %{__make}
 
+%if %{with tests}
+# simple module load test
+%{__php} -n -q \
+       -d extension_dir=modules \
+       -d extension=%{php_extensiondir}/pcre.so \
+       -d extension=%{php_extensiondir}/simplexml.so \
+       -d extension=%{php_extensiondir}/spl.so \
+       -d extension=%{php_extensiondir}/session.so \
+       -d extension=%{modname}.so \
+       -m > modules.log
+grep %{modname} modules.log
+
+cat <<'EOF' > run-tests.sh
+#!/bin/sh
+export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
+exec %{__make} test \
+       PHP_EXECUTABLE=%{__php} \
+       PHP_TEST_SHARED_SYSTEM_EXTENSIONS="pcre simplexml spl session" \
+       RUN_TESTS_SETTINGS="-q $*"
+EOF
+chmod +x run-tests.sh
+
+# Launch the Memcached service and stop it on exit
+%{_sbindir}/memcached -p 11211 -U 11211 -d -P $PWD/memcached.pid
+trap 'kill $(cat memcached.pid)' EXIT INT
+
+./run-tests.sh
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}
 install -p modules/%{modname}.so $RPM_BUILD_ROOT%{php_extensiondir}
 # we use "session_" prefix in inifile to get loader *after* session extension
-cp -a %{SOURCE1} $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
-cp -a example.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/session_%{modname}.ini
+cp -p example.php $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}}
-cp -a memcache.php $RPM_BUILD_ROOT%{_appdir}
-cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
-cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
-cp -a $RPM_BUILD_ROOT%{_sysconfdir}/{apache,httpd}.conf
-cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
+cp -p memcache.php $RPM_BUILD_ROOT%{_appdir}
+cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
+cp -p $RPM_BUILD_ROOT%{_sysconfdir}/{apache,httpd}.conf
+cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
 
 %clean
 rm -rf $RPM_BUILD_ROOT
This page took 0.069392 seconds and 4 git commands to generate.