Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2001-10-11 11:56:50


----- Original Message -----
From: "Eric Ford" <eford_at_[hidden]>

> > > > What in particular did you find to be complicated?
> > > The only things I tried were to get it to build only one library
> and
> > > to get it to build only one version of that library. (No need to
> > > explain how.) Also, I tried to add a dependancy with a rule to
> run a
> > > program to generate a file.
> > Ah; what rule was that?
>
> I don't know the jam terminology. With make it would have been
>
> foo: bar baz
> bar baz > foo

# re-use this
rule command-output # target : command
{
    # we don't want to treat the command like a target, so stick it "on"
    # the target, and dispatch to command-output-action
    command on $(<) = $(>) ;
    command-output-action $(<) ;
}
actions command-output-action
{
    $(command) > $(<)
}

# in your jamfile
command-output scratch.txt : foo bar baz ;

I think there's a built-in rule in Jambase that does something like this.
Oh, yeah: see GenFile in the Jambase documentation. It is a bit more
sophisticated, but does something similar.

> > > Can it have some
> > > defaults (e.g current directory, home directory, /etc/,)?
> > Sure, but notions such as home directory and /etc aren't portable.
> > If you can tell me how to choose reasonable defaults for various
> platforms,
> > it's easy to set them up.
>
> Don't unices and windows both give users home directories?

I don't know, and I don't know how to find the home directory under Windows.
Under Unix, you just write "~", but under Windows...?

> Is there
> some other platform you're supporting? I thought the windows
> equivalent of /etc was the registry.

Can you put files in the registry? I don't think so!

> I was under the impression that
> Boost.Build was meant to build boost, not be a tool for developers to
> use with their own projects.

It is, eventually, but my initial focus is trying to serve boost developers.
We have a problem that is not faced by many projects, in that we're trying
to build cross-platform software over a wide variety of toolsets. To my
knowledge, there is no other solution which allows developers to quickly and
easily throw together some code, build, and test it with multiple compilers.

> > Is "jam gcc" really too much to ask of users?
>
> No.

Whew! :-)

-Dave


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk