]> git.pld-linux.org Git - packages/php-pecl-memcached.git/blame - php-pecl-memcached.spec
enable again
[packages/php-pecl-memcached.git] / php-pecl-memcached.spec
CommitLineData
8a94fd63
ER
1#
2# Conditional build:
01be7f54 3%bcond_without igbinary # memcached igbinary serializer support
8a94fd63 4%bcond_without json # memcached json serializer support
bc194a76 5%bcond_without msgpack # memcached msgpack serializer support
8a94fd63
ER
6%bcond_without sasl # memcached sasl support
7%bcond_without session # memcached session handler support
f320a8b8 8%bcond_without tests # build without tests
8a94fd63 9
00a979fe 10%define php_name php%{?php_suffix}
1686b051 11%define modname memcached
3ad40754
ŁK
12Summary: Interface to memcached via libmemcached library
13Summary(pl.UTF-8): Interfejs do memcached z użyciem biblioteki libmemcached
00a979fe 14Name: %{php_name}-pecl-%{modname}
bc194a76 15# for PHP < 7 support see 2.2.x branch
32929cc6 16Version: 3.0.0
ecf7e008 17Release: 1
ecc1f4a0 18License: PHP 3.01
b44f7c50 19Group: Development/Languages/PHP
32929cc6
ER
20Source0: https://github.com/php-memcached-dev/php-memcached/archive/php7/%{modname}-%{version}.tar.gz
21# Source0-md5: df81b124ac101bd21922deb0ef2ad9b9
b44f7c50 22URL: http://pecl.php.net/package/memcached/
c3fa9f03 23BuildRequires: %{php_name}-devel >= 4:7.0.0
cba71c6f 24%{?with_igbinary:BuildRequires: %{php_name}-pecl-igbinary-devel}
bc194a76 25%{?with_msgpack:BuildRequires: %{php_name}-pecl-msgpack-devel}
8a94fd63 26%{?with_sasl:BuildRequires: cyrus-sasl-devel}
2ef5d149 27BuildRequires: fastlz-devel
b791cdba 28BuildRequires: libmemcached-devel >= 1.0.18
b39e72bc
ER
29BuildRequires: pkgconfig
30BuildRequires: re2c
00a979fe 31BuildRequires: rpmbuild(macros) >= 1.650
5f6946b2 32BuildRequires: zlib-devel
f320a8b8
ER
33%if %{with tests}
34BuildRequires: %{php_name}-cli
ecf7e008 35BuildRequires: %{php_name}-pcre
cba71c6f 36%{?with_igbinary:BuildRequires: %{php_name}-pecl-igbinary}
bc194a76 37%{?with_msgpack:BuildRequires: %{php_name}-pecl-msgpack}
f320a8b8 38%{?with_session:BuildRequires: %{php_name}-session}
cba71c6f 39BuildRequires: %{php_name}-spl
6eed873b 40BuildRequires: memcached
f320a8b8 41%endif
b44f7c50 42%{?requires_php_extension}
28bdaf6a 43Suggests: %{php_name}-pecl-igbinary
bc194a76 44Suggests: %{php_name}-pecl-msgpack
cba71c6f 45Suggests: %{php_name}-session
28bdaf6a 46Provides: php(%{modname}) = %{version}
d30795a1 47Obsoletes: php-pecl-memcached < 2.2.0-1
b44f7c50
AG
48BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49
50%description
51This extension uses libmemcached library to provide API for
52communicating with memcached servers.
53
b44f7c50 54%description -l pl.UTF-8
c869a57e 55Rozszerzenie to wykorzystuje bibliotekę memcached w celu udostępnienia
b44f7c50
AG
56API do komunikacji z serwerami memcached.
57
b44f7c50 58%prep
32929cc6
ER
59%setup -qc
60mv php-memcached-*/{.??*,*} .
b44f7c50 61
2ef5d149
ER
62rm fastlz/fastlz.c
63
01be7f54
ER
64# redirect tests fail (the actual tests they redirect work)
65rm tests/experimental/serializer_igbinary.phpt
66rm tests/experimental/serializer_json.phpt
67
6eed873b
ER
68# skip failed tests
69xfail() {
70 t=$(echo "$*" | sed -rne 's/.+\[(.+)\]/\1/p')
71
72 test -f "$t"
73 cat >> $t <<-EOF
74
75 --XFAIL--
76 Skip
77 EOF
78}
79
7aa759ad 80%ifarch %{x8664}
6eed873b
ER
81xfail Memcached::getByKey with CAS [tests/experimental/get_bykey_cas.phpt]
82xfail Memcached::getDelayedByKey with CAS [tests/experimental/getdelayed_bykey_cas.phpt]
83xfail Memcached::getDelayedByKey with callback exception [tests/experimental/getdelayed_cbthrows.phpt]
84xfail Memcached::getMulti bad server [tests/experimental/getmulti_badserver.phpt]
85xfail Memcached::phpinfo [tests/experimental/moduleinfo.phpt]
86xfail Memcached::getStats [tests/experimental/stats.phpt]
87xfail Memcached::getStats with bad server [tests/experimental/stats_badserver.phpt]
88xfail Memcached store and fetch type and value correctness using JSON serializer [tests/types_json.phpt]
89xfail Memcached multi store and multi fetch type and value correctness using JSON serializer [tests/types_json_multi.phpt]
7aa759ad 90%endif
c896e46f
ER
91%ifarch x32
92xfail Memcached::addServer unix doamin socket [tests/experimental/addserver_unixdomain.phpt]
93xfail Memcached::set/delete UDP [tests/experimental/get_udp.phpt]
94xfail Memcached::getDelayedByKey with bad server [tests/experimental/getdelayed_badserver.phpt]
95xfail Memcached::getServerByKey [tests/getserverbykey.phpt]
96xfail Memcached result codes. [tests/rescode.phpt]
97xfail Memcached::setMulti [tests/setmulti.phpt]
98%endif
6eed873b 99
b44f7c50
AG
100%build
101phpize
ecc1f4a0 102%configure \
8a94fd63
ER
103 %{__enable_disable igbinary memcached-igbinary} \
104 %{__enable_disable json memcached-json} \
105 %{__enable_disable msgpack memcached-msgpack} \
106 %{__enable_disable sasl memcached-sasl} \
107 %{__enable_disable session memcached-session} \
108 --with-system-fastlz
b44f7c50
AG
109%{__make}
110
f320a8b8
ER
111%if %{with tests}
112# simple module load test
113%{__php} -n -q \
114 -d extension_dir=modules \
ecf7e008 115 -d extension=%{php_extensiondir}/pcre.so \
f320a8b8
ER
116 -d extension=%{php_extensiondir}/spl.so \
117%if %{with session}
118 -d extension=%{php_extensiondir}/session.so \
cba71c6f
ER
119%endif
120%if %{with igbinary}
121 -d extension=%{php_extensiondir}/igbinary.so \
bc194a76
ER
122%endif
123%if %{with msgpack}
124 -d extension=%{php_extensiondir}/msgpack.so \
f320a8b8
ER
125%endif
126 -d extension=%{modname}.so \
127 -m > modules.log
128grep %{modname} modules.log
129
2a973f5a
ER
130cat <<'EOF' > run-tests.sh
131#!/bin/sh
f320a8b8 132export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
2a973f5a 133exec %{__make} test \
f320a8b8 134 PHP_EXECUTABLE=%{__php} \
bc194a76 135 PHP_TEST_SHARED_SYSTEM_EXTENSIONS="spl%{?with_session: session}%{?with_igbinary: igbinary}%{?with_msgpack: msgpack}" \
2a973f5a
ER
136 RUN_TESTS_SETTINGS="-q $*"
137EOF
138chmod +x run-tests.sh
139
6eed873b
ER
140# Launch the Memcached service and stop it on exit
141%{_sbindir}/memcached -p 11211 -U 11211 -d -P $PWD/memcached.pid
142trap 'kill $(cat memcached.pid)' EXIT
143
2a973f5a 144./run-tests.sh
f320a8b8
ER
145%endif
146
b44f7c50
AG
147%install
148rm -rf $RPM_BUILD_ROOT
b44f7c50
AG
149%{__make} install \
150 INSTALL_ROOT=$RPM_BUILD_ROOT \
151 EXTENSION_DIR=%{php_extensiondir}
87acf0f0
ER
152
153install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
1686b051
ER
154cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
155; Enable %{modname} extension module
156extension=%{modname}.so
ecc1f4a0 157
b44f7c50 158EOF
ecc1f4a0 159cat %{modname}.ini >> $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
b44f7c50
AG
160
161%clean
162rm -rf $RPM_BUILD_ROOT
163
164%post
165%php_webserver_restart
166
167%postun
168if [ "$1" = 0 ]; then
169 %php_webserver_restart
170fi
171
172%files
173%defattr(644,root,root,755)
1686b051
ER
174%doc CREDITS
175%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/%{modname}.ini
176%attr(755,root,root) %{php_extensiondir}/%{modname}.so
This page took 0.093962 seconds and 4 git commands to generate.