summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/resolve_config.prf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features/resolve_config.prf')
-rw-r--r--mkspecs/features/resolve_config.prf51
1 files changed, 51 insertions, 0 deletions
diff --git a/mkspecs/features/resolve_config.prf b/mkspecs/features/resolve_config.prf
new file mode 100644
index 0000000000..e85435cf73
--- /dev/null
+++ b/mkspecs/features/resolve_config.prf
@@ -0,0 +1,51 @@
+#
+# W A R N I N G
+# -------------
+#
+# This file is not part of the Qt API. It exists purely as an
+# implementation detail. It may change from version to version
+# without notice, or even be removed.
+#
+# We mean it.
+#
+
+staticlib: \
+ CONFIG += static
+else: dll: \
+ CONFIG += shared
+
+!shared:!static {
+ contains(QT_CONFIG, static): CONFIG += static
+ else: CONFIG += shared
+}
+
+CONFIG(static, static|shared) {
+ CONFIG -= shared dll
+ contains(TEMPLATE, ".*lib"): CONFIG += staticlib
+} else {
+ CONFIG -= static staticlib
+ contains(TEMPLATE, ".*lib"): CONFIG += dll
+}
+
+static_and_shared {
+ !macx-xcode: addExclusiveBuilds(static, Static, shared, Shared)
+} else: fix_output_dirs {
+ static: \
+ fixExclusiveOutputDirs(static, shared)
+ else: \
+ fixExclusiveOutputDirs(shared, static)
+}
+
+CONFIG(debug, debug|release): \
+ CONFIG -= release
+else: \
+ CONFIG -= debug
+
+debug_and_release {
+ !macx-xcode: addExclusiveBuilds(debug, Debug, release, Release)
+} else: fix_output_dirs {
+ debug: \
+ fixExclusiveOutputDirs(debug, release)
+ else: \
+ fixExclusiveOutputDirs(release, debug)
+}