-%define modname imagick
+#
+# Conditional build:
+%bcond_without tests # build without tests
+
+%define php_name php%{?php_suffix}
+%define modname imagick
%define status stable
Summary: %{modname} - PHP wrapper to the Image Magick Library
Summary(pl.UTF-8): %{modname} - PHP-owy wrapper do biblioteki Image Magick
-Name: php-pecl-%{modname}
-Version: 2.3.0
-Release: 3
+Name: %{php_name}-pecl-%{modname}
+Version: 3.4.3
+Release: 1
License: PHP 3.01
Group: Development/Languages/PHP
Source0: http://pecl.php.net/get/%{modname}-%{version}.tgz
-# Source0-md5: 29f99195c841ab4d36797bbc47b2b215
+# Source0-md5: d0ee25c007cd2a28cefccc0b9ee63a28
+Patch0: skip_version_check.patch
URL: http://pecl.php.net/package/imagick/
+BuildRequires: %{php_name}-devel >= 4:5.3
BuildRequires: ImageMagick-devel >= 1:6.2.4.0
-BuildRequires: php-devel >= 3:5.1.3
-BuildRequires: rpmbuild(macros) >= 1.344
+BuildRequires: pkgconfig
+BuildRequires: re2c
+BuildRequires: rpmbuild(macros) >= 1.650
+%if %{with tests}
+BuildRequires: %{php_name}-cli
+BuildRequires: %{php_name}-pcre
+BuildRequires: %{php_name}-spl
+BuildRequires: ImageMagick-coder-jpeg
+BuildRequires: ImageMagick-coder-png
+BuildRequires: ImageMagick-coder-tiff
+%endif
%{?requires_php_extension}
Requires(triggerpostun): sed >= 4.0
-Requires: php-common >= 4:5.0.4
-Provides: php(imagick)
-Obsoletes: php-imagick
+Requires: %{php_name}-spl
+Suggests: ImageMagick-coder-jpeg
+Suggests: ImageMagick-coder-png
+Suggests: ImageMagick-coder-tiff
+Provides: php(imagick) = %{version}
+Obsoletes: php-pecl-imagick < 3.1.2-2
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
To rozszerzenie ma w PECL status: %{status}.
%prep
-%setup -q -c
+%setup -qc
mv %{modname}-%{version}/* .
+%patch0 -p1
+
+xfail() {
+ t=$1
+ cat >> $t <<-EOF
+
+ --XFAIL--
+ Skip
+ EOF
+}
+Test() {
+ nf=$(eval echo \$$#)
+ t=$nf; t=${t#\[}; t=${t%\]}
+ xfail $t
+}
+# skip failing tests
+Test Imagick, annotateImage [tests/034_Imagick_annotateImage_basic.phpt]
+Test ImagickDraw, composite [tests/177_ImagickDraw_composite_basic.phpt]
+Test ImagickDraw, setFontSize [tests/206_ImagickDraw_setFontSize_basic.phpt]
+Test ImagickDraw, setFontFamily [tests/207_ImagickDraw_setFontFamily_basic.phpt]
+Test ImagickDraw, setFontStretch [tests/208_ImagickDraw_setFontStretch_basic.phpt]
+Test ImagickDraw, setFontWeight [tests/209_ImagickDraw_setFontWeight_basic.phpt]
+Test ImagickDraw, setFontStyle [tests/210_ImagickDraw_setFontStyle_basic.phpt]
+Test ImagickDraw, setGravity [tests/212_ImagickDraw_setGravity_basic.phpt]
+Test ImagickDraw, setTextAlignment [tests/222_ImagickDraw_setTextAlignment_basic.phpt]
+Test ImagickDraw, setTextAntialias [tests/223_ImagickDraw_setTextAntialias_basic.phpt]
+Test ImagickDraw, setTextUnderColor [tests/224_ImagickDraw_setTextUnderColor_basic.phpt]
+Test ImagickDraw, setTextDecoration [tests/225_ImagickDraw_setTextDecoration_basic.phpt]
+Test Tutorial, psychedelicFont [tests/241_Tutorial_psychedelicFont_basic.phpt]
+Test Tutorial, svgExample [tests/243_Tutorial_svgExample_basic.phpt]
+Test Tutorial, psychedelicFontGif [tests/244_Tutorial_psychedelicFontGif_basic.phpt]
+Test Imagick, Imagick::exportImagePixels [tests/256_Imagick_exportImagePixels_basic.phpt]
+Test ImagickDraw, getTextDirection [tests/264_ImagickDraw_getTextDirection_basic.phpt]
+Test ImagickDraw, getFontResolution [tests/266_ImagickDraw_getFontResolution_basic.phpt]
+%ifarch x32
+# Fail on 7.0
+Test Imagick, quantizeImage [tests/101_Imagick_quantizeImage_basic.phpt]
+Test Imagick, uniqueImageColors [tests/163_Imagick_uniqueImageColors_basic.phpt]
+Test Tutorial, deconstructGif [tests/237_Tutorial_deconstructGif_basic.phpt]
+Test ImagickPixelIterator, setIteratorRow [tests/251_ImagickPixelIterator_setIteratorRow_basic.phpt]
+%endif
%build
phpize
-%configure
+%configure \
+ php_cv_cc_dashr=false
%{__make} \
CFLAGS_CLEAN="%{rpmcflags}"
+%if %{with tests}
+%{__php} -n -q \
+ -d extension_dir=modules \
+ -d extension=%{php_extensiondir}/pcre.so \
+ -d extension=%{php_extensiondir}/spl.so \
+ -d extension=%{modname}.so \
+ -m > modules.log
+grep %{modname} modules.log
+
+export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
+%{__make} test \
+ PHP_EXECUTABLE=%{__php} \
+ PHP_TEST_SHARED_SYSTEM_EXTENSIONS="pcre spl" \
+%endif
+
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{_examplesdir}/%{name}-%{version}}