summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2012-10-30 18:56:17 +0100
committerRemi Collet <fedora@famillecollet.com>2012-10-30 18:56:17 +0100
commit9c8af1dacbef4df66fc4448f71b7e3910e688f1a (patch)
treeadab9c4d2b3bcecbea6411a5d591ec82c8bdcf69
parent8a6614cd17f2da21e2bba7bdc9f47b2613571c95 (diff)
php-symfony2-HttpFoundation: sync with rawhide, update to 2.1.3
-rw-r--r--bootstrap.php24
-rw-r--r--php-symfony2-HttpFoundation-tests-bootstrap.patch44
-rw-r--r--php-symfony2-HttpFoundation.spec88
3 files changed, 113 insertions, 43 deletions
diff --git a/bootstrap.php b/bootstrap.php
deleted file mode 100644
index 329fef2..0000000
--- a/bootstrap.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * 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 <RPMS@FamilleCollet.com> 2.1.3-1
+- sync with rawhide, update to 2.1.3
+
+* Tue Oct 30 2012 Shawn Iwinski <shawn.iwinski@gmail.com> 2.1.2-3
+- Temp disable tests by default b/c build failures on F18, F17, and EL6
+
+* Mon Oct 29 2012 Shawn Iwinski <shawn.iwinski@gmail.com> 2.1.2-2
+- Added "%%global pear_metadir" and usage in %%install
+- Changed RPM_BUILD_ROOT to %%{buildroot}
+
+* Sat Oct 20 2012 Shawn Iwinski <shawn.iwinski@gmail.com> 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 <RPMS@FamilleCollet.com> 2.1.2-1
- update to 2.1.2