[llvm] r178725 - Don't export symbols in every binary on linux.
Rafael Espindola
rafael.espindola at gmail.com
Wed Apr 3 18:01:33 PDT 2013
Author: rafael
Date: Wed Apr 3 20:01:32 2013
New Revision: 178725
URL: http://llvm.org/viewvc/llvm-project?rev=178725&view=rev
Log:
Don't export symbols in every binary on linux.
On freebsd this makes sure that symbols are exported on the binaries that need
them. The net result is that we should get symbols in the binaries that need
them on every platform.
On linux x86-64 this reduces the size of the bin directory from 262MB to 250MB.
Patch by Stephen Checkoway.
Modified:
llvm/trunk/CMakeLists.txt
llvm/trunk/tools/bugpoint/CMakeLists.txt
llvm/trunk/tools/opt/CMakeLists.txt
llvm/trunk/unittests/ExecutionEngine/JIT/CMakeLists.txt
Modified: llvm/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=178725&r1=178724&r2=178725&view=diff
==============================================================================
--- llvm/trunk/CMakeLists.txt (original)
+++ llvm/trunk/CMakeLists.txt Wed Apr 3 20:01:32 2013
@@ -390,6 +390,10 @@ if( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -include llvm/Support/Solaris.h")
endif( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
+# Make sure we don't get -rdynamic in every binary. For those that need it,
+# use set_target_properties(target PROPERTIES ENABLE_EXPORTS 1)
+set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")
+
include(AddLLVM)
include(TableGen)
Modified: llvm/trunk/tools/bugpoint/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/CMakeLists.txt?rev=178725&r1=178724&r2=178725&view=diff
==============================================================================
--- llvm/trunk/tools/bugpoint/CMakeLists.txt (original)
+++ llvm/trunk/tools/bugpoint/CMakeLists.txt Wed Apr 3 20:01:32 2013
@@ -12,3 +12,4 @@ add_llvm_tool(bugpoint
ToolRunner.cpp
bugpoint.cpp
)
+set_target_properties(bugpoint PROPERTIES ENABLE_EXPORTS 1)
Modified: llvm/trunk/tools/opt/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/opt/CMakeLists.txt?rev=178725&r1=178724&r2=178725&view=diff
==============================================================================
--- llvm/trunk/tools/opt/CMakeLists.txt (original)
+++ llvm/trunk/tools/opt/CMakeLists.txt Wed Apr 3 20:01:32 2013
@@ -6,3 +6,4 @@ add_llvm_tool(opt
PrintSCC.cpp
opt.cpp
)
+set_target_properties(opt PROPERTIES ENABLE_EXPORTS 1)
Modified: llvm/trunk/unittests/ExecutionEngine/JIT/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/ExecutionEngine/JIT/CMakeLists.txt?rev=178725&r1=178724&r2=178725&view=diff
==============================================================================
--- llvm/trunk/unittests/ExecutionEngine/JIT/CMakeLists.txt (original)
+++ llvm/trunk/unittests/ExecutionEngine/JIT/CMakeLists.txt Wed Apr 3 20:01:32 2013
@@ -52,6 +52,4 @@ add_llvm_unittest(JITTests
${JITTestsSources}
)
-if(MINGW OR CYGWIN)
- set_property(TARGET JITTests PROPERTY LINK_FLAGS -Wl,--export-all-symbols)
-endif()
+set_target_properties(JITTests PROPERTIES ENABLE_EXPORTS 1)
More information about the llvm-commits
mailing list