diff options
author | Robin Burchell <robin.burchell@jollamobile.com> | 2013-07-18 12:44:46 +0200 |
---|---|---|
committer | Robin Burchell <robin+qt@viroteck.net> | 2013-08-07 07:02:14 +0200 |
commit | 8bcfbaab19a14cab2b77b4b89dc5811e0d709e0e (patch) | |
tree | 7a2fa58908f1982a0bc2a7e00e0744e494c3dfdc | |
parent | a84920f307cd4c5661f09dc41e562ff949d6779c (diff) |
Rework the build system to better use parallel builds.4.0.3
Instead of having one gigantic master .pro, split things out into multiple
SUBDIRS templates. This allows for slightly better grained build dependencies
without losing the sanity of a clearly understandable build system.
Change-Id: Ib09cd6170bcf8be55a1b351731f9a6451bb82d27
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
-rw-r--r-- | examples/examples.pro | 2 | ||||
-rw-r--r-- | examples/qtmail/qtmail.pro | 23 | ||||
-rw-r--r-- | messagingframework.pro | 38 | ||||
-rw-r--r-- | src/libraries/libraries.pro | 4 | ||||
-rw-r--r-- | src/plugins/plugins.pro | 8 | ||||
-rw-r--r-- | src/src.pro | 5 | ||||
-rw-r--r-- | src/tools/tools.pro | 2 | ||||
-rw-r--r-- | tests/tests.pro | 1 |
8 files changed, 56 insertions, 27 deletions
diff --git a/examples/examples.pro b/examples/examples.pro new file mode 100644 index 00000000..d1d84f49 --- /dev/null +++ b/examples/examples.pro @@ -0,0 +1,2 @@ +TEMPLATE = subdirs +SUBDIRS = qtmail messagingaccounts serverobserver diff --git a/examples/qtmail/qtmail.pro b/examples/qtmail/qtmail.pro new file mode 100644 index 00000000..d49cacc3 --- /dev/null +++ b/examples/qtmail/qtmail.pro @@ -0,0 +1,23 @@ +TEMPLATE = subdirs + +libs_qmfutil.subdir = libs/qmfutil +libs_qmfutil.target = sub-qmfutil + +app.subdir = app +app.target = sub-app +app.depends = sub-qmfutil + +plugins_viewers_generic.subdir = plugins/viewers/generic +plugins_viewers_generic.target = sub-plugins-viewers-generic +plugins_viewers_generic.depends = sub-qmfutil + +plugins_composers_email.subdir = plugins/composers/email +plugins_composers_email.target = sub-plugins-composers-email +plugins_composers_email.depends = sub-qmfutil + +SUBDIRS += \ + libs_qmfutil \ + app \ + plugins_viewers_generic \ + plugins_composers_email + diff --git a/messagingframework.pro b/messagingframework.pro index d47d54dc..7c9ca9f3 100644 --- a/messagingframework.pro +++ b/messagingframework.pro @@ -1,35 +1,21 @@ TEMPLATE = subdirs -CONFIG += ordered - -SUBDIRS = src/libraries/qmfclient \ - src/libraries/qmfmessageserver \ - src/plugins/messageservices/imap \ - src/plugins/messageservices/pop \ - src/plugins/messageservices/smtp \ - src/plugins/messageservices/qmfsettings \ - src/plugins/contentmanagers/qmfstoragemanager \ - src/tools/messageserver \ - tests +SUBDIRS = src tests -!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) { +tests.depends = src -SUBDIRS += \ - examples/qtmail/libs/qmfutil \ - examples/qtmail/app \ - examples/qtmail/plugins/viewers/generic \ - examples/qtmail/plugins/composers/email \ - examples/messagingaccounts \ - examples/serverobserver - -# disable benchmark test on mac until ported -!macx { - !SERVER_AS_DLL { - SUBDIRS += benchmarks +!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) { + SUBDIRS += examples + examples.depends = src + + # disable benchmark test on mac until ported + !macx { + !SERVER_AS_DLL { + SUBDIRS += benchmarks + benchmarks.depends = src + } } } -} - defineReplace(targetPath) { return($$replace(1, /, $$QMAKE_DIR_SEP)) } diff --git a/src/libraries/libraries.pro b/src/libraries/libraries.pro new file mode 100644 index 00000000..a85f1441 --- /dev/null +++ b/src/libraries/libraries.pro @@ -0,0 +1,4 @@ +TEMPLATE = subdirs +SUBDIRS = qmfclient qmfmessageserver + +qmfmessageserver.depends = qmfclient diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro new file mode 100644 index 00000000..053ed9bc --- /dev/null +++ b/src/plugins/plugins.pro @@ -0,0 +1,8 @@ +TEMPLATE = subdirs +SUBDIRS = \ + messageservices/imap \ + messageservices/pop \ + messageservices/smtp \ + messageservices/qmfsettings \ + contentmanagers/qmfstoragemanager + diff --git a/src/src.pro b/src/src.pro new file mode 100644 index 00000000..9c2e1632 --- /dev/null +++ b/src/src.pro @@ -0,0 +1,5 @@ +TEMPLATE = subdirs +SUBDIRS = libraries plugins tools + +plugins.depends = libraries +tools.depends = libraries diff --git a/src/tools/tools.pro b/src/tools/tools.pro new file mode 100644 index 00000000..d05c3377 --- /dev/null +++ b/src/tools/tools.pro @@ -0,0 +1,2 @@ +TEMPLATE = subdirs +SUBDIRS = messageserver diff --git a/tests/tests.pro b/tests/tests.pro index 782a6976..fb6d53ba 100644 --- a/tests/tests.pro +++ b/tests/tests.pro @@ -1,5 +1,4 @@ TEMPLATE = subdirs -CONFIG += ordered SUBDIRS = \ tst_python_email \ tst_qmailaddress \ |