Need to set -fvisibility=hidden only for executables, so shared library can export symbols to be linked against
commit5e0763a954717c3a3f66f5e635a4c5f4e84dc523
authorGerry Boland <gerry.boland@canonical.com>
dateFri 5 Sep 2014, 12:57 (12 years ago)
parent200453a
CMakeLists.txt−2
@@ -69,8 +69,6 @@ if(SHELL_PLUGINDIR STREQUAL "")
6969 message(FATAL_ERROR "Could not determine plugin import dir.")
7070endif()
7171
72−set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
73−
7472set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-permissive -pedantic -Wall -Wextra")
7573
7674if ("${CMAKE_BUILD_TYPE}" STREQUAL "release" OR "${CMAKE_BUILD_TYPE}" STREQUAL "relwithdebinfo")
plugins/CMakeLists.txt+2
@@ -11,6 +11,8 @@ macro(add_unity8_plugin PLUGIN VERSION PATH)
1111 export_qmlplugin(${PLUGIN} ${VERSION} ${PATH} DESTINATION ${SHELL_INSTALL_QML} ${ARGN})
1212endmacro()
1313
14+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
15+
1416add_subdirectory(AccountsService)
1517add_subdirectory(HudClient)
1618add_subdirectory(LightDM)
src/Dash/CMakeLists.txt+2
@@ -8,6 +8,8 @@ add_executable(unity8-dash ${DASH_SRCS})
88
99qt5_use_modules(unity8-dash Gui Qml Quick Test)
1010
11+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
12+
1113# install binaries
1214install(TARGETS ${DASH_APP}
1315 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
src/Panel/CMakeLists.txt+2
@@ -1 +1,3 @@
11add_subdirectory(Indicators)
2+
3+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
src/libunity8-private/CMakeLists.txt+13−3
@@ -1,15 +1,25 @@
11set(LIB_NAME "unity8-private")
2+set(SOVERSION 0)
3+set(VERSION ${SOVERSION}.0.0)
4+
5+project(lib${LIB_NAME})
26
37set(lib${LIB_NAME}_SRCS
48 abstractdbusservicemonitor.cpp
5−)
9+ )
610
711add_library(${LIB_NAME} SHARED
812 ${lib${LIB_NAME}_SRCS}
9−)
13+ )
14+
15+set_target_properties(${LIB_NAME} PROPERTIES
16+ VERSION ${VERSION}
17+ SOVERSION ${SOVERSION}
18+ )
19+
1020qt5_use_modules(${LIB_NAME} DBus)
1121
1222# install library
1323install(TARGETS ${LIB_NAME}
1424 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
15−)
25+ )