summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2011-05-18 15:23:51 +0200
committerQt Continuous Integration System <qt-info@nokia.com>2011-06-03 22:20:40 +0200
commit0e6be2aa5dcddbab4e13e55e7f84a1099972f194 (patch)
tree00aee1888ba0a63903c48f9a22312a113af90c41 /mkspecs
parent55f2a05a205adad12cf17f2dbfa37b434a303c23 (diff)
Implemented module-local caching of module profiles.
We use syncqt to generate .qmake.cache also for submodules, which contains the location of forwarding module profiles for that module. This enables us to build without having to put module profiles into mkspecs/modules until install time. Also added support for -developer-build to syncqt. What it does is to point build directories for binaries and libraries to a common location in QtBase. This is more convenient when doing development, since you don't need to set your path to every module's bin/ directory, but it cannot be used with release builds, since they need to build independently of QtBase, in their own directory. Change-Id: I959c62c11c644f2147a98da894a72452d9c44327 Task: QTBUG-19585 Task: QTBUG-19583 Reviewed-on: http://codereview.qt.nokia.com/232 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/default_pre.prf8
-rw-r--r--mkspecs/features/qt_config.prf10
2 files changed, 11 insertions, 7 deletions
diff --git a/mkspecs/features/default_pre.prf b/mkspecs/features/default_pre.prf
index 7088eb444e..86ad9eb764 100644
--- a/mkspecs/features/default_pre.prf
+++ b/mkspecs/features/default_pre.prf
@@ -14,8 +14,12 @@ exists($$_PRO_FILE_PWD_/sync.profile) {
isEmpty(QTDIR):QTDIR = $$QT_BUILD_TREE
}
- isEmpty(QTDIR):QTFWD="-no-module-fwd"
- else:QTFWD="-qtdir $$QTDIR"
+ QTFWD =
+ isEmpty(QTDIR) {
+ QTFWD += -module-fwd $$OUT_PWD/module-paths/modules -cache-module-fwd
+ } else {
+ QTFWD += -qtdir $$QTDIR -module-fwd $$QTDIR/mkspecs/modules -developer-build
+ }
message("Running syncqt for $$PRO_BASENAME in $$OUT_PWD")
qtPrepareTool(QMAKE_SYNCQT, syncqt)
diff --git a/mkspecs/features/qt_config.prf b/mkspecs/features/qt_config.prf
index 01b5a796a5..3d0028c3a3 100644
--- a/mkspecs/features/qt_config.prf
+++ b/mkspecs/features/qt_config.prf
@@ -14,12 +14,12 @@ isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) {
debug(1, "Cannot load qconfig.pri!")
} else {
debug(1, "Loaded .qconfig.pri from ($$QMAKE_QT_CONFIG)")
- for(dir, $$list($$unique($$list($$dirname(QMAKE_QT_CONFIG) \
- $$replace($$list($$split($$list($$(QMAKEPATH)), $$DIRLIST_SEPARATOR)), $, /mkspecs) \
- $$QMAKE_EXTRA_MODULE_FORWARDS \
- )))) {
+ for(dir, $$list($$unique($$list($$replace($$list($$dirname(QMAKE_QT_CONFIG) \
+ $$replace($$list($$split($$list($$(QMAKEPATH)), $$DIRLIST_SEPARATOR)), $, /mkspecs)), \
+ $, /modules) \
+ $$QMAKE_EXTRA_MODULE_FORWARDS)))) {
debug(1, "Loading modules from $${dir}")
- for(mod, $$list($$files($$dir/modules/qt_*.pri))) {
+ for(mod, $$list($$files($$dir/qt_*.pri))) {
# For installed Qt these paths will be common for all modules
# For development these will vary per module, and syncqt will override the value in the
# qt_<module>.pri forwarding file