Subject: Re: [boost] [log][regression] Error with Boost.Lob build jamfile breaks MinGW regression tester in develop
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2016-07-09 11:54:42


On 09/07/2016 17:13, Andrey Semashev wrote:
> It looks like it might be related to the <conditional> requirements in
> the project. Can you try commenting these lines in log/build/Jamfile.v2
> individually?

Good catch. I've commented code and found the error is in the function

rule check-message-compiler ( properties * )

I've changed the line 117:

  if <target-os>windows in $(properties)

to

  if <target-os>windows in $(properties) && !<toolset>gcc in $(properties)

and the error goes away. It seems that the line 121:

  local has_mc = \
   [ configure.builds (...) : $(properties) : message-compiler ] ;

is where the problem lies.

The Boost.log documentation states that "at some point the library will
require a Message Compiler tool (mc.exe), which is not available in
MinGW, Cygwin and some versions of MSVC Express Edition". The check
seems to hurt Boost.Build when using a MINGW environment.

I don't know if my change makes any sense as windows supports many
compilers (clang, intel, borland, ) so maybe the "if" condition should
be more complex. I've applied the change locally and regression tests
are up again.

Best,

Ion