Boost logo

Boost Testing :

From: Robert Ramey (ramey_at_[hidden])
Date: 2005-01-31 12:16:39


Here is what I believe is the problem. I'm not sure how to fix it and would
appreciate any help.

The DLL version of the serialization library specifies as a requirement that
the build be done with <runtime-link>dynamic .

boost-base.jam contains the following:

# If the toolset matches the given regex pattern, modify the
# subvariant-path and properties for static linking
rule force-NT-static-link ( pattern : toolset : subvariant-path properties
* )
{
    if $(NT) && [ MATCH $(pattern) : $(toolset) ]
    {
        properties =
          [ difference $(properties) : <runtime-link>dynamic ]
          <runtime-link>static
          ;
    }

    return $(subvariant-path) $(properties) ;
}

# Stick this rule name in your requirements if you are building code
# which requires locale support. It handles the metrowerks-specific
# case that locale support demands the static version of the runtime
# library.
rule std::locale-support ( toolset variant : subvariant-path properties * )
{
    return [
      force-NT-static-link .*(metrowerks|cwpro|cw).*
        : $(toolset) : $(subvariant-path) $(properties)
          ] ;
}

So - with code view we have the situation where by <runtime-link>static and
<runtime-link>dynamic are simultaneously required. Upon detecting this -
bjam aborts.

I'm not really sure what to do about this. I believe this problem will
occur for any library which builds a DLL and requires locale support.

Any help suggestions would be appreciated.

Robert Ramey

Aleksey Gurtovoy wrote:
> Here's the corresponding fragment of the bjam log:
>
> ...
> boost-test(RUN) "regex/regex_timer" :
> "libs\regex\example\timer\regex_timer.cpp"
> test_polymorphic_text_archive
> boost-test(RUN) "serialization/test_polymorphic_text_archive" :
> "libs\serialization\test\test_polymorphic.cpp"
> "libs\serialization\test\test_polymorphic_A.cpp"
> test_polymorphic_text_archive_dll
> <@boost!libs!serialization!build>boost_serialization.dll: required
> property <runtime-link>static incompatible with <runtime-link>dynamic
> [bjam aborts]
>
> Robert?


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