|
Boost-Build : |
From: K. Noel Belcourt (kbelco_at_[hidden])
Date: 2006-09-26 11:37:30
Hi,
Not sure when the -F framework option was introduced into the
darwin.jam, but I believe it is erroneous to pass -F to ld without an
argument. 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.
We'd rather not specify a path to the vecLib framework because the
location can change across systems.
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.
From the darwin ld man page
-framework name[,suffix]
Specifies a framework to link against. Frameworks
are dynamic
shared libraries, but they are stored in different
locations,
and therefore must be searched for differently. When
this option
is specified, ld searches for framework
`name.framework/name'
first in any directories specified with the -F
option, then in
the standard framework directories /Library/
Frameworks, /Net-
work/Library/Frameworks, and /System/Library/
Frameworks. The
placement of the -framework option is significant, as
it deter-
mines when and how the framework is searched. If
the optional
suffix is specified the framework is first searched
for the name
with the suffix and then without.
-Fdir Add dir to the list of directories in which to search
for frame-
works. Directories specified with -F are searched
before the
standard framework directories.
Could someone check this patch and let me know if it's okay to commit.
Thanks.
-- Noel Belcourt
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