commit:     386a341614bd6f89919a122eabe31cbb13f27822
Author:     Andreas K. Huettel (dilfridge) <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 17 18:52:34 2014 +0000
Commit:     Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Oct 17 18:52:34 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/kde.git;a=commit;h=386a3416

[kde-base/print-manager] Fix build with cups-2.0, bug525598

Package-Manager: portage-2.2.14_rc1

---
 .../files/print-manager-4.14.1-cups20.patch        | 72 ++++++++++++++++++++++
 kde-base/print-manager/print-manager-4.14.2.ebuild |  2 +
 2 files changed, 74 insertions(+)

diff --git a/kde-base/print-manager/files/print-manager-4.14.1-cups20.patch 
b/kde-base/print-manager/files/print-manager-4.14.1-cups20.patch
new file mode 100644
index 0000000..58c59dd
--- /dev/null
+++ b/kde-base/print-manager/files/print-manager-4.14.1-cups20.patch
@@ -0,0 +1,72 @@
+diff --git a/libkcups/KCupsConnection.cpp b/libkcups/KCupsConnection.cpp
+index 713be2f..335fc46 100644
+--- a/libkcups/KCupsConnection.cpp
++++ b/libkcups/KCupsConnection.cpp
+@@ -377,11 +377,11 @@ int KCupsConnection::renewDBusSubscription(int 
subscriptionId, int leaseDuration
+         response = request.sendIppRequest();
+     } while (retry("/", operation));
+ 
+-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#if !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+     if (response && ippGetStatusCode(response) == IPP_OK) {
+ #else
+     if (response && response->request.status.status_code == IPP_OK) {
+-#endif // CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#endif // !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+         ipp_attribute_t *attr;
+         if (subscriptionId >= 0) {
+             // Request was ok, just return the current subscription
+@@ -392,7 +392,7 @@ int KCupsConnection::renewDBusSubscription(int 
subscriptionId, int leaseDuration
+             kWarning() << "No notify-subscription-id in response!";
+             ret = -1;
+         } else {
+-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#if !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+             ret = ippGetInteger(attr, 0);
+         }
+     } else if (subscriptionId >= 0 && response && ippGetStatusCode(response) 
== IPP_NOT_FOUND) {
+@@ -406,7 +406,7 @@ int KCupsConnection::renewDBusSubscription(int 
subscriptionId, int leaseDuration
+         kDebug() << "Subscription not found";
+         // When the subscription is not found try to get a new one
+         return renewDBusSubscription(-1, leaseDuration, events);
+-#endif // CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#endif // !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+     } else {
+         kDebug() << "Request failed" << cupsLastError() << 
httpGetStatus(CUPS_HTTP_DEFAULT);
+         // When the server stops/restarts we will have some error so ignore it
+@@ -582,7 +582,7 @@ ReturnArguments KCupsConnection::parseIPPVars(ipp_t 
*response, ipp_tag_t group_t
+     ipp_attribute_t *attr;
+     ReturnArguments ret;
+ 
+-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#if !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+     QVariantHash destAttributes;
+     for (attr = ippFirstAttribute(response); attr != NULL; attr = 
ippNextAttribute(response)) {
+         // We hit an attribute sepparator
+@@ -659,7 +659,7 @@ ReturnArguments KCupsConnection::parseIPPVars(ipp_t 
*response, ipp_tag_t group_t
+             break;
+         }
+     }
+-#endif // CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#endif // !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+ 
+     return ret;
+ }
+@@ -667,7 +667,7 @@ ReturnArguments KCupsConnection::parseIPPVars(ipp_t 
*response, ipp_tag_t group_t
+ QVariant KCupsConnection::ippAttrToVariant(ipp_attribute_t *attr)
+ {
+     QVariant ret;
+-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#if !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+     switch (ippGetValueTag(attr)) {
+     case IPP_TAG_INTEGER:
+     case IPP_TAG_ENUM:
+@@ -760,7 +760,7 @@ QVariant KCupsConnection::ippAttrToVariant(ipp_attribute_t 
*attr)
+             ret = values;
+         }
+     }
+-#endif // CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 6
++#endif // !(CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 6)
+     return ret;
+ }
+ 

diff --git a/kde-base/print-manager/print-manager-4.14.2.ebuild 
b/kde-base/print-manager/print-manager-4.14.2.ebuild
index abba251..680616e 100644
--- a/kde-base/print-manager/print-manager-4.14.2.ebuild
+++ b/kde-base/print-manager/print-manager-4.14.2.ebuild
@@ -19,3 +19,5 @@ RDEPEND="${DEPEND}
        !kde-misc/print-manager
        app-admin/system-config-printer-gnome
 "
+
+PATCHES=( "${FILESDIR}/${PN}-4.14.1-cups20.patch" )

Reply via email to