%{!?__pear: %{expand: %%global __pear %{_bindir}/pear}} %global pear_name File_CSV # Tests are only run with rpmbuild --with tests # Can't be run in mock because of circular dependencies %global with_tests %{?_with_tests:1}%{!?_with_tests:0} Name: php-pear-File-CSV Version: 1.0.0 Release: 2%{?dist} Summary: Read and write of CSV files Group: Development/Libraries License: BSD URL: http://pear.php.net/package/File_CSV Source0: http://pear.php.net/get/%{pear_name}-%{version}.tgz # https://pear.php.net/bugs/19255 patch fails with php 5.4 Patch0: file-csv-test.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: php-pear(PEAR) >= 1.7.0 %if %{with_tests} BuildRequires: php-pear(File) >= 1.4.0 %endif Requires(post): %{__pear} Requires(postun): %{__pear} Requires: php-pear(PEAR) >= 1.7.0 Requires: php-pear(File) >= 1.4.0 Provides: php-pear(%{pear_name}) = %{version} %description Read and write of CSV files as well as discovering the format the CSV file is in. Supports headers and is excel compatible, i.e. ="0004" outputs as 0004 (only read wise) For more information on CSV: http://rfc.net/rfc4180.html %prep %setup -q -c %patch0 -p0 -b .tests cd %{pear_name}-%{version} # Package is V2 mv ../package.xml %{name}.xml %build cd %{pear_name}-%{version} # Empty build section, most likely nothing required. %install cd %{pear_name}-%{version} rm -rf %{buildroot} %{__pear} install --nodeps --packagingroot %{buildroot} %{name}.xml # Clean up unnecessary files rm -rf %{buildroot}%{pear_phpdir}/.??* # Install XML package description mkdir -p %{buildroot}%{pear_xmldir} install -pm 644 %{name}.xml %{buildroot}%{pear_xmldir} %check cd %{pear_name}-%{version} %if %{with_tests} %{__pear} \ run-tests \ --recur \ --ini "-d include_path=%{buildroot}%{pear_phpdir}:%{pear_phpdir}" \ tests | tee ../tests.log grep "FAILED TESTS" ../tests.log && exit 1 %else echo 'Test suite disabled (missing "--with test" option)' %endif %clean rm -rf %{buildroot} %post %{__pear} install --nodeps --soft --force --register-only \ %{pear_xmldir}/%{name}.xml >/dev/null || : %postun if [ $1 -eq 0 ] ; then %{__pear} uninstall --nodeps --ignore-errors --register-only \ pear.php.net/%{pear_name} >/dev/null || : fi %files %defattr(-,root,root,-) %doc %{pear_docdir}/%{pear_name} %{pear_xmldir}/%{name}.xml %{pear_phpdir}/File/CSV.php %{pear_testdir}/%{pear_name} %changelog * Mon Mar 05 2012 Remi Collet - 1.0.0-2 - spec cleanups - patch for test which fails with php 5.4 https://pear.php.net/bugs/19255 * Sat Mar 19 2011 Remi Collet - 1.0.0-1 - initial package