PEAR Build fix
| From: | Rasmus Lerdorf | Date: | Wed, 30 Jul 2008 14:12:35 +0000 |
| Subject: | PEAR Build fix | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-39463@lists.php.net to get a copy of this message | ||
Could someone please fix this:
Generating phar.php
Generating phar.phar
Pear package PHP_Archive found: API Version: 1.0.0 (stable).
Pear package PHP_Archive or Archive.php class file not found.
clicommand.inc
directorygraphiterator.inc
directorytreeiterator.inc
invertedregexiterator.inc
pharcommand.inc
phar.inc
Build complete.
Don't forget to run 'make test'.
The problem is that in phar.php it does a
pear list-files PHP_Archive
This outputs a bunch of filenames ending with:
test /usr/local/lib/php/test/PHP_Archive/tests/test_require.php
test /usr/local/lib/php/test/PHP_Archive/tests/test_tar.tar
test /usr/local/lib/php/test/PHP_Archive/tests/twophars.phpt
php /usr/local/lib/php/PHP/Archive.php
in phar.php the regex to check if Archive.php exists looks like this:
if (preg_match(",^php[ \t]+([^ \t].*pear[\\\\/]PHP[\\\\/]Archive.php)$,", $ent, $matches)) {
which is obviously not going to match that last Archive.php line. So, two fixes here. First, fix the error message to more accurately describe what is going on. And second, assuming /usr/local/lib/php/PHP/Archive.php is the right file here, fix the regex.
-Rasmus