Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2005-04-06 11:11:07


Vladimir Prus <ghost_at_[hidden]> writes:

> On Tuesday 05 April 2005 18:22, David Abrahams wrote:
>> Vladimir Prus <ghost_at_[hidden]> writes:
>> > Folks,
>> > I think it would be nice to make user-config.jam into a project. So, you
>> > can use all the rules you can use inside Jamfile. Also, projects without
>> > explicit parents will be considered children of user-config.jam.
>>
>> Interesting. Can we get rid of Jamroot, then <.05 wink>?
>
> Not yet ;-) Those are unrelated things.
>
>> > The first part of the change mean you can define targets, constants and
>> > have use-project calls in user-config jam. This is already possible if
>> > you add
>> >
>> > import project ;
>> > project.initialize $(__name__) ;
>> >
>> > but the above is not nice.
>>
>> Shouldn't we inject that into site-config.jam automatically?
>
> That's why I'm suggesting. Well, I suggested this for user-config.jam, but
> site-config.jam is the same story.

Not exactly. You can't have both be the roots of otherwise-unrooted
projects. Well, I guess you could have site-config be the parent of
user-config...?

>> > The second part of the change means that all Jamroot files will inherit
>> > properties from user-config.jam. So, you can write
>> >
>> > project : requirements <include>/home/ghost/local/include ;
>> >
>> > in user-config.jam and all your projects will get this requirements. I
>> > recall this was requested once. The code change is pretty trivial.
>> >
>> > Comments?
>>
>> Good ideas all around. But then why not make *all* projects
>> subprojects of user-config.jam?
>
> *Direct* subprojects?

No, of course not.

> Well, then either:
> 1. Projects won't be direct subprojects of Jamfile in the nearest parent
> directory, or
> 2. Projects can have several parents
> and neither looks very good.
>
> Currently we might have his project hiererchy:
>
> - Jamroot
> - Jamfile at subdir
> - Jamfile at subdir/subdir2
>
> And each project inherits attributes from the parent. I just suggest to make
> this:
>
> - site-config.jam
> - user-config.jam
> - Jamroot
> - Jamfile at subdir
> - Jamfile at subdir/subdir2

Good, I guess we're thinking alike.

-- 
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