Subject: Re: [Boost-build] Handling libraries that are built with external build systems
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2016-06-08 11:02:08
On 06/08/2016 02:21 AM, Christian Aichinger wrote:
> Steven wrote:
>> Try using make instead of notfile. (warning untested)
>> make libextlib.a : : @build_extlib ;
>> alias extlib : libextlib.a ;
>> (Boost.Build should deduce that it's
>> a static library from the .a extension.)
> Unfortunately that didn't quite solve the problem. The issue is that the src targets are built *before* build_extlib. That doesn't work, as src/* relies on C++ headers that are generated by build_extlib.
> There seems to be a pretty clear dependency relationship from src//target -> ext/external-lib//extlib -> ext/external-lib//build_extlib. Why is this order not honored?
The issue here is that at the low level, the
executable has a dependency on the library,
but the object files do not. In addition,
for the #include scanner to work, Boost.Build
needs to know what header files are created.
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk