Re: Fixing make lcov with TESTS variable
| From: | Christopher Jones | Date: | Sat, 05 Jun 2010 18:24:45 +0000 |
| Subject: | Re: Fixing make lcov with TESTS variable | ||
| References: | 1 | Groups: | php.qa |
| Request: | Send a blank email to php-qa+get-65568@lists.php.net to get a copy of this message | ||
Felix,
Since Jani (the build expert) isn't active, check with Nuno on this.
It would be good to have a fix so I don't have to keep editing the
Makefile!
It seems inherently wrong to ignore the variable: perhaps the intent
was for it to be set in the parent shell like you set PHP_EXECUTABLE.
I notice phpize installs from PECL will set the variable in the
Makefile (though there is no Makefile.gcov).
Chris
On 06/05/2010 07:07 AM, Felix De Vliegher wrote:
Hi all During our testfest, Patrick Allaert was looking at fixing the issue when you want to get code coverage for only a specific part of the testsuite, eg: $ make lcov TESTS=ext/date/ This wasn't working anymore for quite some time, with the cause being an error in the generated makefile. I've created a diff for Makefile.gcov, which is used to generate the Makefile when configuring PHP. The issue here is that $(PHP_MODULES) is always empty, and sourcing it doesn't work. Also, the tests/ directory was hardcoded instead of using the $(TESTS) variable. ~/svn/php-5.3$ svn diff Makefile.gcov Index: Makefile.gcov ===================================================================-- Email: christopher.jones@oracle.com Tel: +1 650 506 8630 Blog: http://blogs.oracle.com/opal/ Free PHP Book: http://tinyurl.com/ugpomhome--- Makefile.gcov (revision 300180) +++ Makefile.gcov (working copy)@@ -13,7 +13,7 @@TEST_PHP_EXECUTABLE=$(PHP_EXECUTABLE) \ TEST_PHP_SRCDIR=$(top_srcdir) \ CC="$(CC)" \ - $(PHP_EXECUTABLE) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php -d 'extension_dir=modules/' -dIs there an issue if I'd commit this? Regards, Felix( . $(PHP_MODULES) ; echo extension=$$dlname)tests/; \ + $(PHP_EXECUTABLE) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php -d 'extension_dir=modules/' $(TESTS); \ elif test ! -z "$(SAPI_CLI_PATH)"&& test -x "$(SAPI_CLI_PATH)"; then \ NO_INTERACTION=1 \ TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \