make_libgapi_optional
authorDebian/Kubuntu Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Tue, 16 Oct 2018 14:10:00 +0000 (15:10 +0100)
committerPeter Michael Green <plugwash@raspbian.org>
Tue, 16 Oct 2018 14:10:00 +0000 (15:10 +0100)
Gbp-Pq: Name make_libgapi_optional.patch

CMakeLists.txt
src/kmailtransport/plugins/smtp/CMakeLists.txt
src/kmailtransport/plugins/smtp/autotests/CMakeLists.txt
src/kmailtransport/plugins/smtp/smtpjob.cpp
src/kmailtransport/plugins/smtp/smtpjob.h

index c40be2837518e9a641dacec910c674b0e5741684..3a5af26e87c2cbd8ba48b1cbcc3db7eb0d8930fd 100644 (file)
@@ -42,13 +42,17 @@ find_package(KF5Mime ${KMIME_LIB_VERSION} CONFIG REQUIRED)
 find_package(KF5Akonadi ${AKONADI_LIB_VERSION} CONFIG REQUIRED)
 find_package(KF5AkonadiMime ${AKONADIMIME_LIB_VERSION} CONFIG REQUIRED)
 find_package(KPimSMTP ${KSMTP_LIB_VERSION} CONFIG REQUIRED)
-find_package(KPimGAPI ${KGAPI_LIB_VERSION} CONFIG REQUIRED)
+find_package(KPimGAPI ${KGAPI_LIB_VERSION} CONFIG)
 
 add_definitions("-DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII")
 add_definitions(-DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT)
 add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x060000)
 add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
 
+if(KPimGAPI_FOUND)
+add_definitions(-DWITH_GAPI)
+endif(KPimGAPI_FOUND)
+
 if(BUILD_TESTING)
    add_definitions(-DBUILD_TESTING)
 endif(BUILD_TESTING)
index dc627776bafefa89f022fcb54b478f971011ebe1..4ff2a2c059bc887c359fc96a5661349b2df533dd 100644 (file)
@@ -23,5 +23,10 @@ target_link_libraries(mailtransport_smtpplugin
     KF5::KIOWidgets
     KF5::Completion
     KPim::SMTP
+    )
+
+if(KPimGAPI_FOUND)
+target_link_libraries(mailtransport_smtpplugin
     KPim::GAPICore
     )
+endif(KPimGAPI_FOUND)
index a92ecf4ddb3ee0b4cd377440d4058b746cb5f47c..3c3cd3491b0dd9fd906d11d32d670280880684fd 100644 (file)
@@ -15,6 +15,11 @@ ecm_add_test(smtpjobtest.cpp
                    KF5::ConfigWidgets
                    KF5::KIOWidgets
                    KPim::SMTP
-                   KPim::GAPICore
     TEST_NAME smtpjobtest
 )
+
+if(KPimGAPI_FOUND)
+target_link_libraries(smtpjobtest
+    KPim::GAPICore
+    )
+endif(KPimGAPI_FOUND)
index 122e2c554c87d7e50361c21b3cca8cc9f23552e3..9c6df51150296dbf74feb0a4a0874fc09927f454 100644 (file)
 #include <KSMTP/LoginJob>
 #include <KSMTP/SendJob>
 
+#ifdef WITH_GAPI
 #include <KGAPI/Account>
 #include <KGAPI/AuthJob>
 #include <KGAPI/AccountManager>
+#endif
 
 #define GOOGLE_API_KEY QStringLiteral("554041944266.apps.googleusercontent.com")
 #define GOOGLE_API_SECRET QStringLiteral("mdT1DjzohxN3npUUzkENT0gO")
@@ -197,6 +199,7 @@ void SmtpJob::startPasswordRetrieval(bool forceRefresh)
         return;
     }
 
+#ifdef WITH_GAPI
     if (transport()->authenticationType() == TransportBase::EnumAuthenticationType::XOAUTH2) {
         auto promise = KGAPI2::AccountManager::instance()->findAccount(
             GOOGLE_API_KEY, transport()->userName(), { KGAPI2::Account::mailScopeUrl() });
@@ -221,8 +224,12 @@ void SmtpJob::startPasswordRetrieval(bool forceRefresh)
     } else {
         startLoginJob();
     }
+#else
+    startLoginJob();
+#endif
 }
 
+#ifdef WITH_GAPI
 void SmtpJob::onTokenRequestFinished(KGAPI2::AccountPromise *promise)
 {
     if (promise->hasError()) {
@@ -239,7 +246,7 @@ void SmtpJob::onTokenRequestFinished(KGAPI2::AccountPromise *promise)
     transport()->setPassword(tokens);
     startLoginJob();
 }
-
+#endif
 
 void SmtpJob::startLoginJob()
 {
index 72458a8a32e3269710a083a29f2ffb633a3cb56c..574a935b753ee8cb3d82d877db3cd6fef00fdfbe 100644 (file)
@@ -31,9 +31,11 @@ class Job;
 class Slave;
 }
 
+#ifdef WITH_GAPI
 namespace KGAPI2 {
 class AccountPromise;
 }
+#endif
 
 class SmtpJobPrivate;
 
@@ -74,7 +76,9 @@ protected Q_SLOTS:
 
 private:
     void startPasswordRetrieval(bool forceRefresh = false);
+#ifdef WITH_GAPI
     void onTokenRequestFinished(KGAPI2::AccountPromise *result);
+#endif
     void startSmtpJob();
     void startLoginJob();
     void startSendJob();