From 9c8af1dacbef4df66fc4448f71b7e3910e688f1a Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 30 Oct 2012 18:56:17 +0100 Subject: php-symfony2-HttpFoundation: sync with rawhide, update to 2.1.3 --- bootstrap.php | 24 ------- php-symfony2-HttpFoundation-tests-bootstrap.patch | 44 ++++++++++++ php-symfony2-HttpFoundation.spec | 88 ++++++++++++++++++----- 3 files changed, 113 insertions(+), 43 deletions(-) delete mode 100644 bootstrap.php create mode 100644 php-symfony2-HttpFoundation-tests-bootstrap.patch diff --git a/bootstrap.php b/bootstrap.php deleted file mode 100644 index 329fef2..0000000 --- a/bootstrap.php +++ /dev/null @@ -1,24 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -date_default_timezone_set('UTC'); -spl_autoload_register(function ($class) { - if (0 === strpos(ltrim($class, '/'), 'Symfony\Component')) { - $file = substr(str_replace('\\', '/', $class), strlen('Symfony\Component')).'.php'; - if (file_exists(__DIR__.'/../..'.$file)) { - # Run from source tree - require_once __DIR__.'/../..'.$file; - } else { - # Run from install dir - require_once 'Symfony/Component'.$file; - } - } -}); diff --git a/php-symfony2-HttpFoundation-tests-bootstrap.patch b/php-symfony2-HttpFoundation-tests-bootstrap.patch new file mode 100644 index 0000000..b64af48 --- /dev/null +++ b/php-symfony2-HttpFoundation-tests-bootstrap.patch @@ -0,0 +1,44 @@ +--- Symfony/Component/HttpFoundation/Tests/bootstrap.php 2012-09-20 03:42:11.000000000 -0400 ++++ Symfony/Component/HttpFoundation/Tests/bootstrap.php 2012-10-21 00:45:21.962629147 -0400 +@@ -9,14 +9,38 @@ + * file that was distributed with this source code. + */ + ++date_default_timezone_set('UTC'); + spl_autoload_register(function ($class) { + if (ltrim('SessionHandlerInterface', '/') === $class) { +- require_once __DIR__.'/../Resources/stubs/SessionHandlerInterface.php'; ++ $file = '/Resources/stubs/SessionHandlerInterface.php'; ++ if (file_exists(__DIR__.'/..'.$file)) { ++ // Load from source tree ++ require_once __DIR__.'/..'.$file; ++ } else { ++ try { ++ // Try loading from include path ++ require_once 'Symfony/Component/HttpFoundation'.$file; ++ } catch (Exception $e) { ++ // Fail silently so class not found fatal error still raised ++ } ++ } + } + +- if (0 !== strpos(ltrim($class, '/'), 'Symfony\Component\HttpFoundation')) { ++ if (0 !== strpos(ltrim($class, '/'), 'Symfony\Component')) { + return; + } + +- require_once __DIR__.'/../'.substr(str_replace('\\', '/', $class), strlen('Symfony\Component\HttpFoundation')).'.php'; ++ $file = substr(str_replace('\\', '/', $class), strlen('Symfony\Component')).'.php'; ++ ++ if (file_exists(__DIR__.'/../..'.$file)) { ++ // Load from source tree ++ require_once __DIR__.'/../..'.$file; ++ } else { ++ try { ++ // Try loading from incude path ++ require_once 'Symfony/Component'.$file; ++ } catch (Exception $e) { ++ // Fail silently so class not found fatal error still raised ++ } ++ } + }); diff --git a/php-symfony2-HttpFoundation.spec b/php-symfony2-HttpFoundation.spec index e37bb20..e01077e 100644 --- a/php-symfony2-HttpFoundation.spec +++ b/php-symfony2-HttpFoundation.spec @@ -1,28 +1,45 @@ -%{!?pear_metadir: %global pear_metadir %{pear_phpdir}} %{!?__pear: %{expand: %%global __pear %{_bindir}/pear}} +%{!?pear_metadir: %global pear_metadir %{pear_phpdir}} %global pear_channel pear.symfony.com %global pear_name %(echo %{name} | sed -e 's/^php-symfony2-//' -e 's/-/_/g') +%global php_min_ver 5.3.3 +# Temp disable tests by default b/c build failures on F18, F17, and EL6 +%global with_tests %{?_with_tests:1}%{!?_with_tests:0} Name: php-symfony2-HttpFoundation -Version: 2.1.2 +Version: 2.1.3 Release: 1%{?dist} Summary: Symfony2 %{pear_name} Component Group: Development/Libraries License: MIT -URL: http://symfony.com/doc/current/components/http_foundation.html +URL: http://symfony.com/doc/current/components/http_foundation/index.html Source0: http://%{pear_channel}/get/%{pear_name}-%{version}.tgz -Source1: bootstrap.php +Patch0: %{name}-tests-bootstrap.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: php-pear(PEAR) BuildRequires: php-channel(%{pear_channel}) -# For tests +%if %{with_tests} +# Test requires +BuildRequires: php(language) >= %{php_min_ver} BuildRequires: php-pear(pear.phpunit.de/PHPUnit) +# Test requires: phpci +BuildRequires: php-date +BuildRequires: php-fileinfo +BuildRequires: php-json +BuildRequires: php-pcre +BuildRequires: php-pdo +BuildRequires: php-reflection +BuildRequires: php-session +BuildRequires: php-sockets +BuildRequires: php-spl +BuildRequires: php-filter +%endif -Requires: php-common >= 5.3.2 +Requires: php(language) >= %{php_min_ver} Requires: php-pear(PEAR) Requires: php-channel(%{pear_channel}) Requires(post): %{__pear} @@ -30,12 +47,14 @@ Requires(postun): %{__pear} # phpci requires Requires: php-date Requires: php-fileinfo -Requires: php-hash +Requires: php-json Requires: php-pcre Requires: php-pdo +Requires: php-reflection Requires: php-session Requires: php-sockets Requires: php-spl +Requires: php-filter Provides: php-pear(%{pear_channel}/%{pear_name}) = %{version} @@ -50,14 +69,26 @@ $_FILE, $_COOKIE, $_SESSION...) and the response is generated by some functions The Symfony2 HttpFoundation component replaces these default PHP global variables and functions by an Object-Oriented layer. +Optional dependencies: memcache, memcached, mongo + %prep %setup -q -c -# Hum... +# Patches +cd %{pear_name}-%{version} +%patch0 -p0 +cd .. + +# Modify PEAR package.xml file: +# - Change role from "php" to "doc" for CHANGELOG.md file +# - Change role from "php" to "test" for all test files +# - Remove md5sum from bootsrap.php file since it was patched sed -e '/CHANGELOG.md/s/role="php"/role="doc"/' \ -e '/phpunit.xml.dist/s/role="php"/role="test"/' \ -e '/Tests/s/role="php"/role="test"/' \ + -e '/bootstrap.php/s/md5sum="[^"]*"\s*//' \ + -e '/.git/d' \ -i package.xml # package.xml is version 2.0 @@ -65,28 +96,27 @@ mv package.xml %{pear_name}-%{version}/%{name}.xml %build -# Empty build section, nothing required. +# Empty build section, nothing required %install cd %{pear_name}-%{version} -%{__pear} install --nodeps --packagingroot $RPM_BUILD_ROOT %{name}.xml +%{__pear} install --nodeps --packagingroot %{buildroot} %{name}.xml # Clean up unnecessary files -rm -rf $RPM_BUILD_ROOT%{pear_metadir}/.??* +rm -rf %{buildroot}%{pear_metadir}/.??* # Install XML package description -mkdir -p $RPM_BUILD_ROOT%{pear_xmldir} -install -pm 644 %{name}.xml $RPM_BUILD_ROOT%{pear_xmldir} +mkdir -p %{buildroot}%{pear_xmldir} +install -pm 644 %{name}.xml %{buildroot}%{pear_xmldir} %check -cd %{pear_name}-%{version}/Symfony/Component/%{pear_name}/Tests -cp %{SOURCE1} bootstrap.php -%if 0%{?rhel} -: Test temporary disabled on EL +%if %{with_tests} + cd %{pear_name}-%{version}/Symfony/Component/%{pear_name} + %{_bindir}/phpunit %else -phpunit --bootstrap bootstrap.php . +: Tests skipped, missing '--with tests' option %endif @@ -109,10 +139,30 @@ fi %dir %{pear_phpdir}/Symfony %dir %{pear_phpdir}/Symfony/Component %{pear_phpdir}/Symfony/Component/%{pear_name} - %{pear_testdir}/%{pear_name} +%{pear_testdir}/%{pear_name} %changelog +* Tue Oct 30 2012 Remi Collet 2.1.3-1 +- sync with rawhide, update to 2.1.3 + +* Tue Oct 30 2012 Shawn Iwinski 2.1.2-3 +- Temp disable tests by default b/c build failures on F18, F17, and EL6 + +* Mon Oct 29 2012 Shawn Iwinski 2.1.2-2 +- Added "%%global pear_metadir" and usage in %%install +- Changed RPM_BUILD_ROOT to %%{buildroot} + +* Sat Oct 20 2012 Shawn Iwinski 2.1.2-1 +- Updated to upstream version 2.1.2 +- PHP minimum version 5.3.3 instead of 5.3.2 +- Added php-json, php-reflection and php-filter requires +- Removed php-hash require +- Updated description with optional dependencies +- Added PEAR package.xml modifications +- Added patch for tests' bootstrap.php +- Added tests (%%check) + * Sat Oct 6 2012 Remi Collet 2.1.2-1 - update to 2.1.2 -- cgit