Boost logo

Boost-Build :

Subject: Re: [Boost-build] What does bjam -a mean by "everything"?
From: Vladimir Prus (ghost_at_[hidden])
Date: 2009-06-07 05:25:26


> bjam -a supposedly means "Rebuild everything", according to the help
> option, but I have no idea what everything means. Here's my example.
> My layout is
>
> trunk
> Jamroot
> lib/lib_a
> Jamfile
> lib/tools
> Jamfile
> lib/utilities
> Jamfile
> lib/raw
> Jamfile
>
> Although tools depends directly on lib_a and raw, calling bjam -a
> lib/tools only recompiles lib/tools and _lib/utilities_.
>
> In the Jamroot, we use the use-project rule to alias the libraries:
>
> use-project /proj-libs/lib_a : lib/lib_a ;
> use-project /proj-libs/tools : lib/tools ;
> use-project /proj-libs/utilities : lib/utilities ;
> use-project /proj-libs/raw : lib/raw ;
>
> The lib/tools/Jamfile is :
> lib tools
> : [ glob src/*.cpp ]
> /proj-libs/lib_a
> /proj-libs/raw
> # Aliases for boost and other third-party libs
> : <include>./include/tools
> <include>./src
> <link>static
> :
> : <include>./include
> ;
>
> The lib/lib_a/Jamfile is :
> lib lib_a
> : [ glob *.cpp ]
> /proj-libs/utilities//utilities
> # third-party libs
> : <include>.
> <link>static
> :
> : <include>.
> ;
>
> The lib/raw/Jamfile is :
> lib raw
> : [ glob src/*.cpp ]
> /proj-libs/utilities//utilities
> /proj-libs/lib_a//lib_a
> # third-party libs
> : <include>./include
> <link>static
> :
> : <include>./include
> <source>/proj-libs/utilities//utilities
> ;
>
> Finally the lib/utilities/Jamfile is the simplest of all
> lib utilities
> : [ glob src/*.cpp ]
> # third party libraries
> : <include>./include
> <link>static
> :
> : <include>./include
> ;
>
>
> The only thing I can think of is the
> <source>/proj-libs/utilities//utilities line in lib/raw/Jamfile. But
> that should just effectively put it in the list of sources for
> lib/tools, where /proj-libs/raw and /proj-libs/lib_a already are. Is it
> that and the second slash? Does everything mean "only explicit targets,
> not sources only referred to by project?"
>
>

Can you please provide a minimal example reproducing this problem,
as an archive file of some popular format?

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