
* Andrey Semashev wrote:
On 12/12/16 23:12, Christian Ullrich wrote:
In the "toolset=msvc-14.0 link=shared runtime-link=shared" build, several static libraries are built for no discernible reason. As far as I can tell by watching file system operations (using Sysinternals procmon), these libraries are not accessed again after creation.
The same happens on Linux with gcc as well. I think there's a dependency on the static build of Boost.Test somewhere and Boost.Timer, Boost.Chrono and Boost.System are built as its dependencies. I couldn't find what library is causing the dependency on Boost.Test though.
I just built each library separately, and the results are enlightening. Based on the list of libraries that b2 prints the building/not building status for, these are all results that are different from what I expected to get: - coroutine2: No statics, DLL for context, no output for coroutine2 - metaparse: Statics for chrono, system, timer, unit_test_framework, no output for metaparse - test: Statics and DLLs for chrono, system, test_exec_monitor, timer, DLLs for prg_exec_monitor, unit_test_framework, no output explicitly named "test" I did not attempt python, and had no build activity for mpi and graph_parallel, which is clearly due to missing external dependencies. However, I found the culprit, and it looks like I've been chasing wild geese all the time. test has a dependency on timer, which pulls in chrono and system. Building --without-test gives, at last, the expected result. Anyway, libs/metaparse/build/Jamfile.v2 looks like it may not be meant to be used when building all libraries, and I think there is something wrong with coroutine2 also; its config.hpp and Jamfile.v2 do not seem quite clear on whether it is "coroutine" or "coroutine2" or "couroutines2". But I'm just guessing here. -- Christian