Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-12-27 04:19:00


On Sunday 26 December 2004 00:36, David Abrahams wrote:

> > but my primary point was not in specific placement, it's the fact that -
> > - build directory for one project is "shared"
>
> Among its subprojects? Among its dependents?

Among dependents.

> > - the project is not modified often
> >
> > So, cleaning that project when doing --clean in dependent project is not
> > good idea.
>
> I have no argument there, as I've been trying to tell you!
>
> But I still don't see why it's relevant to what we were talking about.

<blush> Seems like the example I've given was relevant to another email posted
at that time. An example relevant to this question is:

1. You have .y -> .h transformation chain, which does not
depend on any properties at all.

2. You build debug and release version and get
bin/debug/gcc/a.obj
bin/debug/gcc/b.obj
bin/parser.h

3. You run

bjam --clean debug

and "bin/parser.h" is removed too, because it's in dependency graph of
debug variant.

4. You run

bjam release

and now all your files which include parser.h are rebuild too.

IIRC, this is the behaviour Jurgen did not like.

My current idea is that we should use 'flags' rules to detect which properties
are in path, but also provide "<in-path>" feature which can control it.

1. <in-path>python-version adds the mentioned feature to the path
2. <in-path>all adds all the base (non-free) features to the path
(giving current behaviour)

Thoughts?

- Volodya

 


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