summaryrefslogtreecommitdiffstats
path: root/mkspecs/features
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features')
-rw-r--r--mkspecs/features/configure_base.prf12
-rw-r--r--mkspecs/features/qt_helper_lib.prf2
-rw-r--r--mkspecs/features/unix/separate_debug_info.prf23
3 files changed, 33 insertions, 4 deletions
diff --git a/mkspecs/features/configure_base.prf b/mkspecs/features/configure_base.prf
index ed2f599bb0..fd1730741a 100644
--- a/mkspecs/features/configure_base.prf
+++ b/mkspecs/features/configure_base.prf
@@ -1,6 +1,14 @@
+equals(QMAKE_HOST.os, Windows) {
+ SETENV_PFX = "set "
+ SETENV_SFX = "&"
+} else {
+ SETENV_PFX =
+ SETENV_SFX =
+}
+
QMAKE_MAKE = $$(MAKE)
!isEmpty(QMAKE_MAKE) {
- # We were called recursively. Use the right make, as MAKEFLAGS may be set as well.
+ # We were called recursively. Use the same make.
} else: if(equals(MAKEFILE_GENERATOR, UNIX)|equals(MAKEFILE_GENERATOR, MINGW)) {
!equals(QMAKE_HOST.os, Windows): \
QMAKE_MAKE = make
@@ -11,6 +19,8 @@ QMAKE_MAKE = $$(MAKE)
} else {
error("Configure tests are not supported with the $$MAKEFILE_GENERATOR Makefile generator.")
}
+# Make sure we don't inherit MAKEFLAGS - -i in particular is fatal.
+QMAKE_MAKE = "$${SETENV_PFX}MAKEFLAGS=$$SETENV_SFX $$QMAKE_MAKE"
isEmpty(QMAKE_CONFIG_VERBOSE): QMAKE_CONFIG_VERBOSE = false
diff --git a/mkspecs/features/qt_helper_lib.prf b/mkspecs/features/qt_helper_lib.prf
index 668dead1d3..dc7a5da30e 100644
--- a/mkspecs/features/qt_helper_lib.prf
+++ b/mkspecs/features/qt_helper_lib.prf
@@ -27,6 +27,6 @@ DLLDESTDIR = $$MODULE_BASE_OUTDIR/bin
# In static builds of Qt, convenience libraries must be installed,
# as in this case they are not linked to the final library/plugin.
-installed|contains(QT_CONFIG, static): load(qt_installs)
+installed|if(!not_installed:contains(QT_CONFIG, static)): load(qt_installs)
TARGET = $$qt5LibraryTarget($$TARGET)
diff --git a/mkspecs/features/unix/separate_debug_info.prf b/mkspecs/features/unix/separate_debug_info.prf
index 460ad63e22..272cc8ef79 100644
--- a/mkspecs/features/unix/separate_debug_info.prf
+++ b/mkspecs/features/unix/separate_debug_info.prf
@@ -27,7 +27,12 @@ have_target:!static:if(darwin|!isEmpty(QMAKE_OBJCOPY)) {
CONFIG += any_bundle
}
- debug_info_target_dir = $${debug_info_target}.$$debug_info_suffix/Contents/Resources/DWARF
+ debug_info_target_rel = $$section(debug_info_target, /, -1, -1)
+
+ debug_info_target_dir_suffix = .$$debug_info_suffix/Contents/Resources/DWARF
+
+ debug_info_target_dir = $${debug_info_target}$${debug_info_target_dir_suffix}
+ debug_info_target_dir_rel = $${debug_info_target_rel}$${debug_info_target_dir_suffix}
!isEmpty(QMAKE_RESOLVED_BUNDLE): \
QMAKE_TARGET_DEBUG_INFO = $$debug_info_target_dir/$$TARGET
else: \
@@ -52,8 +57,23 @@ have_target:!static:if(darwin|!isEmpty(QMAKE_OBJCOPY)) {
debug_info_plist.output = $${debug_info_target}.$$debug_info_suffix/Contents/Info.plist
QMAKE_SUBSTITUTES += debug_info_plist
}
+
+ contains(INSTALLS, target):isEmpty(target.files):isEmpty(target.commands):isEmpty(target.extra) {
+ !build_pass|release {
+ debug_info_plist_target.CONFIG += no_check_exist
+ debug_info_plist_target.files = $${debug_info_target}.$$debug_info_suffix/Contents/Info.plist
+ debug_info_plist_target.path += $${target.path}/$${debug_info_target_rel}.$$debug_info_suffix/Contents
+ INSTALLS += debug_info_plist_target
+ }
+
+ debug_info_target.CONFIG += no_check_exist
+ debug_info_target.files = $$QMAKE_TARGET_DEBUG_INFO
+ debug_info_target.path += $${target.path}/$${debug_info_target_dir_rel}
+ INSTALLS += debug_info_target
+ }
} else {
QMAKE_TARGET_DEBUG_INFO = $${QMAKE_RESOLVED_TARGET}.$$debug_info_suffix
+ target.targets += $$QMAKE_TARGET_DEBUG_INFO
}
shell_target = $$shell_quote($$relative_path($$QMAKE_RESOLVED_TARGET, $$OUT_PWD))
@@ -72,6 +92,5 @@ have_target:!static:if(darwin|!isEmpty(QMAKE_OBJCOPY)) {
}
silent:QMAKE_POST_LINK = @echo creating $@.$$debug_info_suffix && $$QMAKE_POST_LINK
- target.targets += $$QMAKE_TARGET_DEBUG_INFO
QMAKE_DISTCLEAN += $$QMAKE_TARGET_DEBUG_INFO
}