Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2006-01-27 11:26:41


Vladimir Prus <ghost_at_[hidden]> writes:

> On Saturday 21 January 2006 01:47, David Abrahams wrote:
>
>> > Currently
>> >
>> > lib a ;
>> >
>> > is interpreted as searched library named "a", that is you'll get -liba in
>> > command line on linux, and a.lib on Windows. So your proposal conflicts
>> > with the current semantics (proposed by you, as well). Using presense or
>> > absense of usage-requirements in "lib" to determine if that's header-only
>> > library or not does not seem reliable to me.
>>
>> Why not? To me it seems reliable and only slightly obtuse.
>
> For example:
>
> lib a
> : # no sources
> : # no requirements
> : # no default build
> : <include>whatever ;
>
> Is this a header-only library? Or a searched library with extra usage
> requirements?

OK.

>> Some other possibilities:
>>
>> lib a : : prebuilt ;
>> lib a : : system ;
>> lib a : : search ; # I like this one
>> lib b : : header-only ; # And this one
>
> This overloads the third argument of "lib" -- elsewhere, it means requiements.

Yes, why couldn't that be a requirement, i.e. a property of the
target?

>> prebuilt-lib a ;
>> header-only-lib b;
>
> I like this one. I'm not sure we need 'prebuilt-lib' as we current have a way
> to express that, but 'header-only-lib' can be a more readable alternative to
> 'alias'.
>
> Would you like to add this rule to builtin.jam?

It always comes down to something like that, doesn't it? ;-)
OK, I'll try to get to it. Where should the docs and tests be
changed?

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

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