--- tools/darwin.jam.orig 2009-11-01 01:06:46.000000000 -0400
+++ tools/darwin.jam 2009-11-01 01:25:48.000000000 -0400
@@ -41,6 +41,11 @@
{
flags darwin.compile.c++ OPTIONS $(condition) : -fcoalesce-templates ;
}
+ # - GCC 4.2 and higher in Darwin does not have -Wno-long-double.
+ if $(gccversion) < "4.2.0"
+ {
+ flags darwin.compile OPTIONS $(condition) : -Wno-long-double ;
+ }
gcc.init-link-flags darwin darwin $(condition) ;
@@ -50,7 +55,7 @@
feature framework : : free ;
flags darwin.compile OPTIONS shared : -dynamic ;
-flags darwin.compile OPTIONS : -Wno-long-double -no-cpp-precomp ;
+flags darwin.compile OPTIONS : -no-cpp-precomp ;
flags darwin.link FRAMEWORK ;
@@ -63,9 +68,17 @@
# set up the -F option to include the paths to any frameworks used.
local rule prepare-framework-path ( target + )
{
+ # The -framework option only takes basename of the framework.
+ # The -F option specifies the directories where a framework
+ # is searched for. So, if we find feature
+ # with some path, we need to generate property -F option.
local framework-path = [ on $(target) return $(FRAMEWORK:D) ] ;
- FRAMEWORK_PATH on $(target) += -F$(framework-path) ;
+ # Be sure to generate no -F if there's no path.
+ if $(framework-path) != ""
+ {
+ FRAMEWORK_PATH on $(target) += -F$(framework-path) ;
+ }
}
rule link