%{!?__pear: %{expand: %%global __pear %{_bindir}/pear}} %global pear_channel pear.symfony.com %global pear_name %(echo %{name} | sed -e 's/^php-symfony2-//' -e 's/-/_/g') Name: php-symfony2-ClassLoader Version: 2.0.15 Release: 2%{?dist} Summary: Symfony2 %{pear_name} Component Group: Development/Libraries License: MIT URL: http://symfony.com/doc/current/components/class_loader.html Source0: http://%{pear_channel}/get/%{pear_name}-%{version}.tgz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: php-pear(PEAR) BuildRequires: php-channel(%{pear_channel}) Requires: php-common >= 5.3.2 Requires: php-pcre Requires: php-spl Requires: php-tokenizer Requires: php-pear(PEAR) Requires: php-channel(%{pear_channel}) Requires(post): %{__pear} Requires(postun): %{__pear} Provides: php-pear(%{pear_channel}/%{pear_name}) = %{version} %description The ClassLoader Component loads your project classes automatically if they follow some standard PHP conventions. Whenever you use an undefined class, PHP uses the auto-loading mechanism to delegate the loading of a file defining the class. Symfony2 provides a "universal" auto-loader, which is able to load classes from files that implement one of the following conventions: * The technical interoperability standards (http://symfony.com/PSR0) for PHP 5.3 name-spaces and class names. * The PEAR (http://pear.php.net/manual/en/standards.php) naming convention for classes. If your classes and the third-party libraries you use for your project follow these standards, the Symfony2 auto-loader is the only auto-loader you will ever need. Optional dependency: APC %prep %setup -q -c # package.xml is version 2.0 mv package.xml %{pear_name}-%{version}/%{name}.xml %build # Empty build section, most likely nothing required. %install cd %{pear_name}-%{version} %{__pear} install --nodeps --packagingroot $RPM_BUILD_ROOT %{name}.xml # Clean up unnecessary files rm -rf $RPM_BUILD_ROOT%{pear_phpdir}/.??* # Install XML package description mkdir -p $RPM_BUILD_ROOT%{pear_xmldir} install -pm 644 %{name}.xml $RPM_BUILD_ROOT%{pear_xmldir} %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_channel}/%{pear_name} >/dev/null || : fi %files %defattr(-,root,root,-) %doc %{pear_docdir}/%{pear_name} %{pear_xmldir}/%{name}.xml %{pear_phpdir}/Symfony/Component/%{pear_name} %dir %{pear_phpdir}/Symfony/Component %dir %{pear_phpdir}/Symfony %changelog * Sat Jul 7 2012 Remi Collet 2.0.15-2 - backport for remi repository * Wed Jul 4 2012 Shawn Iwinski 2.0.15-2 - Removed php-pecl-apc require * Sun Jun 09 2012 Remi Collet 2.0.15-1 - rebuild for remi repository * Wed May 30 2012 Shawn Iwinski 2.0.15-1 - Updated to upstream version 2.0.15 - Removed "BuildRequires: php-pear >= 1:1.4.9-1.2" - Updated %%prep section - Removed cleaning buildroot from %%install section - Removed documentation move from %%install section (fixed upstream) - Removed %%clean section - Updated %%doc in %%files section * Sun May 20 2012 Shawn Iwinski 2.0.14-3 - Moved documentation to correct location * Sun May 20 2012 Shawn Iwinski 2.0.14-2 - Removed BuildRoot - Changed php require to php-common - Added the following requires based on phpci results: php-pcre, php-spl, php-tokenizer, php-pecl-apc - %%description update - Removed %%defattr from %%files section * Fri May 18 2012 Shawn Iwinski 2.0.14-1 - Updated to upstream version 2.0.14 - %%global instead of %%define - Removed unnecessary cd from %%build section * Wed May 2 2012 Shawn Iwinski 2.0.13-1 - Updated to upstream version 2.0.13 * Sat Apr 21 2012 Shawn Iwinski 2.0.12-1 - Initial package