From 671712cae67d7b8782afa94c09e980a77450efd6 Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Wed, 14 Sep 2022 14:10:23 +0200 Subject: [PATCH] CMake: Use `-static-libstdc++` on Clang as well This resolves an old FIXME that we added ages ago, and our LLVM driver apparently gained support for `-static-libstdc++` somewhere along the way. --- Meta/CMake/utils.cmake | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/Meta/CMake/utils.cmake b/Meta/CMake/utils.cmake index 61af57ad88..ee1d26dd0e 100644 --- a/Meta/CMake/utils.cmake +++ b/Meta/CMake/utils.cmake @@ -68,19 +68,7 @@ function(serenity_libc target_name fs_name) set_target_properties(${target_name} PROPERTIES OUTPUT_NAME ${fs_name}) # Avoid creating a dependency cycle between system libraries and the C++ standard library. This is necessary # to ensure that initialization functions will be called in the right order (libc++ must come after LibPthread). - if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") - target_link_options(${target_name} PRIVATE -static-libstdc++) - elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang$") - target_link_libraries(${target_name} clang_rt.builtins) - # FIXME: Implement -static-libstdc++ in the next toolchain update. - target_link_options(${target_name} PRIVATE -nostdlib++ -Wl,-Bstatic -lc++ -Wl,-Bdynamic) - if (NOT ENABLE_MOLD_LINKER) - target_link_options(${target_name} PRIVATE -Wl,--no-dependent-libraries) - endif() - if (ENABLE_USERSPACE_COVERAGE_COLLECTION) - target_link_libraries(${target_name} clang_rt.profile) - endif() - endif() + target_link_options(${target_name} PRIVATE -static-libstdc++) target_link_directories(LibC PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) serenity_generated_sources(${target_name}) endfunction()