|
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
type.
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
different
> type specifier when depending on those targets. For now I use "<pyd>" but
if
> 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
changes
> for regex, threads, and python, which covers all the "external" ones in
Boost.
>
> 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.
-Dave
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 acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk