summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authormread <qt-info@nokia.com>2010-09-16 13:33:35 (GMT)
committermread <qt-info@nokia.com>2010-09-16 13:50:00 (GMT)
commitdb701aac50cf0e60d64697743331b437630e1d51 (patch)
tree0077206e04e9b9bf1e21a4f88a71cb162d84fdde /mkspecs
parent99205499b848d2af5502b63ecee8cfd4c577ec42 (diff)
downloadQt-db701aac50cf0e60d64697743331b437630e1d51.zip
Qt-db701aac50cf0e60d64697743331b437630e1d51.tar.gz
Qt-db701aac50cf0e60d64697743331b437630e1d51.tar.bz2
QTBUG-4852 Turning on runtime nested exception support where available
Added nested_exceptions.prf to the symbian mkspecs features, and used it from the stl.prf config. nested_exceptions.prf adds the .mmp flag to use the nested exceptions runtime support library for apps. stl.prf will add nested_exceptions to the config when the support library is present. Since this check depends on the existence of the runtime support library when qmake is run, qtp will have to add nested_exceptions to their config when building with nested exception support. This change means that, where nested exceptions are supported on Symbian, apps will no longer crash if a nested exception is encountered at runtime. Task-number: QTBUG-4852 Reviewed-by: Miikka Heikkinen
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/symbian/nested_exceptions.prf4
-rw-r--r--mkspecs/features/symbian/stl.prf5
2 files changed, 9 insertions, 0 deletions
diff --git a/mkspecs/features/symbian/nested_exceptions.prf b/mkspecs/features/symbian/nested_exceptions.prf
new file mode 100644
index 0000000..defca94
--- /dev/null
+++ b/mkspecs/features/symbian/nested_exceptions.prf
@@ -0,0 +1,4 @@
+# use nested exceptions runtime support for apps
+contains(TEMPLATE, app) {
+ MMP_RULES *= EPOCNESTEDEXCEPTIONS
+}
diff --git a/mkspecs/features/symbian/stl.prf b/mkspecs/features/symbian/stl.prf
index 2a3bce4..65d4b93 100644
--- a/mkspecs/features/symbian/stl.prf
+++ b/mkspecs/features/symbian/stl.prf
@@ -36,3 +36,8 @@ equals(use_libstdcppv5, true) {
} else {
LIBS *= -llibstdcpp.dll
}
+
+# use the runtime support for nested exceptions, if a library is available
+exists($${EPOCROOT}epoc32/release/armv5/urel/usrt_nx_*.lib) {
+ CONFIG += nested_exceptions
+}