mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-13 08:54:59 +00:00
Always use -Wl,-gc-sections on our build.
Both bfd ld and gold correctly handle --export-dynamic, so gc-sections is safe even for binaries that support plugins. llvm-svn: 220174
This commit is contained in:
parent
6956c38e1a
commit
965c115842
@ -141,15 +141,18 @@ function(add_llvm_symbol_exports target_name export_file)
|
||||
endfunction(add_llvm_symbol_exports)
|
||||
|
||||
function(add_dead_strip target_name)
|
||||
if(NOT LLVM_NO_DEAD_STRIP)
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# ld64's implementation of -dead_strip breaks tools that use plugins.
|
||||
if(NOT LLVM_NO_DEAD_STRIP)
|
||||
set_property(TARGET ${target_name} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " -Wl,-dead_strip")
|
||||
elseif(NOT WIN32)
|
||||
# Object files are compiled with -ffunction-data-sections.
|
||||
set_property(TARGET ${target_name} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " -Wl,--gc-sections")
|
||||
endif()
|
||||
elseif(NOT WIN32)
|
||||
# Object files are compiled with -ffunction-data-sections.
|
||||
# On ELF --gc-sections handles --export-dynamic correctly, so we can always
|
||||
# use it.
|
||||
set_property(TARGET ${target_name} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " -Wl,--gc-sections")
|
||||
endif()
|
||||
endfunction(add_dead_strip)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user