diff --git a/libcxx/src/CMakeLists.txt b/libcxx/src/CMakeLists.txt --- a/libcxx/src/CMakeLists.txt +++ b/libcxx/src/CMakeLists.txt @@ -222,6 +222,8 @@ "-Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/../lib/libc++abi.v${LIBCXX_LIBCPPABI_VERSION}.exp" "-Wl,-force_symbols_not_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/../lib/notweak.exp" "-Wl,-force_symbols_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/../lib/weak.exp") + + target_link_libraries(cxx_shared PRIVATE cxxabi-reexports) endif() # Generate a linker script in place of a libc++.so symlink. diff --git a/libcxx/utils/ci/run-buildbot.sh b/libcxx/utils/ci/run-buildbot.sh --- a/libcxx/utils/ci/run-buildbot.sh +++ b/libcxx/utils/ci/run-buildbot.sh @@ -153,5 +153,8 @@ echo "+++ Installing libc++ and libc++abi to a fake location" ninja -C "${BUILD_DIR}" install-cxx install-cxxabi +echo "+++ Building the benchmarks" +ninja -C "${BUILD_DIR}" cxx-benchmarks + # echo "+++ Running the libc++ benchmarks" # ninja -C "${BUILD_DIR}" check-cxx-benchmarks diff --git a/libcxxabi/src/CMakeLists.txt b/libcxxabi/src/CMakeLists.txt --- a/libcxxabi/src/CMakeLists.txt +++ b/libcxxabi/src/CMakeLists.txt @@ -202,6 +202,8 @@ list(APPEND LIBCXXABI_INSTALL_TARGETS "cxxabi_shared") endif() + add_library(cxxabi-reexports INTERFACE) + # -exported_symbols_list is only available on Apple platforms if (APPLE) function(export_symbols file) @@ -209,7 +211,7 @@ endfunction() function(reexport_symbols file) export_symbols("${file}") - target_link_libraries(cxxabi_shared INTERFACE "-Wl,-reexported_symbols_list,${file}") + target_link_libraries(cxxabi-reexports INTERFACE "-Wl,-reexported_symbols_list,${file}") endfunction() export_symbols("${CMAKE_CURRENT_SOURCE_DIR}/../lib/itanium-base.exp")