From c950e77d1d0431b9fa9144e9ea7eaa858d8e032e Mon Sep 17 00:00:00 2001 From: Howard Hinnant Date: Fri, 17 Dec 2010 14:46:43 +0000 Subject: Effort to reduce the number of exported symbols llvm-svn: 122057 --- libcxx/lib/buildit | 2 ++ libcxx/lib/libc++unexp.exp | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 libcxx/lib/libc++unexp.exp (limited to 'libcxx/lib') diff --git a/libcxx/lib/buildit b/libcxx/lib/buildit index db22942831b..e296f021820 100755 --- a/libcxx/lib/buildit +++ b/libcxx/lib/buildit @@ -41,6 +41,7 @@ case $TRIPLE in -compatibility_version 1 \ -install_name /usr/lib/libc++.dylib \ -Wl,-reexport_library,/usr/lib/libc++abi.dylib \ + -Wl,-unexported_symbols_list,libc++unexp.exp \ /usr/lib/libSystem.B.dylib" else LDSHARED_FLAGS="-o libc++.1.dylib \ @@ -49,6 +50,7 @@ case $TRIPLE in -install_name /usr/lib/libc++.dylib \ ${SDKROOT}/usr/lib/libc++abi.dylib \ -lSystem \ + -Wl,-unexported_symbols_list,libc++unexp.exp \ -Wl,-reexported_symbols_list,libc++abi.exp \ -Wl,-force_symbols_not_weak_list,notweak.exp" fi diff --git a/libcxx/lib/libc++unexp.exp b/libcxx/lib/libc++unexp.exp new file mode 100644 index 00000000000..9507fc57f18 --- /dev/null +++ b/libcxx/lib/libc++unexp.exp @@ -0,0 +1,19 @@ +# all guard variables +__ZGVNSt3__* +# all vtables +# __ZTV* +# all VTT +# __ZTT* +# all non-virtual thunks +# __ZTh* +# all virtual thunks +# __ZTv* +# typeinfo for std::__1::__types +# There are no std::__types +# __ZTINSt3__1[0-9][0-9]*__* +# typeinfo name for std::__1::__types +__ZTSNSt3__1[0-9][0-9]*__* +# anything using __hidden_allocator +*__hidden_allocator* +# anything using __sso_allocator +*__sso_allocator* -- cgit v1.2.3