diff options
author | Naios <naios-dev@live.de> | 2016-03-20 00:50:21 +0100 |
---|---|---|
committer | Naios <naios-dev@live.de> | 2016-03-24 02:38:54 +0100 |
commit | 2613413608337d61994503df0e2d9ed05d3c4ee4 (patch) | |
tree | c560bb1832b8a9aa13837dd662bfb9fa514475f4 /cmake/compiler/gcc | |
parent | f37682b7edd0d711e1120cbdd9d627fb5b9dbde1 (diff) |
Core/Build: Add the possibility to link libraries dynamically.
* makes it possible to access exported singletons from other shared lib's.
* reduces binary size
(cherry picked from commit f4e0945b13a70225684e7421d9542efae6a47c89)
Diffstat (limited to 'cmake/compiler/gcc')
-rw-r--r-- | cmake/compiler/gcc/settings.cmake | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/cmake/compiler/gcc/settings.cmake b/cmake/compiler/gcc/settings.cmake index acd71e82fd9..d9eda767b8e 100644 --- a/cmake/compiler/gcc/settings.cmake +++ b/cmake/compiler/gcc/settings.cmake @@ -34,3 +34,15 @@ if( WITH_COREDEBUG ) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3") message(STATUS "GCC: Debug-flags set (-g3)") endif() + +if (WITH_DYNAMIC_LINKING) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -fvisibility=hidden -Wno-attributes") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -fvisibility=hidden -Wno-attributes") + + # Should break the build when there are TRINITY_*_API macros missing + # but it complains about missing references in precompiled headers. + # set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wl,--no-undefined") + # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,--no-undefined") + + message(STATUS "GCC: Enabled shared linking") +endif() |