[Pkg-php-pecl] Bug#805222: Bug#805222: php-apcu: FTBFS: PHP Fatal error: Call to a member function getFilelist() on null

Ondřej Surý ondrej at sury.org
Mon Dec 7 16:21:00 UTC 2015


Control: reassign -1 php-pear
Control: found -1 php-pear/5.6.16+dfsg-1
Control: affects -1 php5-apcu

Hi,

thank you for the report, after some debugging it seems this is a
generic error in PEAR instead of bug just in the php-apcu. This should
not affect no users, but it probably broke all PHP extensions, since it
stops honoring packagingroot after calling PEAR_Registry->setConfig()

I have a fix ready and PHP building, and I am ccing Fedora and SuSE
maintainers.

Mathieu, this also applies to your standalone src:php-pear:

diff --git a/PEAR/Command/Install.php b/PEAR/Command/Install.php
index 9d572ed..3b1fec9 100644
--- a/PEAR/Command/Install.php
+++ b/PEAR/Command/Install.php
@@ -848,7 +848,7 @@ Run post-installation scripts in package <package>,
if any exist.
             $pkg = &$instreg->getPackage($param->getPackage(),
             $param->getChannel());
             // $pkg may be NULL if install is a 'fake' install via
             --packagingroot
             if (is_object($pkg)) {
-                $pkg->setConfig($this->config);
+                $pkg->setConfig($this->config, false);
                 if ($list = $pkg->listPostinstallScripts()) {
                     $pn =
                     $reg->parsedPackageNameToString(array('channel' =>
                        $param->getChannel(), 'package' =>
                        $param->getPackage()), true);


This fixes the issue right now, but it should be probably reported
upstream to have a correct fix (since this might break other stuff :)),
but my PEAR account doesn't work right now, so it might take me a while
to report this to upstream.

Cheers,
Ondrej

On Sun, Nov 15, 2015, at 22:18, Chris West (Faux) wrote:
> Source: php-apcu
> Version: 4.0.7-1
> Severity: serious
> Justification: fails to build from source
> Tags: sid stretch
> User: reproducible-builds at lists.alioth.debian.org
> Usertags: ftbfs
> X-Debbugs-CC: reproducible-builds at lists.alioth.debian.org
> 
> Dear Maintainer,
> 
> The package fails to build:
> 
> 	/usr/bin/pear -c debian/pearrc -d download_dir=/tmp -d include_path=/usr/share/php -d php_bin=/usr/bin/php -d bin_dir=/usr/bin -d php_dir=/usr/share/php -d data_dir=/usr/share/php/data -d doc_dir=/usr/share/doc/php5-apcu -d test_dir=/usr/share/php/tests install --offline --nodeps -P /php-apcu-4.0.7/debian/php5-apcu --nobuild ./apcu-4.0.7/package.xml
> PHP Fatal error:  Call to a member function getFilelist() on null in
> /usr/share/php/PEAR/Command/Install.php on line 747
> dh_auto_install: /usr/bin/pear -c debian/pearrc -d download_dir=/tmp -d
> include_path=/usr/share/php -d php_bin=/usr/bin/php -d bin_dir=/usr/bin
> -d php_dir=/usr/share/php -d data_dir=/usr/share/php/data -d
> doc_dir=/usr/share/doc/php5-apcu -d test_dir=/usr/share/php/tests install
> --offline --nodeps -P /php-apcu-4.0.7/debian/php5-apcu --nobuild
> ./apcu-4.0.7/package.xml returned exit code 255
> debian/rules:9: recipe for target 'override_dh_auto_install' failed
> make[1]: *** [override_dh_auto_install] Error 10
> make[1]: Leaving directory '/php-apcu-4.0.7'
> 
> Full build log:
> https://reproducible.debian.net/rb-pkg/unstable/amd64/php-apcu.html
> 
> -- System Information:
> Debian Release: stretch/sid
> APT prefers unstable
> APT policy: (500, 'unstable')
> Architecture: amd64 (x86_64)
> 
> _______________________________________________
> Pkg-php-pecl mailing list
> Pkg-php-pecl at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-php-pecl


-- 
Ondřej Surý <ondrej at sury.org>
Knot DNS (https://www.knot-dns.cz/) – a high-performance DNS server



More information about the Pkg-php-pecl mailing list