Boost logo

Boost-Build :

From: Phil Seaver (phil_at_[hidden])
Date: 2007-11-23 20:14:33

Mat Marcus wrote:
> I've made a number of changes to my universal-binary supporting
> darwin.jam patch (shipping with the Adobe Source Library) in order to
> address the concerns raised by Rene and others at
> :
> My current version supports invocations like:
> bjam architecture={combined,x86,power} link={shared,static}
> address-mode={64,32}
> That is, universal builds are now supported, along with 64 bit builds.
> I'd like to ask for the help from a few volunteers who'd be willing to
> test it out, before I submit my patch for consideration here. Anyone
> interested in helping me test it?

Definitely. I'm on vacation right now, but I'll look at it soon
(Tuesday, at the latest, I think). I've been wanting to add support for
it myself but hadn't gotten around to it yet.

> One of the issues that remains pertains to folder naming. On the mac,
> if a build doesn't specify an -arch parameter, the architecture (and
> perhaps the address model) of the host machine is used. I'm not really
> comfortable with the same folder path meaning different things on
> different machines. So, I'd like to do something like the following in
> darwin.jam (in invented pseudo code)
> SWITCH(on result of /usr/bin/arch) { # host machine's architecture
> CASE(ppc) use <architecture>power/<address-mode>32 as the default
> CASE(i386) use <architecture>x86/<address-mode>32 as the default
> CASE(ppc64) use <architecture>power/<address-mode>64 as the default
> CASE(x86_64) use <architecture>x86/<address-mode>64 as the default
> DEFAULT error, unknown arch
> Can someone guide me in towards the right way to express this in bbv2?

What about "feature.set-default architecture : power ;", etc.? Also,
for the switch, you may be able to use the result of "[ modules.peek :
OSPLAT ]" -- it's X86 on my intel mac and PPC on my powerpc mac. I
don't know if it differs on a 64-bit mac.


Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at