Boost logo

Boost-Build :

From: Andre Genereux (andre_genereux01_at_[hidden])
Date: 2005-11-15 16:31:24


So... nobody has any ideas about this then? If you need more info,
I'll be happy to give you what I can.

Andre Genereux

--- In jamboost_at_[hidden], "Andre Genereux"
<andre_genereux01_at_y...> wrote:
>
> The directory structure diagram got messed up because the whitespace
> was removed. Here it is again, substituting periods for spaces:
>
> src---|Jamroot
> ......|
> ......|---lib1---|Jamfile
> ......|..........|World.h
> ......|..........|World.cxx
> ......|..........|
> ......|..........|---lib2---|Jamfile
> ......|.....................|Hello.h
> ......|.....................|Hello.cxx
> ......|
> ......|---app---|Jamfile
> ................|helloWorld.cxx
>
> --- In jamboost_at_[hidden], "Andre Genereux"
> <andre_genereux01_at_y...> wrote:
> >
> > Consider the following directory structure:
> >
> > src---|Jamroot
> > |
> > |---lib1---|Jamfile
> > | |World.h
> > | |World.cxx
> > | |
> > | |---lib2---|Jamfile
> > | |Hello.h
> > | |Hello.cxx
> > |
> > |---app---|Jamfile
> > |helloWorld.cxx
> >
> > As you may guess, the lib Jamfiles contain lib targets, and the app
> > Jamfile contains an exe target.
> >
> > I want to change the build directory of each one from bin to build
> > (for whatever reason). Thus, I place the following at the top of my
> > Jamfiles:
> >
> > project proj-name
> > : build-dir build
> > ;
> >
> > The build-project for lib2 could also go in the lib1 Jamfile, the
> > effect is identical.
> >
> > I expect this to do the following:
> > lib1 will be built in src/lib1/build/etc...
> > lib2 will be built in src/lib1/lib2/build/etc...
> > app will be built in src/app/build/etc...
> >
> > When I run bjam from src, lib1, or app, this is exactly what happens.
> > However, if I run it from lib2, lib2 builds in:
> >
> > src/lib1/build/lib2/gcc...
> >
> > This is entirely not what I want. It also seems kind of silly that the
> > library will built in different directories depending on where you run
> > bjam. Is this a bug, or a feature that can hopefully be circumvented?
> >
> > In case you need them, here are my Jamfiles:
> >
> > ------------------
> >
> > src/Jamroot:
> >
> > project test-proj ;
> >
> > using gcc ;
> >
> > build-project lib1 ;
> > build-project lib1/lib2 ;
> > build-project app ;
> >
> > ------------------
> >
> > src/lib1/Jamfile:
> >
> > project world
> > : build-dir build
> > ;
> >
> > lib World : World.cxx lib2//Hello
> > : <include>.
> > : : <include>. ;
> >
> > ------------------
> >
> > src/lib1/lib2/Jamfile:
> >
> > project hello
> > : build-dir build ;
> >
> > lib Hello : Hello.cxx
> > : <include>.
> > : : <include>. ;
> >
> > ------------------
> >
> > src/app/Jamfile:
> >
> > project helloworld
> > : build-dir build
> > ;
> >
> > exe HelloWorld : helloWorld.cxx ../lib1//World
> > : <include>. ;
> >
> > ------------------
> >
> > Andre Genereux
> >
>

 


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