Red Hat Bugzilla – Bug 173810
RFE: php-pear should be built separately from main PHP package
Last modified: 2007-11-30 17:11:17 EST
Although PEAR is currently bundled with the main PHP distro, having PEAR built
as part of the main PHP build is rather inconvenient. It prevents upgrading
PEAR separately (upstream PEAR is now considerably newer than the PEAR bundled
with PHP, and includes highly useful fixes to RPM handling). Additionally, as we
have seen recently, security or other bugs within bundled PEAR packages (e.g.
XML_RPC) require the rebuild of the entire PHP suite to fix a couple of lines of
runtime PEAR code.
Ideally php should be compiled using --without-pear, and a separate PEAR SRPM
should be made available. I have done some preliminary investigation and it
seems that the script on http://go-pear.org/ is able to bootstrap a minimal PEAR
installation into a buildroot, which could then be packaged up as php-pear (not
forgetting appropriate Provides: - see bug #173806)
As an aside, Gentoo have apparently reached the same conclusion:
NB a repackaging could also potentially slim down a bit - as per bug #173808
Tim, thanks for filling all the reports.
I definitely agree that splitting out php-pear to a separate source RPM is a
good idea. It really needs to be done from a tarball not from running a script;
have you attempted that?
The PEAR-x.y.z.tgz tarballs available from: http://pear.php.net/package/PEAR
should be the starting point. Possibly the pear/install-pear.php script from
the PHP tarball is needed to boostrap the installation.
Yep, I appreciate it needs to be built from a source tarball to be packaged
properly. I only meant using go-pear to do a local installation in conjunction
with the source tarball, not trying to pull it in remotely (I'm not sure if it
can use a local source rather than remote though). I have been poking around
with the PEAR-1.4.5.tgz tarball a bit. I hadn't yet looked at how the PHP source
tarball installs PEAR, but the pear/install-pear.php script from the main PHP
tarball looks like it's what we should be focusing on.
I'll dig a bit deeper when I get a chance; at the moment I'm trying to roll up
some of the low-hanging (and more urgent, for me) fixes (e.g. bug #173806, bug
#173814, bug #173980) into a local build so that I can install a vanilla
(locally-built) php/php-pear RPM and be able to do "pear makerpm [package] &&
rpmbuild -ba [spec]" and actually get an RPM that works to at least a basic
level of usefulness and conforms to conventions.
I've checked in initial php-pear packaging now, it will be built shortly along
php-pear-1.4.5-2 on its way to Raw Hide, file bugs if there are problems.