Boost logo

Boost-Build :

From: Eoin boost.build (eoin-keyword-boost.jam.dca6c0_at_[hidden])
Date: 2006-04-30 12:25:40


> You can just put the "use-project" lines in your Jamroot. I was doing
> things like "use-project boost : misc/boost ;" in my Jamroot, then any
> of the projects that needed boost would just use "/boost" in their
> sources. Now my setup is slightly more flexible. I've got "libs",
> "misc", and "progs" dirs under the directory with my Jamroot.jam file.
> Each of those sub-directories has project (lib or exe) directories under
> them with a "build.jam" file. In Jamroot.jam, I have code like this:
>
> local JAMFILE = build.jam ;
> local sub_dirs = [ MATCH .*/(.*)/.* : [ glob */* ] ] ;
> local search_dirs = [ MATCH .*/(.*/.*)/.* : [ glob
> $(sub_dirs)/*/$(JAMFILE) ] ] ;
> for local d in $(search_dirs) {
> local p = [ MATCH .*/(.*) : $(d) ] ;
> use-project /$(p) : $(d) ;
> }
>
> So, each directory (like misc/tiff) that has a build.jam file in it gets
> loaded as a project with the name of the directory. E.g. misc/tiff will
> get loaded as /tiff and can be referred to from any other project as
> /tiff. This lets me add new projects without having to manually add
> them to the Jamroot.jam, and projects can be moved around (within
> limits, of course) without having to modify the projects that use them.
>

Thank you for your reply Phillip, I see there a lot more power in boost
build than I previously realized. I must look into automating more of the
directory structure, to try and come up with as similarly flexible a
solution as yours seems to be.

Kind Regards, Eoin


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