summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPekka Vuorela <pekka.vuorela@jolla.com>2018-08-16 14:40:05 +0300
committerPekka Vuorela <pvuorela@iki.fi>2018-09-07 15:05:09 +0000
commit0f6db779f8ca846fdd9a2d8d97be8958a056cdeb (patch)
tree6e5fe69f9a89bc8ab29899b8e7630c8fd44d2795
parentca3a441dc0f8f69599593a52c6a25b034035b36d (diff)
Add QMF_NO_WIDGETS option to disable QtWidgets depending code
QMF_NO_MESSAGE_SERVICE_EDITOR used to have this effect but now that QmfWidget is a separate module, it pulls in QtWidgets. There could be use for disabling service editors, but still keeping QmfWidgets, but now for simplicity just disabling both with the new option. Change-Id: Iebb5c52aab4b645572f694bae8c5ed40e8d6aa6b Reviewed-by: Christopher Adams <chris.adams@jollamobile.com> Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
-rw-r--r--README12
-rw-r--r--examples/examples.pro5
-rw-r--r--messagingframework.pro5
-rw-r--r--src/libraries/libraries.pro8
-rw-r--r--src/libraries/qmfmessageserver/qmailmessageservice.cpp4
-rw-r--r--src/libraries/qmfmessageserver/qmailmessageservice.h4
-rw-r--r--src/libraries/qmfmessageserver/qmfmessageserver.pro2
-rw-r--r--src/plugins/messageservices/imap/imap.pro14
-rw-r--r--src/plugins/messageservices/imap/imapservice.cpp6
-rw-r--r--src/plugins/messageservices/pop/pop.pro8
-rw-r--r--src/plugins/messageservices/pop/popservice.cpp6
-rw-r--r--src/plugins/messageservices/qmfsettings/qmfsettings.pro2
-rw-r--r--src/plugins/messageservices/qmfsettings/service.cpp6
-rw-r--r--src/plugins/messageservices/smtp/smtp.pro10
-rw-r--r--src/plugins/messageservices/smtp/smtpservice.cpp6
-rw-r--r--src/tools/messageserver/messageserver.pro2
16 files changed, 56 insertions, 44 deletions
diff --git a/README b/README
index 9533064c..ab09b3e5 100644
--- a/README
+++ b/README
@@ -29,12 +29,14 @@ Note: If there are build errors referring to valgrind (tst_messageserver),
please ensure that valgrind development headers are installed, or optionally
remove unwanted tests from the messagingframework.pro.
-Note: By default the QMF libraries, messageserver and protocol plugins depend
-on the QtGui library. This is so that protocol plugins (e.g. IMAP/SMTP/POP)
-can provide GUI account editors. To remove this dependency use the define
-QMF_NO_MESSAGE_SERVICE_EDITOR e.g:
+Note: By default the QmfWidgets module will be built, which depends on QtWidgets.
+To remove this dependency use the define QMF_NO_WIDGETS, e.g.
- qmake -r messagingframework.pro DEFINES+=QMF_NO_MESSAGE_SERVICE_EDITOR
+ qmake -r messagingframework.pro DEFINES+=QMF_NO_WIDGETS
+
+In addition there is support for protocol plugins (e.g. IMAP/SMTP/POP)
+to provide GUI account editors, which are by default and will be disabled
+with above QMF_NO_WIDGETS.
Note: By default QMF operations on the message store are atomic and durable, so
long as the underlying OS supports durable writes, e.g. on Linux based systems
diff --git a/examples/examples.pro b/examples/examples.pro
index d1d84f49..4abbeda8 100644
--- a/examples/examples.pro
+++ b/examples/examples.pro
@@ -1,2 +1,5 @@
TEMPLATE = subdirs
-SUBDIRS = qtmail messagingaccounts serverobserver
+
+!contains(DEFINES,QMF_NO_WIDGETS) {
+ SUBDIRS = qtmail messagingaccounts serverobserver
+}
diff --git a/messagingframework.pro b/messagingframework.pro
index c803ddf6..fb0c343b 100644
--- a/messagingframework.pro
+++ b/messagingframework.pro
@@ -6,7 +6,10 @@ requires(!qnx)
requires(!android)
requires(!integrity)
requires(!vxworks)
-requires(qtHaveModule(widgets))
+
+!contains(DEFINES,QMF_NO_WIDGETS) {
+ requires(qtHaveModule(widgets))
+}
load(qt_parts)
diff --git a/src/libraries/libraries.pro b/src/libraries/libraries.pro
index ec8a1558..d5baa701 100644
--- a/src/libraries/libraries.pro
+++ b/src/libraries/libraries.pro
@@ -1,5 +1,9 @@
TEMPLATE = subdirs
-SUBDIRS = qmfclient qmfmessageserver qmfwidgets
+SUBDIRS = qmfclient qmfmessageserver
qmfmessageserver.depends = qmfclient
-qmfwidgets.depends = qmfclient
+
+!contains(DEFINES,QMF_NO_WIDGETS) {
+ SUBDIRS += qmfwidgets
+ qmfwidgets.depends = qmfclient
+}
diff --git a/src/libraries/qmfmessageserver/qmailmessageservice.cpp b/src/libraries/qmfmessageserver/qmailmessageservice.cpp
index 21478542..46611e75 100644
--- a/src/libraries/qmfmessageserver/qmailmessageservice.cpp
+++ b/src/libraries/qmfmessageserver/qmailmessageservice.cpp
@@ -1533,7 +1533,7 @@ void QMailMessageService::updateStatus(int code, const QString &text, const QMai
}
}
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
/*!
\class QMailMessageServiceEditor
\ingroup libmessageserver
@@ -1610,7 +1610,7 @@ QStringList QMailMessageServiceConfigurator::serviceConstraints(QMailMessageServ
return QStringList();
}
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
/*!
\fn QMailMessageServiceEditor *QMailMessageServiceConfigurator::createEditor(QMailMessageServiceFactory::ServiceType type);
diff --git a/src/libraries/qmfmessageserver/qmailmessageservice.h b/src/libraries/qmfmessageserver/qmailmessageservice.h
index e5dd5586..a5f3e7f3 100644
--- a/src/libraries/qmfmessageserver/qmailmessageservice.h
+++ b/src/libraries/qmfmessageserver/qmailmessageservice.h
@@ -331,7 +331,7 @@ private:
const QMailMessageService &operator=(const QMailMessageService &other);
};
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
#include <QWidget>
class MESSAGESERVER_EXPORT QMailMessageServiceEditor : public QWidget
{
@@ -357,7 +357,7 @@ public:
virtual QStringList serviceConstraints(QMailMessageServiceFactory::ServiceType type) const;
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
virtual QMailMessageServiceEditor *createEditor(QMailMessageServiceFactory::ServiceType type) = 0;
#endif
};
diff --git a/src/libraries/qmfmessageserver/qmfmessageserver.pro b/src/libraries/qmfmessageserver/qmfmessageserver.pro
index 81de0d9e..b042ba2b 100644
--- a/src/libraries/qmfmessageserver/qmfmessageserver.pro
+++ b/src/libraries/qmfmessageserver/qmfmessageserver.pro
@@ -14,7 +14,7 @@ contains(DEFINES,MESSAGESERVER_PLUGINS) {
load(qt_module)
CONFIG -= create_cmake
-!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) {
+!contains(DEFINES,QMF_NO_WIDGETS) {
QT += gui widgets
}
diff --git a/src/plugins/messageservices/imap/imap.pro b/src/plugins/messageservices/imap/imap.pro
index 263df59e..349f96be 100644
--- a/src/plugins/messageservices/imap/imap.pro
+++ b/src/plugins/messageservices/imap/imap.pro
@@ -3,7 +3,7 @@ TARGET = imap
PLUGIN_TYPE = messageservices
load(qt_plugin)
-QT = core network qmfclient qmfclient-private qmfmessageserver qmfwidgets
+QT = core network qmfclient qmfclient-private qmfmessageserver
contains(DEFINES,QT_QMF_USE_ALIGNEDTIMER) {
QT += alignedtimer
@@ -32,18 +32,18 @@ SOURCES += imapclient.cpp \
imaptransport.cpp \
serviceactionqueue.cpp
-!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) {
- QT += gui widgets
+!contains(DEFINES,QMF_NO_WIDGETS) {
+ QT += qmfwidgets
-HEADERS += \
+ HEADERS += \
imapsettings.h
-FORMS += imapsettings.ui
+ FORMS += imapsettings.ui
-SOURCES += \
+ SOURCES += \
imapsettings.cpp
-RESOURCES += imap.qrc
+ RESOURCES += imap.qrc
}
qtConfig(system-zlib) {
diff --git a/src/plugins/messageservices/imap/imapservice.cpp b/src/plugins/messageservices/imap/imapservice.cpp
index a5adeb04..a4ed6276 100644
--- a/src/plugins/messageservices/imap/imapservice.cpp
+++ b/src/plugins/messageservices/imap/imapservice.cpp
@@ -32,7 +32,7 @@
****************************************************************************/
#include "imapservice.h"
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
#include "imapsettings.h"
#endif
#include "imapconfiguration.h"
@@ -1686,7 +1686,7 @@ public:
virtual QString service() const;
virtual QString displayName() const;
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
virtual QMailMessageServiceEditor *createEditor(QMailMessageServiceFactory::ServiceType type);
#endif
};
@@ -1709,7 +1709,7 @@ QString ImapConfigurator::displayName() const
return QCoreApplication::instance()->translate("QMailMessageService", "IMAP");
}
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
QMailMessageServiceEditor *ImapConfigurator::createEditor(QMailMessageServiceFactory::ServiceType type)
{
if (type == QMailMessageServiceFactory::Source)
diff --git a/src/plugins/messageservices/pop/pop.pro b/src/plugins/messageservices/pop/pop.pro
index 892b10be..837f928f 100644
--- a/src/plugins/messageservices/pop/pop.pro
+++ b/src/plugins/messageservices/pop/pop.pro
@@ -15,15 +15,15 @@ SOURCES += popclient.cpp \
popservice.cpp \
popauthenticator.cpp
-!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) {
+!contains(DEFINES,QMF_NO_WIDGETS) {
QT += gui widgets
-HEADERS += \
+ HEADERS += \
popsettings.h
-FORMS += popsettings.ui
+ FORMS += popsettings.ui
-SOURCES += \
+ SOURCES += \
popsettings.cpp \
}
diff --git a/src/plugins/messageservices/pop/popservice.cpp b/src/plugins/messageservices/pop/popservice.cpp
index 8f31eb7b..7d9aa16e 100644
--- a/src/plugins/messageservices/pop/popservice.cpp
+++ b/src/plugins/messageservices/pop/popservice.cpp
@@ -33,7 +33,7 @@
#include "popservice.h"
#include "popconfiguration.h"
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
#include "popsettings.h"
#endif
#include <QTimer>
@@ -408,7 +408,7 @@ public:
virtual QString service() const;
virtual QString displayName() const;
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
virtual QMailMessageServiceEditor *createEditor(QMailMessageServiceFactory::ServiceType type);
#endif
};
@@ -431,7 +431,7 @@ QString PopConfigurator::displayName() const
return QCoreApplication::instance()->translate("QMailMessageService", "POP");
}
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
QMailMessageServiceEditor *PopConfigurator::createEditor(QMailMessageServiceFactory::ServiceType type)
{
if (type == QMailMessageServiceFactory::Source)
diff --git a/src/plugins/messageservices/qmfsettings/qmfsettings.pro b/src/plugins/messageservices/qmfsettings/qmfsettings.pro
index 9d585bc8..9ff2cfcc 100644
--- a/src/plugins/messageservices/qmfsettings/qmfsettings.pro
+++ b/src/plugins/messageservices/qmfsettings/qmfsettings.pro
@@ -9,7 +9,7 @@ HEADERS += service.h
SOURCES += service.cpp
-!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) {
+!contains(DEFINES,QMF_NO_WIDGETS) {
QT += gui widgets
HEADERS += settings.h
diff --git a/src/plugins/messageservices/qmfsettings/service.cpp b/src/plugins/messageservices/qmfsettings/service.cpp
index 007d4f1d..3e8f478a 100644
--- a/src/plugins/messageservices/qmfsettings/service.cpp
+++ b/src/plugins/messageservices/qmfsettings/service.cpp
@@ -32,7 +32,7 @@
****************************************************************************/
#include "service.h"
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
#include "settings.h"
#endif
#include <QtPlugin>
@@ -50,7 +50,7 @@ public:
virtual QString service() const;
virtual QString displayName() const;
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
virtual QMailMessageServiceEditor *createEditor(QMailMessageServiceFactory::ServiceType type);
#endif
};
@@ -73,7 +73,7 @@ QString QmfConfigurator::displayName() const
return QCoreApplication::instance()->translate("QMailMessageService", "Mailfile");
}
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
QMailMessageServiceEditor *QmfConfigurator::createEditor(QMailMessageServiceFactory::ServiceType type)
{
if (type == QMailMessageServiceFactory::Storage)
diff --git a/src/plugins/messageservices/smtp/smtp.pro b/src/plugins/messageservices/smtp/smtp.pro
index 785261c4..d3c920fb 100644
--- a/src/plugins/messageservices/smtp/smtp.pro
+++ b/src/plugins/messageservices/smtp/smtp.pro
@@ -15,15 +15,15 @@ SOURCES += smtpauthenticator.cpp \
smtpconfiguration.cpp \
smtpservice.cpp
-!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) {
- QT += gui widgets
+!contains(DEFINES,QMF_NO_WIDGETS) {
+ QT += gui widgets qmfwidgets
-HEADERS += \
+ HEADERS += \
smtpsettings.h
-FORMS += smtpsettings.ui
+ FORMS += smtpsettings.ui
-SOURCES += \
+ SOURCES += \
smtpsettings.cpp
}
diff --git a/src/plugins/messageservices/smtp/smtpservice.cpp b/src/plugins/messageservices/smtp/smtpservice.cpp
index 0068c90a..4c369380 100644
--- a/src/plugins/messageservices/smtp/smtpservice.cpp
+++ b/src/plugins/messageservices/smtp/smtpservice.cpp
@@ -32,7 +32,7 @@
****************************************************************************/
#include "smtpservice.h"
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
#include "smtpsettings.h"
#endif
#include <QtPlugin>
@@ -306,7 +306,7 @@ public:
virtual QString service() const;
virtual QString displayName() const;
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
virtual QMailMessageServiceEditor *createEditor(QMailMessageServiceFactory::ServiceType type);
#endif
};
@@ -329,7 +329,7 @@ QString SmtpConfigurator::displayName() const
return QCoreApplication::instance()->translate("QMailMessageService", "SMTP");
}
-#ifndef QMF_NO_MESSAGE_SERVICE_EDITOR
+#ifndef QMF_NO_WIDGETS
QMailMessageServiceEditor *SmtpConfigurator::createEditor(QMailMessageServiceFactory::ServiceType type)
{
if (type == QMailMessageServiceFactory::Sink)
diff --git a/src/tools/messageserver/messageserver.pro b/src/tools/messageserver/messageserver.pro
index a7d6ddef..a70edfe4 100644
--- a/src/tools/messageserver/messageserver.pro
+++ b/src/tools/messageserver/messageserver.pro
@@ -9,7 +9,7 @@ SERVER_AS_DLL: {
TARGET = messageserver5
QT = core qmfclient qmfclient-private qmfmessageserver
-!contains(DEFINES,QMF_NO_MESSAGE_SERVICE_EDITOR) {
+!contains(DEFINES,QMF_NO_WIDGETS) {
QT += gui widgets
}