From cadfaf2df46faf1dfe86db989583a477f27e22b4 Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Tue, 22 Jun 2021 11:03:37 -0700 Subject: [PATCH] [compiler-rt] Make use of undefined symbols configurable We want to disable the use of undefined symbols on Fuchsia, but there are cases where it might be desirable so may it configurable. Differential Revision: https://reviews.llvm.org/D104728 --- compiler-rt/CMakeLists.txt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt index 5d0e617..f5b07ce 100644 --- a/compiler-rt/CMakeLists.txt +++ b/compiler-rt/CMakeLists.txt @@ -437,10 +437,18 @@ else() endif() append_list_if(COMPILER_RT_HAS_LIBC c SANITIZER_COMMON_LINK_LIBS) +if("${CMAKE_SYSTEM_NAME}" STREQUAL "Fuchsia") + list(APPEND SANITIZER_COMMON_LINK_LIBS zircon) +endif() if("${CMAKE_SYSTEM_NAME}" STREQUAL "Fuchsia") + set(SANITIZER_NO_UNDEFINED_SYMBOLS_DEFAULT ON) +else() + set(SANITIZER_NO_UNDEFINED_SYMBOLS_DEFAULT OFF) +endif() +option(SANITIZER_NO_UNDEFINED_SYMBOLS "Report error on unresolved symbol references" ${SANITIZER_NO_UNDEFINED_SYMBOLS_DEFAULT}) +if (SANITIZER_NO_UNDEFINED_SYMBOLS) list(APPEND SANITIZER_COMMON_LINK_FLAGS -Wl,-z,defs) - list(APPEND SANITIZER_COMMON_LINK_LIBS zircon) endif() # TODO: COMPILER_RT_COMMON_CFLAGS and COMPILER_RT_COMMON_LINK_FLAGS are -- 2.7.4