Re: Fixing make lcov with TESTS variable

From: 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 ===================================================================
--- 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/' -d ( . $(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) \
Is there an issue if I'd commit this? Regards, Felix
-- Email: christopher.jones@oracle.com Tel: +1 650 506 8630 Blog: http://blogs.oracle.com/opal/ Free PHP Book: http://tinyurl.com/ugpomhome

« previous php.qa (#65568) next »