aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-04-04 01:01:32 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-04-04 01:01:32 +0000
commit436633e2a281ff620f2f4d9a06b33d3a99924717 (patch)
tree667d1785d2db75b65efa3458428c90af5d022513
parente3d75ee2a1c8ea11fd01fc49055d08f2da7f5668 (diff)
downloadexternal_llvm-436633e2a281ff620f2f4d9a06b33d3a99924717.zip
external_llvm-436633e2a281ff620f2f4d9a06b33d3a99924717.tar.gz
external_llvm-436633e2a281ff620f2f4d9a06b33d3a99924717.tar.bz2
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178725 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--CMakeLists.txt4
-rw-r--r--tools/bugpoint/CMakeLists.txt1
-rw-r--r--tools/opt/CMakeLists.txt1
-rw-r--r--unittests/ExecutionEngine/JIT/CMakeLists.txt4
4 files changed, 7 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 80c95a0..95ea311 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -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)
diff --git a/tools/bugpoint/CMakeLists.txt b/tools/bugpoint/CMakeLists.txt
index e990cfc..0000d97 100644
--- a/tools/bugpoint/CMakeLists.txt
+++ b/tools/bugpoint/CMakeLists.txt
@@ -12,3 +12,4 @@ add_llvm_tool(bugpoint
ToolRunner.cpp
bugpoint.cpp
)
+set_target_properties(bugpoint PROPERTIES ENABLE_EXPORTS 1)
diff --git a/tools/opt/CMakeLists.txt b/tools/opt/CMakeLists.txt
index 1ff8efb..9195911 100644
--- a/tools/opt/CMakeLists.txt
+++ b/tools/opt/CMakeLists.txt
@@ -6,3 +6,4 @@ add_llvm_tool(opt
PrintSCC.cpp
opt.cpp
)
+set_target_properties(opt PROPERTIES ENABLE_EXPORTS 1)
diff --git a/unittests/ExecutionEngine/JIT/CMakeLists.txt b/unittests/ExecutionEngine/JIT/CMakeLists.txt
index 3d33e4c..ac45d2e 100644
--- a/unittests/ExecutionEngine/JIT/CMakeLists.txt
+++ b/unittests/ExecutionEngine/JIT/CMakeLists.txt
@@ -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)