Boost logo

Boost-Build :

Subject: Re: [Boost-build] Too much warning noise
From: Mat Marcus (mat-lists_at_[hidden])
Date: 2008-09-29 16:09:43


On Mon, Sep 29, 2008 at 8:46 AM, Vladimir Prus <ghost_at_[hidden]> wrote:
> On Saturday 27 September 2008 22:58:39 Mat Marcus wrote:
>> On Sat, Sep 27, 2008 at 3:10 AM, Vladimir Prus <ghost_at_[hidden]> wrote:
>> > I think there are two levels of possible supressions here:
>> >
>> > - you should not get any warning for a library you don't build
>> > - you probably should be able to indicate you really don't
>> > want to see a warning any more of a library you build. Say, if
>> > you use boost.graph, but don't care about graphml.
>> >
>> > I think that both things are needed. But I suspect that for big
>> > projects, you better not even 'configure' things that don't use.
>> > Say, if you use Boost, but don't use Boost.Graph, and you have
>> > 50 other things to configure already, then you should not even
>> > see anything about Boost.Graph. Which means that to solve your
>> > immediately problem, we don't need to first write generic configuration
>> > framework -- but rather make Boost.Graph not to emit the warning
>> > when it's not built.
>> >
>> > Does this sound sane? If so, I'll put together a patch.
>>
>> Yes, please, that would help a lot. Thanks!
>
> I've checked in these patches:
>
> http://svn.boost.org/trac/boost/changeset/49006
> http://svn.boost.org/trac/boost/changeset/49008
>
> which eliminates the warning from Boost.Graph if Boost.Graph
> is not been built. Please let me know if this seem to work
> for you. John, do you think you can try this trick for
> Boost.Regex? I'll probably handle MPI some day soon.
>
> - Volodya

I tried the following against test on my 1.36.0 boost/boost-build.

1. Apply the two patches above
2. Grab message.jam from trunk and add it to /v2/tools/
3. Build my boost-dependent (though graph, pythin, regex indepenedent)
library with boost build

Result:
Before applying patches:
###
warning: Graph library does not contain optional GraphML reader.
note: to enable GraphML support, set EXPAT_INCLUDE and EXPAT_LIBPATH to the
note: directories containing the Expat headers and libraries, respectively.
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
WARNING: No python installation configured and autoconfiguration
         failed. See http://www.boost.org/libs/python/doc/building.html
         for configuration instructions or pass --without-python to
         suppress this message and silently skip all Boost.Python targets
Building Boost.Regex with the optional Unicode/ICU support disabled.
Please refer to the Boost.Regex documentation for more information
(don't panic: this is a strictly optional feature).
...
###

After applying patches:
###
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
WARNING: No python installation configured and autoconfiguration
         failed. See http://www.boost.org/libs/python/doc/building.html
         for configuration instructions or pass --without-python to
         suppress this message and silently skip all Boost.Python targets
Building Boost.Regex with the optional Unicode/ICU support disabled.
Please refer to the Boost.Regex documentation for more information
(don't panic: this is a strictly optional feature).
...
###

Conclusion: in my configuration it appears that you have successfully
removed 3 out of the 14 lines of warning noise.

Great start, thanks,
Mat


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