Boost logo

Boost-Build :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2002-02-10 19:15:18

----- Original Message -----
From: "Rene Rivera" <grafik666_at_[hidden]>

> >I'd like:
> >
> >rule lib ( target : sources + : requirements * : default-build * )
> >{
> > local real-target = $(PREFIXLIB)$(target:S=$(SUFLIB)) ;
> > type-DEPENDS $(target) : $(real-target) ;
> > declare-local target $(real-target) : ... ;
> >}
> OK, I'm done with all the changes to make this happen.

Cool! Docs, too?

> It wasn't as easy as we
> expected :-( There are some drawbacks, or features depending on your
> perspective, of the implementation...
> * Multiple targets with the same name are allowed, but only one of each

I wouldn't have expected otherwise.

> * Because of the name resolution, one must specify the correct type when
> depending on another target. For example:
> dll test1 : test1.cpp ;
> lib test2 : test2.cpp ;
> exe test_app1 : test_app.cpp <dll>test1 ;
> exe test_app2 : test_app.cpp <lib>test2 ;
> exe test_app3 : test_app.cpp <lib>test1 ; # !! WILL FAIL !!

Fine, seems like a feature to me.

> * Also, because of the names, Python use needed to change. Because the PYD
> type is a real target type, even if it's mostly a DLL, one needs a
> type specifier when depending on those targets. For now I use "<pyd>" but
> you have a better name that would be great.

pyd is fine. Maybe the thing to do is to look for grist, extract the part
between <> and upcase the name to get the target type. That would make it
completely general.

> Again, I don't know how many people this is going to affect, but it's
going to
> require changes to any Jamfiles that create or depend on DLLs. I have
> for regex, threads, and python, which covers all the "external" ones in
> So Dave, unless you some problems with the above I'll go ahead commit the
> changes.

No problems, but you should alert John Maddock and Bill Kempf since these
are their projects.


P.S. How does the idea of implementing the initialization and PWD features
for V2 sit with you?


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