On 09/08/2011 05:07 AM, Alexey Shein wrote:
Hello!
I've made some improvements to run-tests.php:
1) Autoguessing TEST_PHP_EXECUTABLE and TEST_PHP_CGI_EXECUTABLE if
they're not provided, i.e. assume they have value 'auto'. You can
still pass your own value as usual.
2) Added option -n (use no php.ini) to the shebang line
(#!/usr/bin/php -n) so it would run more reliably on some hosts. My
Ubuntu setup did not have E letter in variables_order (i.e.
variables_order=GPCS) so $_ENV array was empty and some tests were
skipped when they could be run.
3) Some better error handling of wrong paths

So now you can run run-tests.php with just
$ ./run-tests.php ext
instead of
$ TEST_PHP_EXECUTABLE=auto php -n run-tests.php ext

You can also run run-tests.php from sub-dir, it will correctly guess
'auto' as well:
$ cd ext/
$ ../run-tests.php zlib

Please, review this patch and, if there's no objections, I will
prepare 5.4 and 5.3 versions too.





I don't have a problem with the intent to make it easier and more
failsafe.  In particular I'm +1 on autoguessing, which might be a
marginally contentious change for some developers.

A few of us build PHP outside the svn source tree.  The following
modification to your patch fixes the intended autodetection in this
scenario:

    if ($php == 'auto') {
        $php = realpath($CUR_DIR . '/sapi/cli/php');
        if (!$php) {
            $php = realpath(__DIR__ . '/sapi/cli/php');
        }
        putenv("TEST_PHP_EXECUTABLE=$php");
    }
    $environment['TEST_PHP_EXECUTABLE'] = $php;


It allows the following to work for me:

    cd ~/phpbuild
    ./sapi/cli/php -n ~/phpsrc/php/php-src/branches/PHP_5_4/run-tests.php 
/tmp/array_bind_001.phpt

Since run-tests.php is kept in sync on all branches, you'll only need
one version of the patch.

Chris

--
Email: christopher.jo...@oracle.com
Tel:  +1 650 506 8630
Blog:  http://blogs.oracle.com/opal/

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to