diff options
author | Oswald Buddenhagen <oswald.buddenhagen@digia.com> | 2012-10-23 22:15:43 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2012-10-29 22:21:32 +0100 |
commit | 4a9ffb5c9ee3f2b307fd9dc794d1467ed03f9bdb (patch) | |
tree | 9499069d5f33f12ed491062ada5e2806989dbbe2 /mkspecs/features/qt_build_paths.prf | |
parent | c9266e7cb93cc9c265f0de69e3660ee7dc4492c6 (diff) |
centralize module directory calculation
Change-Id: I5db529676b3287013008f28623a541fee1cde6a0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'mkspecs/features/qt_build_paths.prf')
-rw-r--r-- | mkspecs/features/qt_build_paths.prf | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf new file mode 100644 index 0000000000..75b83c0a5a --- /dev/null +++ b/mkspecs/features/qt_build_paths.prf @@ -0,0 +1,25 @@ +# Find the module's source root dir. +MODULE_PROFILE_DIR = $$_PRO_FILE_PWD_ +for(ever) { + exists($$MODULE_PROFILE_DIR/sync.profile):break() + nmpri = $$dirname(MODULE_PROFILE_DIR) + equals(nmpri, $$MODULE_PROFILE_DIR):error("No sync.profile found. This does not look like a Qt module source tree.") + MODULE_PROFILE_DIR = $$nmpri + unset(nmpri) +} + +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) { + mod_component_base = $$QTDIR + mod_qmake_base = $$QTDIR +} else { + mod_component_base = $$MODULE_BASE_OUTDIR + mod_qmake_base = $$MODULE_QMAKE_OUTDIR +} +# Permit modules to enforce being built outside QTDIR. +force_independent: mod_component_base = $$MODULE_BASE_OUTDIR + |