Boost logo

Boost Testing :

From: David Abrahams (dave_at_[hidden])
Date: 2007-03-23 12:31:43


on Fri Mar 23 2007, Vladimir Prus <ghost-AT-cs.msu.su> wrote:

>>
>> # Set up the PYTHON variable to point at the interpreter.
>> flags python.capture-output PYTHON $(condition:J=/) :
>> $(interpreter-cmd) ;
>
> The version before your changes had this:
>
> # Set up the PYTHON variable to point at the interpreter.
> # If no specific condition is specified, set global value
> # If condition is specified, set PYTHON on target. It will
> # override the global value.
> if ! $(condition)
> {
> PYTHON = $(interpreter) ;
> }
> else
> {
> flags python.capture-output PYTHON $(condition:J=/) : $(interpreter) ;
> }
>
> So, if condition is empty, you get the global PYTHON. You last code just has
>
> flags python.capture-output PYTHON $(condition:J=/) : $(interpreter-cmd) ;
>
> which explains the problem.

Right, I changed it because the original code was bogus :). It would
still be easy to trigger the same problem with the original code. All
it takes is

     python : : : : : <toolset>gcc ;
     python : : /usr/local/gcc-4.0.1/bin/python2.4 : : : <toolset>gcc <toolset-gcc:version>4.0.1 ;

> The way you fixed the problem just now seems
> OK for me as well, though.

Good

> Do you think your last checkin fixed everything and Martin should try
> again?

I don't know about "everything," but I hope so. Isn't Martin running
tests continuously anyway? I hope everyone is. If I fixed it for one
person and broke it for everyone else, that won't do either.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

Boost-testing list run by mbergal at meta-comm.com