| 1 | diff --strip-trailing-cr -bruEN -X exclude_from_diff.txt boost_1_34_0/tools/build/v2/tools/darwin.jam boost/tools/build/v2/tools/darwin.jam
|
|---|
| 2 | --- boost_1_34_0/tools/build/v2/tools/darwin.jam 2007-03-14 21:02:24.000000000 -0700
|
|---|
| 3 | +++ boost/tools/build/v2/tools/darwin.jam 2007-05-13 13:21:23.828125000 -0700
|
|---|
| 4 | @@ -49,8 +49,64 @@
|
|---|
| 5 |
|
|---|
| 6 | feature framework : : free ;
|
|---|
| 7 |
|
|---|
| 8 | +# ADOBE : Adding architecture variant to build i386, ppc, or universal binaries;
|
|---|
| 9 | +# also adding static c++ lib settings and dead stripping on release
|
|---|
| 10 | +
|
|---|
| 11 | +# The following adds objective-c support to darwin.
|
|---|
| 12 | +# Thanks to http://thread.gmane.org/gmane.comp.lib.boost.build/13759
|
|---|
| 13 | +
|
|---|
| 14 | +type.register OBJECTIVE_C : m ;
|
|---|
| 15 | +type.register OBJECTIVE_CPP : mm ;
|
|---|
| 16 | +
|
|---|
| 17 | +generators.register-c-compiler darwin.compile.m : OBJECTIVE_C : OBJ : <toolset>darwin ;
|
|---|
| 18 | +generators.register-c-compiler darwin.compile.mm : OBJECTIVE_CPP : OBJ : <toolset>darwin ;
|
|---|
| 19 | +
|
|---|
| 20 | +rule compile.m
|
|---|
| 21 | +{
|
|---|
| 22 | + LANG on $(<) = "-x objective-c" ;
|
|---|
| 23 | +}
|
|---|
| 24 | +
|
|---|
| 25 | +actions compile.m
|
|---|
| 26 | +{
|
|---|
| 27 | + "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)"
|
|---|
| 28 | +}
|
|---|
| 29 | +
|
|---|
| 30 | +rule compile.mm
|
|---|
| 31 | +{
|
|---|
| 32 | + LANG on $(<) = "-x objective-c++" ;
|
|---|
| 33 | +}
|
|---|
| 34 | +
|
|---|
| 35 | +actions compile.mm
|
|---|
| 36 | +{
|
|---|
| 37 | + "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)"
|
|---|
| 38 | +}
|
|---|
| 39 | +
|
|---|
| 40 | +feature sdkroot : 10.4 10.3.9 10.2.8 : propagated link-incompatible ;
|
|---|
| 41 | +flags darwin.compile OPTIONS <sdkroot>10.4 : -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 ;
|
|---|
| 42 | +flags darwin.link OPTIONS <sdkroot>10.4 : -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 ;
|
|---|
| 43 | +flags darwin.compile OPTIONS <sdkroot>10.3.9 : -isysroot /Developer/SDKs/MacOSX10.3.9.sdk -mmacosx-version-min=10.3.9 ;
|
|---|
| 44 | +flags darwin.link OPTIONS <sdkroot>10.3.9 : -isysroot /Developer/SDKs/MacOSX10.3.9.sdk -mmacosx-version-min=10.3.9 ;
|
|---|
| 45 | +flags darwin.compile OPTIONS <sdkroot>10.2.8 : -isysroot /Developer/SDKs/MacOSX10.2.8.sdk -mmacosx-version-min=10.2.8 ;
|
|---|
| 46 | +flags darwin.link OPTIONS <sdkroot>10.2.8 : -isysroot /Developer/SDKs/MacOSX10.2.8.sdk -mmacosx-version-min=10.2.8 ;
|
|---|
| 47 | +
|
|---|
| 48 | +feature arch : native ppc i386 fat : composite propagated ;
|
|---|
| 49 | +flags darwin.compile OPTIONS <arch>fat : -arch i386 -arch ppc ;
|
|---|
| 50 | +flags darwin.link OPTIONS <arch>fat : -arch i386 -arch ppc ;
|
|---|
| 51 | +flags darwin.compile OPTIONS <arch>i386 : -arch i386 ;
|
|---|
| 52 | +flags darwin.link OPTIONS <arch>i386 : -arch i386 ;
|
|---|
| 53 | +flags darwin.compile OPTIONS <arch>ppc : -arch ppc ;
|
|---|
| 54 | +flags darwin.link OPTIONS <arch>ppc : -arch ppc ;
|
|---|
| 55 | +
|
|---|
| 56 | +feature c++-lib : dynamic static : link-incompatible composite propagated ;
|
|---|
| 57 | +flags darwin.compile OPTIONS <c++-lib>static : -fvisibility=hidden -fvisibility-inlines-hidden ;
|
|---|
| 58 | +flags darwin.link OPTIONS <c++-lib>static : -nodefaultlibs -shared-libgcc -lstdc++-static -lgcc_eh -lgcc -lSystem ;
|
|---|
| 59 | +
|
|---|
| 60 | +flags darwin.link OPTIONS <variant>release : -Wl,-dead_strip -no_dead_strip_inits_and_terms ;
|
|---|
| 61 | +
|
|---|
| 62 | +# ADOBE end changes
|
|---|
| 63 | +
|
|---|
| 64 | flags darwin.compile OPTIONS <link>shared : -dynamic ;
|
|---|
| 65 | -flags darwin.compile OPTIONS : -Wno-long-double -no-cpp-precomp ;
|
|---|
| 66 | +flags darwin.compile OPTIONS : -Wno-long-double -no-cpp-precomp -gdwarf-2 ;
|
|---|
| 67 |
|
|---|
| 68 | flags darwin.link FRAMEWORK <framework> ;
|
|---|
| 69 |
|
|---|
| 70 | @@ -91,6 +147,9 @@
|
|---|
| 71 |
|
|---|
| 72 | actions piecemeal archive
|
|---|
| 73 | {
|
|---|
| 74 | - ar -c -r -s $(ARFLAGS) "$(<:T)" "$(>:T)"
|
|---|
| 75 | -}
|
|---|
| 76 | + # ADOBE : We use libtool instead of ar to support universal binary linking
|
|---|
| 77 | +
|
|---|
| 78 | + libtool -static -o "$(<:T)" $(ARFLAGS) "$(>:T)"
|
|---|
| 79 | +
|
|---|
| 80 | + # ADOBE end changes}
|
|---|
| 81 |
|
|---|