Boost logo

Boost-Build :

From: Rene Rivera (grafik666_at_[hidden])
Date: 2003-07-16 09:57:23


[2003-07-16] Paul Schmidt wrote:

>--- In jamboost_at_[hidden], Rene Rivera <grafik666_at_r...> wrote:
>> >So some binaries need to be built for the EE, and some for the IOP.
>> I'd say use the <architecture> and <instruction-set> features which
>you can
>> specify on a per top level target basis. Look at the how the
>gcc-tools.jam
>> does it to support building for supporting the various CPUs that gcc
>> supports.
>
>Hmmm. If I interpret your phrase, "per top level target basis"
>correctly, I don't think that helps me.

You misunderstood. The "top level targets" are the ones you regularly deal
with, the targets that you define in the Jamfile: exe, lib, dll... There are
other targets generated internally, for example all the source files, and
the generated *.obj or *.o files. When I said you can specify it on a top
level target basis I meant this, for example:

exe test : a.cpp b.cpp : <instruction-set>ultrasparc : debug ;

But because a.cpp and b.cpp are not top level targets you can't tell BB to
compile a.cpp with one instruction set and b.cpp with another.

>I want to be able to run bjam
>on a TOP jamfile, and have some subprojects build binaries targeted to
>the Playstation2 EE processor, and some binaries targeted to its IOP
>processor.
>
>Can I do something like this: In each subproject, do something like:
>
>local on_ps2ee ;
>ps2ee = 1; # or not
>
>And in the tools jam file, write somthing like:
>
>if $(ps2ee )
> flags snps HDR_PATHS : $(SCE)\\EE\\INCLUDE
>else
> flags snps HDR_PATHS : $(SCE)\\IOP\\INCLUDE
>endif
>
>Yeah, well, that's probably wrong, but that should convey what I'm
>trying to do. BTW, I want to keep the local jamfiles as simple as
>possible, even at the expense of making the tools files more complex.

In the tools file you add something like what the gcc-tools.jam does:

flags snps HDRS <instruction-set>ee : $(SCE)\\EE\\INCLUDE ;
flags snps HDRS <instruction-set>iop : $(SCE)\\IOP\\INCLUDE ;

AND, you modify features.jam to add "ee" and "iop" as valid values for the
instruction-set feature.

-- grafik - Don't Assume Anything
-- rrivera (at) acm.org - grafik (at) redshift-software.com
-- 102708583 (at) icq

 


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