summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_build_paths.prf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features/qt_build_paths.prf')
-rw-r--r--mkspecs/features/qt_build_paths.prf25
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
+