From 59121bc4a0a5b033dff8f1fb2d6e84ee6c0e7914 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Wed, 16 Jun 2021 11:45:46 +0300 Subject: [PATCH] build-libcxx: Don't manually undefine _LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS Instead set the cmake defines that indicate that libcxx is going to be linked dynamically and going to link in libcxxabi statically, so that libcxxabi is built statically but with dllexport attributes. --- build-libcxx.sh | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/build-libcxx.sh b/build-libcxx.sh index 436c474..269f93b 100755 --- a/build-libcxx.sh +++ b/build-libcxx.sh @@ -174,11 +174,6 @@ build_all() { [ -z "$CLEAN" ] || rm -rf build-$arch-$type mkdir -p build-$arch-$type cd build-$arch-$type - if [ "$type" = "shared" ]; then - LIBCXXABI_VISIBILITY_FLAGS="-U_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS" - else - LIBCXXABI_VISIBILITY_FLAGS="" - fi cmake \ ${CMAKE_GENERATOR+-G} "$CMAKE_GENERATOR" \ -DCMAKE_BUILD_TYPE=Release \ @@ -202,7 +197,8 @@ build_all() { -DLIBCXXABI_LIBDIR_SUFFIX="" \ -DLIBCXXABI_ENABLE_NEW_DELETE_DEFINITIONS=ON \ -DCXX_SUPPORTS_CXX_STD=TRUE \ - -DCMAKE_CXX_FLAGS="$LIBCXXABI_VISIBILITY_FLAGS" \ + -DLIBCXX_ENABLE_SHARED=$SHARED \ + -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=TRUE \ .. $BUILDCMD ${CORES+-j$CORES} cd ..