Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-06-16 00:55:00


Hi Michael,

> Just stumbled across a fairly recently introduced bug. The latest HEAD has
> problems with the following simple test case.
>
> lib lapack2 : : <name>lapackD <variant>debug : : ;
> lib lapack2 : : <name>lapackR <variant>release : : ;
>
>
> This is fine in itself. The problem only crops up when the 'intel' toolset
> is used. i.e.
> bjam intel
>
> Fails with the error
> generators.jam:1079: in construct-really from module generators
> error: Ambiguity found when searching for best transformation

Yea. (Hint: if you get error in generators.jam, the --debug-generators option
can provide interesting information).

The reason for this error is that there are two generators that can handle the
above. First is fully generic generator that just produces a target. Second
is a generator intel-linux.searched-lib-generator that has some additional
logic (having to do with library order of link line).

Until recently, both generators were run. But they produced the same targets,
so no ambiguity ware reported. I've recently changed the check so that
whenever two generators can be run and both produce something, it's an error.
That's what you see.

I've just committed a patch that uses generators.override rule to specify that
intel-linux.searched-lib-generator should be preferred over generic
searched-lib-generator in all cases, so now only one generator is run, and
everything should be OK. And I think it's a bit faster (tiny bit, but anyway).

Thanks for the report!

- Volodya

-- 
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build V2: http://boost.org/boost-build2
 

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