summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@digia.com>2014-03-13 16:16:22 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-10 00:44:44 +0200
commit02ecd3ae40d8e10c56f5c92060257422a8ba9f92 (patch)
tree6d0ce57e1026668e38e6d17ddc90dac3d72ecef9 /mkspecs
parent05cfb6cd09eb27f960362c077855959835dae88c (diff)
Make Xcode debug info format controllable through a qmake variable
The default is still DWARF instead of DWARF with dSYM for static builds of Qt, so that debug builds of the final application don't take forever to build due to generating the dSYM file. Change-Id: I370d800d7c959e05c1a8780c4ebf58fff250daa1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/mac/default_post.prf7
-rw-r--r--mkspecs/features/mac/default_pre.prf10
-rw-r--r--mkspecs/macx-ios-clang/features/default_post.prf16
3 files changed, 17 insertions, 16 deletions
diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf
index da3e22b5f3..530683552b 100644
--- a/mkspecs/features/mac/default_post.prf
+++ b/mkspecs/features/mac/default_post.prf
@@ -37,6 +37,13 @@ qt:!isEmpty(QT_CONFIG) {
}
}
+macx-xcode:!isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) {
+ debug_information_format.name = DEBUG_INFORMATION_FORMAT
+ debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT
+ debug_information_format.build = debug
+ QMAKE_MAC_XCODE_SETTINGS += debug_information_format
+}
+
cache(QMAKE_XCODE_DEVELOPER_PATH, stash)
cache(QMAKE_XCODE_VERSION, stash)
diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf
index c031403930..0cc8cd6dfd 100644
--- a/mkspecs/features/mac/default_pre.prf
+++ b/mkspecs/features/mac/default_pre.prf
@@ -33,6 +33,16 @@ isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) {
cache(QMAKE_TARGET_BUNDLE_PREFIX)
}
+# Make the default debug info format for static debug builds
+# DWARF instead of DWARF with dSYM. This cuts down build times
+# for application debug builds significantly, as Xcode doesn't
+# have to pull out all the DWARF info from the Qt static libs
+# and put it into a dSYM file. We don't need that dSYM file in
+# the first place, since the information is available in the
+# object files inside the archives (static libraries).
+contains(QT_CONFIG, static): \
+ QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf
+
# This variable is used by the xcode_dynamic_library_suffix
# feature, which allows Xcode to choose the Qt libraries to link to
# at build time, depending on the current Xcode SDK and configuration.
diff --git a/mkspecs/macx-ios-clang/features/default_post.prf b/mkspecs/macx-ios-clang/features/default_post.prf
index 8b339dacdc..496553f8c0 100644
--- a/mkspecs/macx-ios-clang/features/default_post.prf
+++ b/mkspecs/macx-ios-clang/features/default_post.prf
@@ -178,22 +178,6 @@ macx-xcode {
QMAKE_SUBSTITUTES += copy_image
launch_images.files = $$copy_image.output
QMAKE_BUNDLE_DATA += launch_images
-
- # Make the default debug information format for debug builds
- # DWARF instead of DWARF with dSYM. This cuts down build times
- # for application debug builds significantly, as Xcode doesn't
- # have to pull out all the DWARF info from our static libraries
- # and put it into a dSYM file. We don't need that dSYM file in
- # the first place, since the information is available in the
- # object files inside the archives (static libraries). The only
- # unfortunate side effect of this is that the user won't be
- # able to break on specific lines of main(). This is due to
- # using ld to rename the main-function, and will go away once
- # we implement a separate tool to do the symbol renaming.
- debug_information_format.name = DEBUG_INFORMATION_FORMAT
- debug_information_format.value = dwarf
- debug_information_format.build = debug
- QMAKE_MAC_XCODE_SETTINGS += debug_information_format
}
macx-xcode {