summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorKimmo Ollila <kimmo.ollila@qt.io>2022-01-21 13:38:49 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-01-27 06:55:07 +0000
commitb75c4d190f9d072307b9b1a219ab36161b8dd2c0 (patch)
tree7330de53eacde54884f4ab9814d1089b7df5690e /mkspecs
parent582fbe1bec98d91e7ddecf3f783275ca500f8dc6 (diff)
INTEGRITY: Prevent deletion of virtual functions
In release builds -olink also enables deletion of (unused) virtual functions. In some cases this can lead to application crashes when using loaders combined with timers. Prevent this by adding -no_uvfd option to release build flags. Task-number: QTBUG-99506 Change-Id: I5c669e1e987f1fe912c9aca52ff82000125eed53 Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit dac76bb442c02abab63cc805734ff8041e07fd2b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/ghs-base.conf4
1 files changed, 2 insertions, 2 deletions
diff --git a/mkspecs/common/ghs-base.conf b/mkspecs/common/ghs-base.conf
index a66971578c..eba9680349 100644
--- a/mkspecs/common/ghs-base.conf
+++ b/mkspecs/common/ghs-base.conf
@@ -8,7 +8,7 @@ QMAKE_COMPILER = ghs
QMAKE_CFLAGS += --signed_fields --no_commons --diag_suppress=1,82,228,236,381,611,961,997,1795,1974
QMAKE_CFLAGS_DEPS += -MD
-QMAKE_CFLAGS_RELEASE += -Ospeed -Olink -Omax
+QMAKE_CFLAGS_RELEASE += -Ospeed -Olink -Omax -no_uvfd
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE -g
QMAKE_CFLAGS_DEBUG += -g -Omaxdebug
QMAKE_CFLAGS_SHLIB +=
@@ -34,7 +34,7 @@ QMAKE_CXXFLAGS_EXCEPTIONS_ON += --exceptions
QMAKE_LFLAGS += --signed_fields --no_commons --no_implicit_include --link_once_templates -non_shared --new_outside_of_constructor
QMAKE_LFLAGS_DEBUG += -g -Omaxdebug
-QMAKE_LFLAGS_RELEASE += -Ospeed -Olink -Omax
+QMAKE_LFLAGS_RELEASE += -Ospeed -Olink -Omax -no_uvfd
QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_LFLAGS_RELEASE -g
QMAKE_LFLAGS_CXX11 += --c++11 --thread_local_storage
QMAKE_LFLAGS_EXCEPTIONS_ON += --exceptions