On 3/31/06, Tanner Lovelace <[EMAIL PROTECTED]> wrote:

> Obviously there's something converting from the framework directory path
> to the framework parameters (-F/path/to/framework -framework A) and there's
> also something converting from a library path to library parameters (-lz 
> -lbz2).
> It almost looks like only one of these routines is being run to create the
> link line and since the frameworks are first the one to convert library
> paths to library parameters isn't getting called.  Does this sound feasible?

I think I may have found the bug.  In cmOrderLinkDirectories.cxx in the
function cmOrderLinkDirectories::DetermineLibraryPathOrder() there is
a boolean variable called framework.   It is set to false before processing
through the list of library files.  If the loop finds a framework, it sets this
to true, however, it never again gets set to false.  Further down in the loop,
after checking for frameworks, I think is the code to handle library path
translation to link parameters and it is surrounded by a

if (!framework) {}

statement.  I believe the call to set framework to false should be put
just inside the for loop instead of outside it so that the framework
boolean value is reset for each item in the list.  I'll see if I can verify this
but can someone who knows this code please double check this for me?

Thanks much!

Cheers,
Tanner

--
Tanner Lovelace
clubjuggler at gmail dot com
http://wtl.wayfarer.org/
(fieldless) In fess two roundels in pale, a billet fesswise and an
increscent, all sable.
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to