Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-06-23 05:59:38


Hi Jürgen,

> Please find a working testcase attached.

Thanks!

>
> It contains 3 different projects:
>
> a) extern. A simulation of the flexlm setup.
> b) main-project. How my main project is organized.
> c) help-project. Please start there.

Ok, I see the same error message. However, I'm not sure it's V2 bug. Consider

help-project/app3/main/Jamfile

and

help-project/app4/main/Jamfile

Both declare exe called app1 and stage them into ../../bin -- i.e. to binaries
with the same name are staged to the same location, thereby causing the
error.

I suspect that the original error you had was for another reason. I've just
comitted the attached patch, which makes the error message unconditional but
also fixes a typo which causes locations for targets to be always reported as
same. Could you try rerunning your original testcase?

- Volodya
 --Boundary-00=_aKW2AdDRKEDr6I1 Content-Type: text/x-diff;
charset="utf-8";
name="virtual-target.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="virtual-target.diff"

Index: virtual-target.jam
===================================================================
RCS file: /cvsroot/boost/boost/tools/build/v2/build/virtual-target.jam,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- virtual-target.jam 18 Jun 2004 08:26:59 -0000 1.80
+++ virtual-target.jam 23 Jun 2004 10:56:34 -0000 1.81
@@ -795,7 +795,7 @@
local cs1 = [ $(.actual.$(actual-name)).creating-subvariant ] ;
local cs2 = [ $(virtual-target).creating-subvariant ] ;
local cmt1 = [ $(cs1).main-target ] ;
- local cmt2 = [ $(cs1).main-target ] ;
+ local cmt2 = [ $(cs2).main-target ] ;

local action1 = [ $(.actual.$(actual-name)).action ] ;
@@ -813,22 +813,13 @@
properties-added = [ set.difference $(p2) : $(p1) ] ;
properties-added ?= "none" ;
}
- if $(properties-added) != "none" || $(properties-removed) != "none"
- {
- errors.error "Duplicate name of actual target:" $(actual-name)
- : "previous virtual target" [ $(.actual.$(actual-name)).str ]
- : "created from" [ $(cmt1).location ]
- : "another virtual target" [ $(virtual-target).str ]
- : "created from" [ $(cmt2).location ]
- : "added properties: " $(properties-added)
- : "removed properties: " $(properties-removed) ;
- }
- else
- {
- errors.error "Duplicate name of actual target:" $(actual-name)
- : "previous virtual target" [ $(.actual.$(actual-name)).str ]
- : "another virtual target" [ $(virtual-target).str ] ;
- }
+ errors.error "Duplicate name of actual target:" $(actual-name)
+ : "previous virtual target" [ $(.actual.$(actual-name)).str ]
+ : "created from" [ $(cmt1).location ]
+ : "another virtual target" [ $(virtual-target).str ]
+ : "created from" [ $(cmt2).location ]
+ : "added properties: " $(properties-added)
+ : "removed properties: " $(properties-removed) ;
}
else
{
 --Boundary-00=_aKW2AdDRKEDr6I1--


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