php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #55672 Autoguessing TEST_PHP_EXECUTABLE if none is provided in run-tests.php
Submitted: 2011-09-12 12:29 UTC Modified: 2020-08-10 09:27 UTC
Votes:1
Avg. Score:3.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: shein@php.net Assigned: nikic (profile)
Status: Closed Package: Testing related
PHP Version: trunk-SVN-2011-09-12 (SVN) OS:
Private report: No CVE-ID: None
 [2011-09-12 12:29 UTC] shein@php.net
Description:
------------
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.

Autoguessing is done this way:
Looking for ./sapi/cli/php from the current directory, and, if not found
from directory where run-tests.php script is resides (Christofer Jones 
suggestion). 
php-cgi is looked for the same way.

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




Patches

autoguessing-php-executable (last revision 2011-09-12 12:32 UTC by confik at gmail dot com)

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2011-09-12 14:19 UTC] laruence@php.net
how about use $0 ?
 [2011-09-15 20:38 UTC] shein@php.net
This patch is not about guessing php executable that runs run-tests.php, but is 
about php binary to be tested, these are often different binaries.
 [2011-09-26 22:14 UTC] tyrael@php.net
-Package: *Configuration Issues +Package: Testing related
 [2011-09-26 22:50 UTC] tyrael@php.net
Alex, maybe you should submit the getenv part of the patch separately to 
https://bugs.php.net/bug.php?id=53617 as it seems that we have a general agreement 
on fixing that.

Tyrael
 [2020-08-10 09:27 UTC] nikic@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: nikic
 [2020-08-10 09:27 UTC] nikic@php.net
Nowadays run-tests.php defaults to using PHP_BINARY (formerly -P), as usually the same binary is used for running and testing.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Oct 31 22:01:27 2024 UTC