Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-01-27 05:28:31


On Thursday 27 January 2005 13:17, David Abrahams wrote:
> "sbaranov2" <sbaranov_at_[hidden]> writes:
> > Here's the situation that I'm trying on Windows:
> >
> > import modules ;
> > local XDK = [ modules.peek : XDK ] ;
> > project : requirements <include>"$(XDK)/Xbox/Include" ;
> >
> > Where XDK environment variable is set to "C:\Program Files\Microsoft
> > Xbox SDK", this generates this swarm of include paths:
> >
> > -I"C:\Program\Xbox\Include"
> > -I"Files\Microsoft\Xbox\Include"
> > -I"SDK\Xbox\Include"
> > -I"Xbox\Xbox\Include"
> >
> > First off, am I doing this corectly? If yes, then will this patch
> > help my set up, and what's the easiest way to get the patch? Thanks!
>
> What we really need in order to fix this problem is a GETENV builtin
> (with no automatic space-breaking, obviously). This business of
> peeking the global module for environment settings (and command-line
> variables, for that matter) is and has always been a terrible hack.

Probably, just the "getenv" rule in Jamfile content, that will peek the global
module and reconstruct spaces:

rule getenv ( name )
{
local v = [ module.peek : $(name) ] ;
return $(v:J=' ') ;
}

? It's a bit easier that a new builtin.

- 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