Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2006-02-20 11:43:49


On Monday 20 February 2006 00:02, Reece Dunn wrote:
> In a previous version of BBv2, it was possible to have targets like:
>
> lib Foo.Bar : foo.cpp ;
> lib Foo.Bar2 : bar.cpp ;
>
> but with the latest sources, I get a duplicate name of actual target
> Foo.dll error.
>
> NOTE: This will impact support for C#/.NET toolsets where it is common to
> have DLLs named a.b.dll

Oh, there was a change that ignores all suffixes from main target name when
determining the name of the files. This was originally done so that you can
do:

   obj a.obj : a.cpp ;
   xml a.xml : a.whatever ;

withouing causing class between main target names. I think one solution is a
<name> feature that specifies the basename of the created file, so you'd
write:

    lib Foo.Bar : foo.cpp : <name>foo.bar ;
    lib Foo.Bar2 : bar.cpp : <name>foo.bar2 ;

What do you think? Another solution is to require <name> in the previous case:

   obj a.obj : a.cpp : <name>a ;
   xml a.xml : a.whatever : <name>a ;

and don't automatically strip suffix from main target name, but frankly, I'm
undecided which approach is best. Any comments?

- 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