[arch-commits] Commit in trojita/trunk (PKGBUILD trojita-gpgme.patch)

Antonio Rojas arojas at archlinux.org
Wed Sep 6 21:37:27 UTC 2017


    Date: Wednesday, September 6, 2017 @ 21:37:26
  Author: arojas
Revision: 256087

Enable encryption support (FS#53937)

Added:
  trojita/trunk/trojita-gpgme.patch
Modified:
  trojita/trunk/PKGBUILD

---------------------+
 PKGBUILD            |   37 +++++++++++-------
 trojita-gpgme.patch |   99 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 122 insertions(+), 14 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-09-06 21:16:21 UTC (rev 256086)
+++ PKGBUILD	2017-09-06 21:37:26 UTC (rev 256087)
@@ -1,32 +1,41 @@
 # $Id$
-# Maintainer: Timothy Redaelli <timothy.redaelli at gmail.com>
+# Maintainer: Antonio Rojas <arojas at archlinux.org>
+# Contributor: Timothy Redaelli <timothy.redaelli at gmail.com>
 # Contributor: birdflesh <antkoul at gmail dot com>
 
 pkgname=trojita
 pkgver=0.7
-pkgrel=1
-pkgdesc="A QT IMAP email client"
-arch=('i686' 'x86_64')
+pkgrel=2
+pkgdesc="A Qt IMAP email client"
+arch=(i686 x86_64)
 url="http://trojita.flaska.net"
-license=('GPL')
-makedepends=('cmake' 'qt5-tools')
-depends=('desktop-file-utils' 'hicolor-icon-theme' 'qt5-webkit' 'qtkeychain' 'qt5-svg')
-source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.xz{,.asc})
-md5sums=('b2b5720be888ec6298a88798b113ad5f'
-         'SKIP')
+license=(GPL)
+makedepends=(cmake qt5-tools pinentry)
+depends=(hicolor-icon-theme qt5-webkit qtkeychain qt5-svg qgpgme mimetic)
+source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.xz{,.asc}
+        trojita-gpgme.patch)
+sha256sums=('e08da881721cafa00ecd772eaef6b99fd37d068cb703eeb532de0ed1ea0136d9'
+            'SKIP'
+            '9f99bd2d91cd3b345e2bf52c0d9929ea81147f6578b774c5d2b4f2e86aade2a8')
 validpgpkeys=('61AB87D6F66CE2FCD2D2E1F56A65DFA844722517')
 
+prepare() {
+  mkdir -p build
+
+  cd $pkgname-$pkgver
+  patch -p1 -i ../trojita-gpgme.patch # suport gmgpe's gpgme++
+}
+
 build() {
-  mkdir -p build
   cd build
   cmake ../$pkgname-$pkgver \
-    -DQT_QMAKE_EXECUTABLE=qmake-qt5 \
     -DCMAKE_BUILD_TYPE=Release \
-    -DCMAKE_INSTALL_PREFIX=/usr
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DWITH_TESTS=OFF
   make
 }
 
 package() {
-  cd "build"
+  cd build
   make DESTDIR="$pkgdir" install
 }

Added: trojita-gpgme.patch
===================================================================
--- trojita-gpgme.patch	                        (rev 0)
+++ trojita-gpgme.patch	2017-09-06 21:37:26 UTC (rev 256087)
@@ -0,0 +1,99 @@
+From e8393376969caf27b0c976d01645edd023c14df2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jan=20Kundr=C3=A1t?= <jkt at kde.org>
+Date: Sat, 17 Dec 2016 13:26:56 +0100
+Subject: Support both vanilla gpgme and KDE Frameworks gpgmepp
+
+KF5Gpgmepp has been merged into GPGME (since 1.7.0) and will not see
+any further releases with KDE Applications. We still care about older
+distros (and that means older gpgme, and therefore a need for extra
+bindings).
+
+Stuff is a bit more complicated because 1.7.x is not thread-safe by
+default. Given that gpgme upstream start making their releases pretty
+often this fall, it seems safe to go with 1.8.0.
+
+Change-Id: Ia2f05bd8ed2a894435ca328a886325366ba41622
+Inspired-By: Heiko Becker <heirecka at exherbo.org>
+Inspired-By: Andreas Sturmlechner <andreas.sturmlechner at gmail.com>
+Fixed-By: Caspar Schutijser <caspar at schutijser.com>
+---
+ CMakeLists.txt | 30 ++++++++++++++++++------------
+ 1 file changed, 18 insertions(+), 12 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3e129c1..3346142 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -51,7 +51,8 @@ trojita_option(WITH_ZLIB "Build with zlib library" AUTO)
+ trojita_option(WITH_SHARED_PLUGINS "Enable shared dynamic plugins" ON)
+ trojita_option(BUILD_TESTING "Build tests" ON)
+ trojita_option(WITH_MIMETIC "Build with client-side MIME parsing" AUTO)
+-trojita_option(WITH_GPGMEPP "Build with the GpgME++ library for cryptography" AUTO)
++trojita_option(WITH_GPGMEPP "Use GpgME's native C++ bindings" AUTO)
++trojita_option(WITH_KF5_GPGMEPP "Use legacy discontinued GpgME++ library from KDE frameworks" AUTO)
+ 
+ if(WIN32)
+     trojita_option(WITH_NSIS "Build Windows NSIS installer" AUTO "WITH_DESKTOP")
+@@ -84,8 +85,13 @@ trojita_plugin_option(WITH_QTKEYCHAIN_PLUGIN "Build Qtkeychain password plugin"
+ trojita_find_package(Git "" "" "" "")
+ 
+ trojita_find_package(Mimetic "" "http://www.codesink.org/mimetic_mime_library.html" "C++ MIME Library" "Required for client-side MIME parsing" WITH_MIMETIC)
+-trojita_find_package(KF5Gpgmepp "" "https://quickgit.kde.org/?p=gpgmepp.git" "C++ bindings for gpgme" "Needed for encrypted/signed e-mails" WITH_GPGMEPP)
+-trojita_option(WITH_CRYPTO_MESSAGES "Enable support for encrypted messages" AUTO "WITH_MIMETIC;WITH_GPGMEPP")
++trojita_find_package(Gpgmepp "1.8.0" "https://gnupg.org/related_software/gpgme/index.html" "C++/Qt bindings for gpgme" "Needed for encrypted/signed e-mails" WITH_GPGMEPP)
++if(NOT WITH_GPGMEPP)
++    trojita_find_package(KF5Gpgmepp "" "https://commits.kde.org/gpgmepp?path=/" "C++ bindings for gpgme" "Needed for encrypted/signed e-mails" WITH_KF5_GPGMEPP)
++    trojita_option(WITH_CRYPTO_MESSAGES "Enable support for encrypted messages" AUTO "WITH_MIMETIC;WITH_KF5_GPGMEPP")
++else()
++    trojita_option(WITH_CRYPTO_MESSAGES "Enable support for encrypted messages" AUTO "WITH_MIMETIC;WITH_GPGMEPP")
++endif()
+ 
+ if(WIN32)
+     trojita_find_package(MakeNSIS "" "http://nsis.sourceforge.net" "Nullsoft Scriptable Install System" "Needed for building Windows installer" WITH_NSIS)
+@@ -197,7 +203,7 @@ else()
+   set(TROJITA_HAVE_MIMETIC False)
+ endif()
+ 
+-if(WITH_GPGMEPP)
++if(WITH_GPGMEPP OR WITH_KF5_GPGMEPP)
+   set(TROJITA_HAVE_GPGMEPP True)
+ else()
+   set(TROJITA_HAVE_GPGMEPP False)
+@@ -315,12 +321,10 @@ if(WITH_MIMETIC)
+     )
+ endif()
+ if(WITH_CRYPTO_MESSAGES)
+-  if(WITH_GPGMEPP)
+     set(libCryptography_SOURCES
+         ${libCryptography_SOURCES}
+         ${path_Cryptography}/GpgMe++.cpp
+     )
+-  endif()
+ endif()
+ 
+ if(WITH_ZLIB)
+@@ -614,13 +618,15 @@ if(WITH_MIMETIC)
+     set_property(TARGET Cryptography APPEND PROPERTY INCLUDE_DIRECTORIES ${MIMETIC_INCLUDE_DIRS})
+ endif()
+ if(WITH_CRYPTO_MESSAGES)
+-  if(WITH_GPGMEPP)
+-    if (WIN32)
+-      target_link_libraries(Cryptography KF5::Gpgmepp KF5::QGpgme)
+-    else()
+-      target_link_libraries(Cryptography KF5::Gpgmepp-pthread KF5::QGpgme)
++    if(WITH_GPGMEPP)
++        target_link_libraries(Cryptography Gpgmepp QGpgme)
++    elseif(WITH_KF5_GPGMEPP)
++        if(WIN32)
++            target_link_libraries(Cryptography KF5::Gpgmepp KF5::QGpgme)
++        else()
++            target_link_libraries(Cryptography KF5::Gpgmepp-pthread KF5::QGpgme)
++        endif()
+     endif()
+-  endif()
+ endif()
+ 
+ ## ClearText password plugin
+-- 
+cgit v0.11.2
+



More information about the arch-commits mailing list