|
Boost-Build : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-11-29 03:40:45
On Friday 26 November 2004 19:54, Toon Knapen wrote:
> I'm pretty sure you added the <parallelism> feature example after a
> similar question from me;-) Only now I start to really understand the
> power of this and how to do it. So I tried it but bjam tells me that I
> have a recursivity problem and have no idea why.
Hi Toon,
after looking at the testcase you actually provided (as opposed to some other
archive), I understand the problem better.
You define libmpi which happens to be built with <parallelism>mpi, which is
expanded to reference to libmpi, so libmpi is built again, giving the error.
The solution which works for me is:
1. Moving <define> and <include> from mpiheaders to libmpi
2. Marking libmpi "explicit" so that it's built only when explicitly
requested.
The resulting definition looks like:
lib libmpi
: # sources
#mpiheaders
: # requirements
<file>/usr/lib/libz.a
#<parallelism>none
: # default-build
: # usage-requirements
<define>$(MPI_DEFINES)
<include>/usr/local/mpich-1.2.5.2/include
#<use>/user-config//mpiheaders/<parallelism>none
;
explicit libmpi ;
I'll think if this "reference to self" should be error or just ignored.
HTH,
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