Boost logo

Boost-Build :

From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2006-09-26 13:07:32


K. Noel Belcourt wrote:

> Not sure when the -F framework option was introduced into the
> darwin.jam,

It's been there since BBv1, when I created the darwin-tools.jam for it.
And it made it's way into the BBv2 toolset.

> but I believe it is erroneous to pass -F to ld without an
> argument.

It is indeed an error.

> In our jamfiles, we typically use <framework>vecLib where
> vecLib is used without a path. Our builds now fail because the link
> line is "-F -framework vecLib" where the -F option has no argument.

That would be a bug. When there's no directory the "-F$(FRAMEWORK:D)"
should expand to nothing. Not sure where the bug is though.

> We'd rather not specify a path to the vecLib framework because the
> location can change across systems.

Of course :-)

> I'd like to add this patch to ensure a path is always passed to -F.
> Please let me know if there's a better way to do this. I suppose
> another option is to suppress the -F option if there is no path
> preceding the framework library but I'm less certain how to do that.

Well ideally fixing the bjam bug would be best. There are two
possibilities; Either the "$(FRAMEWORK:D)" is incorrectly returning the
empty string ("") instead of and empty list. Or the concatenation of
"-F$(FRAMEWORK:D)" is deciding to do the concat as if it was using
"$(FRAMEWORK)" which has a value. I'd rate the first as the more likely bug.

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

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