From f75e897519183f4c5503f5c4d1c0b7046dc9d81c Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Mon, 28 Jan 2013 20:25:33 +0100 Subject: centralize detection of prefix builds this makes the use sites more expressive Change-Id: Ib879de65d1cc26462fa61f5339e951f294515faf Reviewed-by: Joerg Bornemann --- mkspecs/features/qml_module.prf | 2 +- mkspecs/features/qt_build_config.prf | 5 ++++- mkspecs/features/qt_build_paths.prf | 4 ++-- mkspecs/features/qt_module.prf | 2 +- mkspecs/features/qt_tool.prf | 2 +- 5 files changed, 9 insertions(+), 6 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf index e7d0b386b1..db5f6787b3 100644 --- a/mkspecs/features/qml_module.prf +++ b/mkspecs/features/qml_module.prf @@ -25,7 +25,7 @@ qml1_target: \ else: \ instbase = $$[QT_INSTALL_QML] -exists($$[QT_HOST_PREFIX]/.qmake.cache) { +!prefix_build { # These bizarre rules copy the files to the qtbase build directory defineReplace(qmlModStripSrcDir) { diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf index 48d6001aa9..4f5b62e1e5 100644 --- a/mkspecs/features/qt_build_config.prf +++ b/mkspecs/features/qt_build_config.prf @@ -20,7 +20,10 @@ debug(1, "Not loading qmodule.pri twice") } -!build_pass:!isEmpty(_QMAKE_SUPER_CACHE_):!exists($$[QT_HOST_DATA]/.qmake.cache) { +!exists($$[QT_HOST_DATA]/.qmake.cache): \ + CONFIG += prefix_build + +!build_pass:!isEmpty(_QMAKE_SUPER_CACHE_):prefix_build { # When doing a -prefix build of top-level qt5/qt.pro, we need to announce # this repo's module pris' location to the other repos. isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$shadowed($$dirname(_QMAKE_CONF_)) diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf index 123c87de3b..03b43e3153 100644 --- a/mkspecs/features/qt_build_paths.prf +++ b/mkspecs/features/qt_build_paths.prf @@ -16,8 +16,8 @@ isEmpty(MODULE_BASE_DIR): MODULE_BASE_DIR = $$MODULE_PROFILE_DIR isEmpty(MODULE_BASE_OUTDIR): MODULE_BASE_OUTDIR = $$shadowed($$MODULE_BASE_DIR) isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$MODULE_BASE_OUTDIR -QTDIR = $$[QT_HOST_PREFIX] -exists($$QTDIR/.qmake.cache) { +!prefix_build { + QTDIR = $$[QT_HOST_PREFIX] # Permit modules to enforce being built outside QTDIR ... !force_independent: MODULE_BASE_OUTDIR = $$QTDIR # ... though this sort of breaks the idea. diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf index 50e946937c..810356c8b1 100644 --- a/mkspecs/features/qt_module.prf +++ b/mkspecs/features/qt_module.prf @@ -112,7 +112,7 @@ INCLUDEPATH *= $$eval(QT.$${MODULE}.includes) $$eval(QT.$${MODULE}.private_inclu #other TEMPLATE = lib DESTDIR = $$eval(QT.$${MODULE}.libs) -win32:!wince*:exists($$[QT_INSTALL_PREFIX]/.qmake.cache): DLLDESTDIR = $$eval(QT.$${MODULE}.bins) +win32:!wince*:!prefix_build: DLLDESTDIR = $$eval(QT.$${MODULE}.bins) CONFIG += qmake_cache target_qt diff --git a/mkspecs/features/qt_tool.prf b/mkspecs/features/qt_tool.prf index 16db6c7972..b449e4074d 100644 --- a/mkspecs/features/qt_tool.prf +++ b/mkspecs/features/qt_tool.prf @@ -31,7 +31,7 @@ load(qt_targets) # If we are doing a prefix build, create a "module" pri which enables # qtPrepareTool() to work with the non-installed build. -!build_pass:!exists($$[QT_INSTALL_PREFIX]/.qmake.cache) { +!build_pass:prefix_build { isEmpty(MODULE):MODULE = $$TARGET -- cgit v1.2.3