git » polkit-qt.git » commit 2ae6d94

Drop Qt4 support

author Antonio Rojas
2018-08-24 07:08:05 UTC
committer Antonio Rojas
2018-08-24 07:08:05 UTC
parent b11b721de24689e279538b420090d22173fc16f0

Drop Qt4 support

PKGBUILD +8 -24
systembus-usage.patch +0 -79

diff --git a/PKGBUILD b/PKGBUILD
index 6c69727..fce1461 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,51 +1,35 @@
 # $Id: PKGBUILD 102633 2010-12-09 08:40:59Z andrea $
-# Maintainer: Andrea Scarpino <andrea@archlinux.org>
+# Maintainer: Antonio Rojas <arojas@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
 # Contributor: Pierre Schmitz <pierre@archlinux.de>
 
 pkgbase=polkit-qt
-pkgname=(polkit-qt4 polkit-qt5)
+pkgname=(polkit-qt5)
 pkgver=0.112.0+git20180107
 pkgrel=1
 pkgdesc='A library that allows developers to access PolicyKit API with a nice Qt-style API'
 arch=(x86_64)
 url='https://www.kde.org/'
 license=(LGPL)
-makedepends=(cmake polkit qt4 qt5-base git)
+depends=(polkit qt5-base)
+makedepends=(cmake git)
 #source=("http://download.kde.org/stable/apps/KDE4.x/admin/${pkgbase}-1-${pkgver}.tar.bz2")
 source=("git+https://anongit.kde.org/polkit-qt-1.git#commit=cbecf60ac7b5c17cf37503d6675bf5542efbab29")
 sha256sums=('SKIP')
 
 prepare() {
-  mkdir build{,-qt5}
+  mkdir -p build
 }
 
 build() {
   cd build
-  cmake ../${pkgbase}-1 \
-    -DCMAKE_BUILD_TYPE=Release \
-    -DCMAKE_INSTALL_PREFIX=/usr \
-    -DLIB_DESTINATION=/usr/lib \
-    -DUSE_QT4=ON
-  make
-
-  cd ../build-qt5
-  cmake ../${pkgbase}-1 \
-    -DCMAKE_BUILD_TYPE=Release \
+  cmake ../$pkgbase-1 \
     -DCMAKE_INSTALL_PREFIX=/usr \
     -DLIB_DESTINATION=/usr/lib
   make
 }
 
-package_polkit-qt4() {
-  depends=(polkit qt4)
-
-  cd build
-  make DESTDIR="$pkgdir" install
-}
-
 package_polkit-qt5() {
-  depends=(polkit qt5-base)
-
-  cd build-qt5
+  cd build
   make DESTDIR="$pkgdir" install
 }
diff --git a/systembus-usage.patch b/systembus-usage.patch
deleted file mode 100644
index 0fd0fa5..0000000
--- a/systembus-usage.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-commit 88c6e9334c8440721189ef7d020fa94d47f30f8b
-Author: Harald Sitter <sitter@kde.org>
-Date:   Fri Aug 1 16:34:03 2014 +0200
-
-    do not use global static systembus instance
-    
-    global static destruction order cannot be controlled and we need our bus
-    to disconnect from the consolekit signals, so use our own bus instance
-    to connect to systembus signals
-    
-    REVIEW: 119545
-
-diff --git a/core/polkitqt1-authority.cpp b/core/polkitqt1-authority.cpp
-index dd014cf..f25354d 100644
---- a/core/polkitqt1-authority.cpp
-+++ b/core/polkitqt1-authority.cpp
-@@ -83,7 +83,10 @@ public:
-     // Polkit will return NULL on failures, hence we use it instead of 0
-     Private(Authority *qq) : q(qq)
-             , pkAuthority(NULL)
--            , m_hasError(false) {}
-+            , m_hasError(false)
-+            , m_systemBus(0)
-+    {
-+    }
- 
-     ~Private();
- 
-@@ -103,6 +106,13 @@ public:
-     bool m_hasError;
-     Authority::ErrorCode m_lastError;
-     QString m_errorDetails;
-+    // Local system bus. QDBusConnection::systemBus() may only be savely used
-+    // inside a QCoreApplication scope as for example destruction of connected
-+    // objects need to happen before the bus disappears. Since this class however
-+    // is a global static and systemBus() internally is a global static we
-+    // cannot assure destruction order. Instead we create a local copy of the
-+    // global systemBus instance so we can make life time to our needs.
-+    // This prevents crashes when cleaning up the global statics.
-     QDBusConnection *m_systemBus;
-     GCancellable *m_checkAuthorizationCancellable,
-     *m_enumerateActionsCancellable,
-@@ -127,6 +137,7 @@ public:
- 
- Authority::Private::~Private()
- {
-+    delete m_systemBus;
-     g_object_unref(m_checkAuthorizationCancellable);
-     g_object_unref(m_enumerateActionsCancellable);
-     g_object_unref(m_registerAuthenticationAgentCancellable);
-@@ -170,6 +181,9 @@ void Authority::Private::init()
- 
-     g_type_init();
- 
-+    m_systemBus = new QDBusConnection(QDBusConnection::connectToBus(QDBusConnection::SystemBus,
-+                                                                    QString("polkit_qt_system_bus")));
-+
-     m_checkAuthorizationCancellable = g_cancellable_new();
-     m_enumerateActionsCancellable = g_cancellable_new();
-     m_registerAuthenticationAgentCancellable = g_cancellable_new();
-@@ -219,7 +233,7 @@ void Authority::Private::init()
- 
-     // then we need to extract all seats from ConsoleKit
-     QDBusMessage msg = QDBusMessage::createMethodCall(consoleKitService, consoleKitManagerPath, consoleKitManagerInterface, "GetSeats");
--    msg = QDBusConnection::systemBus().call(msg);
-+    msg = m_systemBus->call(msg);
-     if (!msg.arguments().isEmpty()) {
-         // this method returns a list with present seats
-         QList<QString> seats;
-@@ -256,8 +270,7 @@ void Authority::Private::seatSignalsConnect(const QString &seat)
- void Authority::Private::dbusSignalAdd(const QString &service, const QString &path, const QString &interface, const QString &name)
- {
-     // FIXME: This code seems to be nonfunctional - it needs to be fixed somewhere (is it Qt BUG?)
--    QDBusConnection::systemBus().connect(service, path, interface, name,
--                                         q, SLOT(dbusFilter(QDBusMessage)));
-+    m_systemBus->connect(service, path, interface, name, q, SLOT(dbusFilter(QDBusMessage)));
- }
- 
- void Authority::Private::dbusFilter(const QDBusMessage &message)