diff options
-rw-r--r-- | php-symfony2-Yaml-tests-bootstrap.patch | 26 | ||||
-rw-r--r-- | php-symfony2-Yaml.spec | 70 |
2 files changed, 75 insertions, 21 deletions
diff --git a/php-symfony2-Yaml-tests-bootstrap.patch b/php-symfony2-Yaml-tests-bootstrap.patch new file mode 100644 index 0000000..9d44a18 --- /dev/null +++ b/php-symfony2-Yaml-tests-bootstrap.patch @@ -0,0 +1,26 @@ +--- Symfony/Component/Yaml/Tests/bootstrap.php 2012-09-20 03:42:20.000000000 -0400 ++++ Symfony/Component/Yaml/Tests/bootstrap.php 2012-10-20 21:28:00.503147342 -0400 +@@ -9,10 +9,20 @@ + * 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\Yaml')) { +- if (file_exists($file = __DIR__.'/../'.substr(str_replace('\\', '/', $class), strlen('Symfony\Component\Yaml')).'.php')) { +- require_once $file; ++ if (0 === strpos(ltrim($class, '/'), 'Symfony\Component')) { ++ $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-Yaml.spec b/php-symfony2-Yaml.spec index 7fe21db..08cf2fe 100644 --- a/php-symfony2-Yaml.spec +++ b/php-symfony2-Yaml.spec @@ -1,30 +1,39 @@ -%{!?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') -# Can't run in mock because circular dependency on PHPUnit -%global with_tests %{?_with_tests:1}%{!?_with_tests:0} +%global php_min_ver 5.3.3 Name: php-symfony2-Yaml -Version: 2.1.2 -Release: 2%{?dist} +Version: 2.1.3 +Release: 1%{?dist} Summary: Symfony2 %{pear_name} Component Group: Development/Libraries License: MIT URL: http://symfony.com/doc/current/components/yaml.html Source0: http://%{pear_channel}/get/%{pear_name}-%{version}.tgz +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}) -%if %{with_tests} +# Test requires +BuildRequires: php-common >= %{php_min_ver} BuildRequires: php-pear(pear.phpunit.de/PHPUnit) -%endif - -Requires: php-common >= 5.3.2 +# Test requires: phpci +BuildRequires: php-ctype +BuildRequires: php-date +BuildRequires: php-iconv +BuildRequires: php-json +BuildRequires: php-mbstring +BuildRequires: php-pcre +BuildRequires: php-spl + +Requires: php(language) >= %{php_min_ver} Requires: php-pear(PEAR) Requires: php-channel(%{pear_channel}) Requires(post): %{__pear} @@ -56,10 +65,19 @@ specification. %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*//' \ -i package.xml # package.xml is version 2.0 @@ -72,23 +90,19 @@ mv package.xml %{pear_name}-%{version}/%{name}.xml %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 -%if %{with_tests} -cd %{pear_name}-%{version}/Symfony/Component/Yaml/Tests -phpunit --bootstrap bootstrap.php . -%else -: Tests skipped, missing --with tests option -%endif +cd %{pear_name}-%{version}/Symfony/Component/%{pear_name} +%{_bindir}/phpunit %post @@ -110,10 +124,24 @@ 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 + +* 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 PEAR package.xml modifications +- Added patch for tests' bootstrap.php +- Added tests (%%check) + * Thu Sep 20 2012 Remi Collet <RPMS@FamilleCollet.com> 2.1.2-2 - rebuild |