[php-pear] - add explicit requires on all needed extensions (phpci) - fix pecl launcher (need ini to be parsed
Remi Collet
remi at fedoraproject.org
Tue Dec 11 15:58:29 UTC 2012
commit 9fcc47fadb341a87adda89048052879e41b5f210
Author: Remi Collet <remi at fedoraproject.org>
Date: Tue Dec 11 16:58:22 2012 +0100
- add explicit requires on all needed extensions (phpci)
- fix pecl launcher (need ini to be parsed for some
extenstions going to be build as shared, mainly simplexml)
- add fix for new unpack format (php 5.5)
pecl.sh | 2 +-
php-pear-1.9.4-php55.patch | 25 +++++++++++++++++++++++++
php-pear.spec | 38 ++++++++++++++++++++++++++++++++------
3 files changed, 58 insertions(+), 7 deletions(-)
---
diff --git a/pecl.sh b/pecl.sh
index 0b6d757..58cbdc5 100644
--- a/pecl.sh
+++ b/pecl.sh
@@ -1,5 +1,5 @@
#!/bin/sh
-exec /usr/bin/php -C -n -q \
+exec /usr/bin/php -C -q \
-d include_path=/usr/share/pear \
-d date.timezone=UTC \
-d output_buffering=1 \
diff --git a/php-pear-1.9.4-php55.patch b/php-pear-1.9.4-php55.patch
new file mode 100644
index 0000000..041abc3
--- /dev/null
+++ b/php-pear-1.9.4-php55.patch
@@ -0,0 +1,25 @@
+--- Archive_Tar-1.3.10/Archive/Tar.php 2012-04-10 19:29:34.000000000 +0200
++++ Archive_Tar-1.3.10/Archive/Tar.php 2012-12-11 16:41:40.884407997 +0100
+@@ -1343,11 +1343,17 @@
+ for ($i=156; $i<512; $i++)
+ $v_checksum+=ord(substr($v_binary_data,$i,1));
+
+- $v_data = unpack("a100filename/a8mode/a8uid/a8gid/a12size/a12mtime/" .
+- "a8checksum/a1typeflag/a100link/a6magic/a2version/" .
+- "a32uname/a32gname/a8devmajor/a8devminor/a131prefix",
+- $v_binary_data);
+-
++ if (version_compare(PHP_VERSION,"5.5.0-dev")<0) {
++ $fmt = "a100filename/a8mode/a8uid/a8gid/a12size/a12mtime/" .
++ "a8checksum/a1typeflag/a100link/a6magic/a2version/" .
++ "a32uname/a32gname/a8devmajor/a8devminor/a131prefix";
++ } else {
++ $fmt = "Z100filename/Z8mode/Z8uid/Z8gid/Z12size/Z12mtime/" .
++ "Z8checksum/Z1typeflag/Z100link/Z6magic/Z2version/" .
++ "Z32uname/Z32gname/Z8devmajor/Z8devminor/Z131prefix";
++ }
++ $v_data = unpack($fmt, $v_binary_data);
++
+ if (strlen($v_data["prefix"]) > 0) {
+ $v_data["filename"] = "$v_data[prefix]/$v_data[filename]";
+ }
diff --git a/php-pear.spec b/php-pear.spec
index 20de81e..f172a62 100644
--- a/php-pear.spec
+++ b/php-pear.spec
@@ -15,7 +15,7 @@
Summary: PHP Extension and Application Repository framework
Name: php-pear
Version: 1.9.4
-Release: 13%{?dist}
+Release: 14%{?dist}
Epoch: 1
# PEAR, Archive_Tar, XML_Util are BSD
# Console_Getopt is PHP
@@ -40,6 +40,9 @@ Source24: http://pear.php.net/get/XML_Util-%{xmlutil}.tgz
Patch0: php-pear-1.9.4-restcache.patch
# Relocate Metadata
Patch1: php-pear-metadata.patch
+# Fix for new PHP 5.5 unpack format
+# http://pear.php.net/bugs/19746
+Patch2: php-pear-1.9.4-php55.patch
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -55,7 +58,22 @@ Provides: php-pear(Structures_Graph) = %{structver}
Provides: php-pear(XML_Util) = %{xmlutil}
Obsoletes: php-pear-XML-Util < %{xmlutil}-%{release}
Provides: php-pear-XML-Util = %{xmlutil}-%{release}
-Requires: php-cli >= 5.1.0-1
+
+Requires: php-cli
+# phpci detected extension
+# PEAR (date, spl always builtin):
+Requires: php-ftp
+Requires: php-pcre
+Requires: php-posix
+Requires: php-tokenizer
+Requires: php-xml
+Requires: php-zlib
+# Console_Getopt: pcre
+# Archive_Tar: pcre, posix, zlib
+Requires: php-bz2
+# Structures_Graph: none
+# XML_Util: pcre
+# optional: overload and xdebug
%description
@@ -81,6 +99,7 @@ cp %{SOURCE1} .
# apply patches on used PEAR during install
%patch1 -p0 -b .metadata
+%patch2 -p1 -b .php55
%build
# This is an empty build section.
@@ -108,8 +127,8 @@ install -d $RPM_BUILD_ROOT%{peardir} \
export INSTALL_ROOT=$RPM_BUILD_ROOT
-%{_bindir}/php -n -dmemory_limit=32M -dshort_open_tag=0 -dsafe_mode=0 \
- -derror_reporting=E_ALL -ddetect_unicode=0 \
+%{_bindir}/php -dmemory_limit=64M -dshort_open_tag=0 -dsafe_mode=0 \
+ -d 'error_reporting=E_ALL&~E_DEPRECATED' -ddetect_unicode=0 \
install-pear.php --force \
--dir %{peardir} \
--cache %{_localstatedir}/cache/php-pear \
@@ -128,8 +147,8 @@ install -m 755 %{SOURCE11} $RPM_BUILD_ROOT%{_bindir}/pecl
install -m 755 %{SOURCE12} $RPM_BUILD_ROOT%{_bindir}/peardev
# Sanitize the pear.conf
-%{_bindir}/php -n %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/pear.conf ext_dir >new-pear.conf
-%{_bindir}/php -n %{SOURCE3} new-pear.conf http_proxy > $RPM_BUILD_ROOT%{_sysconfdir}/pear.conf
+%{_bindir}/php %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/pear.conf ext_dir >new-pear.conf
+%{_bindir}/php %{SOURCE3} new-pear.conf http_proxy > $RPM_BUILD_ROOT%{_sysconfdir}/pear.conf
%{_bindir}/php -r "print_r(unserialize(substr(file_get_contents('$RPM_BUILD_ROOT%{_sysconfdir}/pear.conf'),17)));"
@@ -143,6 +162,7 @@ pushd $RPM_BUILD_ROOT%{peardir}
%__patch -s --no-backup --fuzz 0 -p0 < %{PATCH0}
popd
%__patch -s --no-backup --fuzz 0 -p0 < %{PATCH1}
+ %__patch -s --no-backup --fuzz 0 -p1 < %{PATCH2}
popd
# Why this file here ?
@@ -232,6 +252,12 @@ fi
%changelog
+* Tue Dec 11 2012 Remi Collet <remi at fedoraproject.org> 1:1.9.4-14
+- add explicit requires on all needed extensions (phpci)
+- fix pecl launcher (need ini to be parsed for some
+ extenstions going to be build as shared, mainly simplexml)
+- add fix for new unpack format (php 5.5)
+
* Wed Sep 26 2012 Remi Collet <remi at fedoraproject.org> 1:1.9.4-13
- move metadata to /var/lib/pear
More information about the scm-commits
mailing list