[clang] [lldb] [llvm] [cmake] Build executables with -no_exported_symbols when building Apple toolchain (PR #87684)
Cyndy Ishida via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 5 15:06:36 PDT 2024
================
@@ -1029,6 +1038,16 @@ macro(add_llvm_executable name)
add_llvm_symbol_exports( ${name} ${LLVM_EXPORTED_SYMBOL_FILE} )
endif(LLVM_EXPORTED_SYMBOL_FILE)
+ if (NOT LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES)
+ if(LLVM_LINKER_SUPPORTS_NO_EXPORTED_SYMBOLS)
+ set_property(TARGET ${name} APPEND_STRING PROPERTY
+ LINK_FLAGS " -Wl,-no_exported_symbols")
+ else()
+ message(FATAL_ERROR
+ "LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES cannot be disabled when linker does not support \"-no_exported_symbols\"")
----------------
cyndyishida wrote:
Yea, theres more platform-friendly and older ways to achieve the same thing. I opted not to because AFAIK, our toolchain only builds with linkers that support the straightforward flag, and wasn't sure how useful this would be for other platforms.
https://github.com/llvm/llvm-project/pull/87684
More information about the cfe-commits
mailing list