aboutsummaryrefslogtreecommitdiff
path: root/kde-modules/KDEFrameworkCompilerSettings.cmake
diff options
context:
space:
mode:
authorAlex Richardson <arichardson.kde@gmail.com>2014-01-23 16:09:46 +0100
committerAlex Richardson <arichardson.kde@gmail.com>2014-01-23 16:09:46 +0100
commit506bd64a3b30fbb5c1940a796f82e281053db4bd (patch)
tree170cd4a7dbd06d4b883c645d5101200e59e27a1c /kde-modules/KDEFrameworkCompilerSettings.cmake
parent7cf3afc38e03d52d76848a6f0aa6d880d5ba97fd (diff)
downloadextra-cmake-modules-506bd64a3b30fbb5c1940a796f82e281053db4bd.tar.gz
extra-cmake-modules-506bd64a3b30fbb5c1940a796f82e281053db4bd.tar.bz2
Only set QT_STRICT_ITERATORS when not compiling with MSVC
On MSVC linker errors will happen when this flag is set (with Qt < 5.3) REVIEW: 115234
Diffstat (limited to 'kde-modules/KDEFrameworkCompilerSettings.cmake')
-rw-r--r--kde-modules/KDEFrameworkCompilerSettings.cmake9
1 files changed, 8 insertions, 1 deletions
diff --git a/kde-modules/KDEFrameworkCompilerSettings.cmake b/kde-modules/KDEFrameworkCompilerSettings.cmake
index d71c407f..0799a8d7 100644
--- a/kde-modules/KDEFrameworkCompilerSettings.cmake
+++ b/kde-modules/KDEFrameworkCompilerSettings.cmake
@@ -2,10 +2,17 @@ include(KDECompilerSettings)
add_definitions(-DQT_NO_CAST_TO_ASCII
-DQT_NO_CAST_FROM_ASCII
- -DQT_STRICT_ITERATORS
-DQT_NO_URL_CAST_FROM_STRING
-DQT_NO_CAST_FROM_BYTEARRAY
-DQT_NO_SIGNALS_SLOTS_KEYWORDS
-DQT_USE_FAST_OPERATOR_PLUS
-DQT_USE_QSTRINGBUILDER
)
+if(NOT MSVC)
+ # QT_STRICT_ITERATORS breaks MSVC: it tries to link to QTypedArrayData symbols
+ # when using foreach. However these symbols don't actually exist
+ # not having QT_STRICT_ITERATORS defined fixes this issue.
+ # This is fixed by https://codereview.qt-project.org/#change,76311
+ # TODO: set QT_STRICT_ITERATORS on all platforms once we depend on Qt 5.3
+ add_definitions(-DQT_STRICT_ITERATORS)
+endif()