@@ -49,6 +49,43 @@ target_link_libraries(cxx ${libraries})
49
49
append_if (compile_flags LIBCXX_HAS_FPIC_FLAG -fPIC )
50
50
append_if (link_flags LIBCXX_HAS_NODEFAULTLIBS_FLAG -nodefaultlibs )
51
51
52
+ if ( APPLE )
53
+ if ( CMAKE_OSX_DEPLOYMENT_TARGET STREQUAL "10.6" )
54
+ list (APPEND compile_flags "-U__STRICT_ANSI__" )
55
+ list (APPEND link_flags
56
+ "-compatibility_version 1"
57
+ "-current_version ${LIBCXX_VERSION} "
58
+ "-install_name /usr/lib/libc++.1.dylib"
59
+ "-Wl,-reexport_library,/usr/lib/libc++abi.dylib"
60
+ "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR} /libc++unexp.exp"
61
+ "/usr/lib/libSystem.B.dylib" )
62
+ else ()
63
+ if ( ${CMAKE_OSX_SYSROOT} )
64
+ list (FIND ${CMAKE_OSX_ARCHITECTURES} "armv7" OSX_HAS_ARMV7 )
65
+ if (OSX_HAS_ARMV7 )
66
+ set (OSX_RE_EXPORT_LINE
67
+ "${CMAKE_OSX_SYSROOT} /usr/lib/libc++abi.dylib"
68
+ "-Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR} /libc++sjlj-abi.exp" )
69
+ else ()
70
+ set (OSX_RE_EXPORT_LINE
71
+ "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT} /usr/lib/libc++abi.dylib" )
72
+ endif ()
73
+ else ()
74
+ set (OSX_RE_EXPORT_LINE "/usr/lib/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR} /libc++abi${LIBCXX_LIBCPPABI_VERSION} .exp" )
75
+ endif ()
76
+
77
+ list (APPEND link_flags
78
+ "-compatibility_version 1"
79
+ "-install_name /usr/lib/libc++.1.dylib"
80
+ "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR} /libc++unexp.exp"
81
+ "${OSX_RE_EXPORT_LINE} "
82
+ "-Wl,-force_symbols_not_weak_list,${CMAKE_CURRENT_SOURCE_DIR} /notweak.exp"
83
+ "-Wl,-force_symbols_weak_list,${CMAKE_CURRENT_SOURCE_DIR} /weak.exp" )
84
+ endif ()
85
+ endif ()
86
+
87
+ string (REPLACE ";" " " link_flags "${link_flags} " )
88
+
52
89
set_target_properties (cxx
53
90
PROPERTIES
54
91
COMPILE_FLAGS "${compile_flags} "
0 commit comments