diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-01-17 17:10:21 +0100 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-01-20 09:29:37 +0000 |
commit | 6834d0eeccc7333ab9d53251b3bd4a24058843da (patch) | |
tree | 7e33ad005cbe70e82e432509a6b7daa868869083 | |
parent | d22579f51ef342a54937cb99dab62331afa0ff91 (diff) |
prevent configure from putting garbage into .qmake.stash
in cross-builds, toolchain.prf was loaded before CROSS_COMPILE was set
up, leading to caching of possibly nonsensical values.
this change also necessitated that msvc-version.conf is loaded only when
toolchain.prf is, which is best done by loading the former from within
the latter. that seems quite appropriate in the first place.
Change-Id: I62577e827a75e335e03df016bd1aa1932643fd6c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
-rw-r--r-- | configure.pri | 12 | ||||
-rw-r--r-- | mkspecs/features/toolchain.prf | 2 | ||||
-rw-r--r-- | mkspecs/features/win32/default_pre.prf | 1 |
3 files changed, 13 insertions, 2 deletions
diff --git a/configure.pri b/configure.pri index cc173b6777..94aea44b13 100644 --- a/configure.pri +++ b/configure.pri @@ -411,7 +411,10 @@ defineTest(reloadSpec) { # so don't bother with being selective. QMAKE_INTERNAL_INCLUDED_FEATURES = \ # loading it gets simulated below. - $$[QT_HOST_DATA/src]/mkspecs/features/device_config.prf + $$[QT_HOST_DATA/src]/mkspecs/features/device_config.prf \ + # must be delayed until qdevice.pri is ready. + $$[QT_HOST_DATA/src]/mkspecs/features/mac/toolchain.prf \ + $$[QT_HOST_DATA/src]/mkspecs/features/toolchain.prf _SAVED_CONFIG = $$CONFIG load(spec_pre) @@ -825,6 +828,13 @@ defineTest(qtConfOutput_reloadSpec) { !isEmpty($${currentConfig}.output.devicePro)| \ !isEmpty(config.input.sysroot): \ reloadSpec() + + bypassNesting() { + QMAKE_INTERNAL_INCLUDED_FEATURES -= \ + $$[QT_HOST_DATA/src]/mkspecs/features/mac/toolchain.prf \ + $$[QT_HOST_DATA/src]/mkspecs/features/toolchain.prf + load(toolchain) + } } defineTest(qtConfOutput_shared) { diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf index d71f40b831..fdefd513e3 100644 --- a/mkspecs/features/toolchain.prf +++ b/mkspecs/features/toolchain.prf @@ -153,3 +153,5 @@ unset(target_prefix) QMAKE_CFLAGS += $$QMAKE_CFLAGS_MSVC_COMPAT QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_MSVC_COMPAT + +msvc:!intel_icl:!clang_cl: include(../common/msvc-version.conf) diff --git a/mkspecs/features/win32/default_pre.prf b/mkspecs/features/win32/default_pre.prf index 11160f5b5c..bdb72c0d89 100644 --- a/mkspecs/features/win32/default_pre.prf +++ b/mkspecs/features/win32/default_pre.prf @@ -1,3 +1,2 @@ CONFIG = rtti_off incremental_off windows $$CONFIG load(default_pre) -msvc:!intel_icl:!clang_cl: include(../../common/msvc-version.conf) |