summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Krasnyk <michael.krasnyk@gmail.com>2017-11-18 10:10:01 +0100
committerMichael Krasnyk <michael.krasnyk@gmail.com>2017-11-23 18:28:39 +0100
commitf7372855b803a05d8df873b6fe3012905c5af94c (patch)
tree60254650c23727f992d8ad89876b9b6871251b2c
parent25cfb5863c9ac3705d2bcf4086c237608264e3ae (diff)
downloadqtlocation-mapboxgl-upstream/dont-use-hidden-visibility-for-gcc-63.tar.gz
[Qt] Don't use -fvisibility=hidden for gcc 6.1-6.4 and 7.2upstream/dont-use-hidden-visibility-for-gcc-63
-rw-r--r--platform/qt/qt.cmake11
1 files changed, 9 insertions, 2 deletions
diff --git a/platform/qt/qt.cmake b/platform/qt/qt.cmake
index f832dd593c..60f9815949 100644
--- a/platform/qt/qt.cmake
+++ b/platform/qt/qt.cmake
@@ -5,8 +5,15 @@ option(WITH_QT_DECODERS "Use builtin Qt image decoders" OFF)
option(WITH_QT_I18N "Use builtin Qt i18n support" OFF)
option(WITH_QT_4 "Use Qt4 instead of Qt5" OFF)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -D__QT__")
-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden -D__QT__")
+if (CMAKE_COMPILER_IS_GNUCC AND NOT
+ ((CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 6.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.5)
+ OR CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 7.2))
+ # Don't use hidden default visibility for gcc 6.1-6.4 and 7.2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80947
+ set(USE_DEFAULT_VISIBILITY "-fvisibility=hidden")
+endif()
+
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${USE_DEFAULT_VISIBILITY} -D__QT__")
+set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${USE_DEFAULT_VISIBILITY} -D__QT__")
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)