Subject: Re: [boost] [build] Tests automatically create header links, but library builds do not
From: Peter Dimov (lists_at_[hidden])
Date: 2015-01-05 10:08:49
Vladimir Prus wrote:
> I understand you prefer to just always link all headers. I'd be happy to
> apply that change if there are no -1 votes in this thread, and overall
> positive vote, by the time I'm back from public holidays next Monday. See
> http://www.apache.org/foundation/voting.html by what I mean by 'vote'.
> Does that work?
I'm at somewhere below -0.5 by that scale, "don't like it, no rational
justification." My rational justification is:
- The problem is caused by the inability of dependency scanners to track
#includes via a macro;
- This problem can be addressed by somehow informing the dependency scanner
of the hidden dependency;
- The only way that works for all such tools, Boost and non-Boost, is to add
the hidden dependencies as #includes in an #if 0 section;
- Therefore, if a library #includes via a macro, the proper thing to do, as
a courtesy to dependency scanning tools, is to add such a section.
Dependency scanners include bcp, boostdep, b2, and other build systems.
Linking all headers does not address the underlying cause, hence my
preference to not do it and fix the libraries instead.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk