On Sun Feb 25, 2018 at 05:56:50PM +0100, Rafael Sadowski wrote: > > > > Please find below a new diff which includes a (q)gpgme as FLAVOR. All > > consumers build and package fine on amd64. > > > > I got positive feedback from Caspar Schutijser (trojita mainatiner). > > > > Ok? > > > Updated diff against current tree. > > +DISTNAME = gpgme-${VERSION} > +PKGNAME-main = qgpgme-${VERSION} > +PKGNAME-qt = gpgme-qt-${VERSION} ^^^^^ There was one small mistake in the latest diff. (s/qgpgme/gpgme/) New diff below, apply, build, update fine on fresh -current.
Ok? Index: mail/trojita/Makefile =================================================================== RCS file: /cvs/ports/mail/trojita/Makefile,v retrieving revision 1.25 diff -u -p -u -p -r1.25 Makefile --- mail/trojita/Makefile 2 Dec 2017 12:44:33 -0000 1.25 +++ mail/trojita/Makefile 25 Feb 2018 16:03:20 -0000 @@ -3,7 +3,7 @@ COMMENT = fast Qt IMAP e-mail client DISTNAME = trojita-0.7 -REVISION = 4 +REVISION = 5 SHARED_LIBS = trojita_plugins 2.0 # 2.0 @@ -17,11 +17,9 @@ EXTRACT_SUFX = .tar.xz # GPLv2+ PERMIT_PACKAGE_CDROM = Yes -WANTLIB += c m pthread z KF5Gpgmepp-pthread KF5QGpgme -WANTLIB += Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Sql Qt5WebKit -WANTLIB += Qt5WebKitWidgets Qt5Widgets qt5keychain gpg-error -WANTLIB += gpgme mimetic assuan -WANTLIB += ${COMPILER_LIBCXX} +WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5DBus Qt5Gui Qt5Network +WANTLIB += Qt5Sql Qt5WebKit Qt5WebKitWidgets Qt5Widgets c gpgmepp +WANTLIB += m mimetic qt5keychain z MODULES = devel/cmake x11/qt5 @@ -33,14 +31,25 @@ RUN_DEPENDS = devel/desktop-file-utils LIB_DEPENDS = mail/mimetic \ security/qtkeychain,qt5 \ - x11/kde-applications/gpgmepp \ + security/gpgme,,-qt \ x11/qt5/qtwebkit CONFIGURE_ENV += QTDIR="${MODQT_LIBDIR}" -CONFIGURE_ARGS += -DWITH_RAGEL=OFF \ - -DGIT_EXECUTABLE="" +CONFIGURE_ARGS += -DGIT_EXECUTABLE="" \ + -DWITH_CLEARTEXT_PLUGIN:Bool=ON \ + -DWITH_DBUS:Bool=ON \ + -DWITH_DESKTOP:Bool=ON \ + -DWITH_QTKEYCHAIN_PLUGIN:Bool=ON \ + -DWITH_RAGEL:Bool=OFF \ + -DWITH_SHARED_PLUGINS:Bool=ON \ + -DWITH_TESTS:Bool=ON \ + -DWITH_ZLIB:Bool=ON \ + -DWITH_QT5:Bool=ON TEST_IS_INTERACTIVE = X11 + +pre-configure: + ${SUBST_CMD} ${WRKDIST}/CMakeLists.txt post-configure: ln -sf ${MODQT_LIBDIR}/bin/lconvert ${WRKDIR}/bin Index: mail/trojita/patches/patch-CMakeLists_txt =================================================================== RCS file: /cvs/ports/mail/trojita/patches/patch-CMakeLists_txt,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-CMakeLists_txt --- mail/trojita/patches/patch-CMakeLists_txt 4 Sep 2016 14:03:00 -0000 1.2 +++ mail/trojita/patches/patch-CMakeLists_txt 25 Feb 2018 16:03:20 -0000 @@ -1,7 +1,35 @@ $OpenBSD: patch-CMakeLists_txt,v 1.2 2016/09/04 14:03:00 landry Exp $ ---- CMakeLists.txt.orig Wed Jun 15 09:17:23 2016 -+++ CMakeLists.txt Sat Aug 20 13:36:13 2016 -@@ -154,14 +154,6 @@ else() +Index: CMakeLists.txt +--- CMakeLists.txt.orig ++++ CMakeLists.txt +@@ -61,7 +61,9 @@ trojita_option(WITH_ZLIB "Build with zlib library" AUT + trojita_option(WITH_SHARED_PLUGINS "Enable shared dynamic plugins" ON) + trojita_option(WITH_TESTS "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" ON) ++trojita_option(WITH_KF5_GPGMEPP "Use legacy discontinued GpgME++ library from KDE frameworks" OFF) ++ + + if(WIN32) + trojita_option(WITH_NSIS "Build Windows NSIS installer" AUTO "WITH_DESKTOP") +@@ -94,8 +96,13 @@ trojita_plugin_option(WITH_QTKEYCHAIN_PLUGIN "Build Qt + 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) +@@ -154,14 +161,6 @@ else() set(CMAKE_CXX_FLAGS_DEBUG "-Werror ${CMAKE_CXX_FLAGS_DEBUG}") # Also see CMP0043... @@ -16,7 +44,57 @@ $OpenBSD: patch-CMakeLists_txt,v 1.2 201 # Build warnings are useful tools (and Trojita should be warning-free anyway), enable them on all # configurations. They are warnings, not errors. set(CMAKE_CXX_FLAGS "-Wall -Wsign-compare ${CMAKE_CXX_FLAGS}") -@@ -786,32 +778,6 @@ if(WITH_TESTS) +@@ -207,7 +206,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) +@@ -321,12 +320,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) +@@ -622,16 +619,20 @@ set_property(TARGET Cryptography APPEND PROPERTY COMPI + target_link_libraries(Cryptography Common Imap) + if(WITH_MIMETIC) + target_link_libraries(Cryptography ${MIMETIC_LIBRARIES}) +- set_property(TARGET Cryptography APPEND PROPERTY INCLUDE_DIRECTORIES ${MIMETIC_INCLUDE_DIRS}) ++ set_property(TARGET Cryptography APPEND PROPERTY INCLUDE_DIRECTORIES /usr/local/include) + 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 gpgme) ++ set_property(TARGET Cryptography APPEND PROPERTY INCLUDE_DIRECTORIES /usr/local/include/gpgme++) ++ set_property(TARGET Cryptography APPEND PROPERTY INCLUDE_DIRECTORIES /usr/local/include/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 +@@ -786,32 +787,6 @@ if(WITH_TESTS) trojita_test(Imap Imap_Offline) trojita_test(Imap Imap_CopyAndFlagOperations) trojita_test(Cryptography Cryptography_MessageModel) Index: mail/trojita/pkg/PLIST =================================================================== RCS file: /cvs/ports/mail/trojita/pkg/PLIST,v retrieving revision 1.7 diff -u -p -u -p -r1.7 PLIST --- mail/trojita/pkg/PLIST 4 Sep 2016 14:03:00 -0000 1.7 +++ mail/trojita/pkg/PLIST 25 Feb 2018 16:03:20 -0000 @@ -3,6 +3,7 @@ @bin bin/trojita @lib lib/libtrojita_plugins.so.${LIBtrojita_plugins_VERSION} lib/trojita/ +lib/trojita/trojita_plugin_ClearTextPasswordPlugin.so lib/trojita/trojita_plugin_QtKeychainPasswordPlugin.so share/appdata/ share/appdata/trojita.appdata.xml Index: security/gpgme/Makefile =================================================================== RCS file: /cvs/ports/security/gpgme/Makefile,v retrieving revision 1.40 diff -u -p -u -p -r1.40 Makefile --- security/gpgme/Makefile 30 Jan 2018 15:06:37 -0000 1.40 +++ security/gpgme/Makefile 25 Feb 2018 16:03:24 -0000 @@ -1,35 +1,69 @@ # $OpenBSD: Makefile,v 1.40 2018/01/30 15:06:37 jca Exp $ -COMMENT= GnuPG Made Easy +COMMENT-main = GnuPG Made Easy +COMMENT-qt = Qt bindings for GPGme -DISTNAME= gpgme-1.9.0 -REVISION= 0 -CATEGORIES= security devel +VERSION = 1.10.0 +DISTNAME = gpgme-${VERSION} +PKGNAME-main = gpgme-${VERSION} +PKGNAME-qt = gpgme-qt-${VERSION} -SHARED_LIBS += gpgme 21.0 # 29.0 +CATEGORIES = security devel -HOMEPAGE= https://www.gnupg.org/software/gpgme/index.html +SHARED_LIBS += gpgme 21.0# 29.0 +SHARED_LIBS += gpgmepp 0.0 # 11.0 +SHARED_LIBS += qgpgme 0.0 # 10.0 + +HOMEPAGE = https://www.gnupg.org/software/gpgme/index.html + +MASTER_SITES = ${MASTER_SITE_GNUPG:=gpgme/} +EXTRACT_SUFX = .tar.bz2 # GPLv2 - LGPLv2.1 PERMIT_PACKAGE_CDROM= Yes -WANTLIB += assuan c gpg-error iconv intl - -MASTER_SITES= ${MASTER_SITE_GNUPG:=gpgme/} -EXTRACT_SUFX= .tar.bz2 +WANTLIB = assuan gpg-error iconv intl +WANTLIB-main = ${WANTLIB} c +WANTLIB-qt = ${COMPILER_LIBCXX} ${WANTLIB} Qt5Core execinfo glib-2.0 +WANTLIB-qt += gthread-2.0 icudata icui18n icuuc m pcre pcre2-16 z gpgme + +COMPILER = base-clang ports-clang ports-gcc + +MULTI_PACKAGES = -main -qt +PSEUDO_FLAVORS = no_qt +FLAVOR ?= -CONFIGURE_STYLE= gnu -CONFIGURE_ARGS += --enable-languages='' +CONFIGURE_STYLE = gnu # Requires gpgsm (gnupg 2.x) during build, but can run with any gnupg. -BUILD_DEPENDS= gnupg->=2:security/gnupg2 +BUILD_DEPENDS = gnupg->=2:security/gnupg2 + # gnupg-* is normally the default anyway, but gnupg1 overrides PKGSPEC # so we must be explicit here. -RUN_DEPENDS= gnupg-*:security/gnupg -LIB_DEPENDS= devel/gettext \ +RUN_DEPENDS = gnupg-*:security/gnupg +LIB_DEPENDS += devel/gettext \ security/libgpg-error>=1.4 \ security/libassuan +CONFIGURE_ENV += CPPFLAGS="-I${LOCALBASE}/include" \ + LDFLAGS="-L${LOCALBASE}/lib" + +.include <bsd.port.arch.mk> + +.if ${BUILD_PACKAGES:M-qt} +MODULES += x11/qt5 +CONFIGURE_ARGS += --enable-languages='cpp qt' +CXXFLAGS += "-std=c++11" +LIB_DEPENDS-qt += ${LIB_DEPENDS} \ + ${BUILD_PKGPATH},-main +.else +COMPILER_LANGS = c +CONFIGURE_ARGS += --enable-languages='' +.endif + +# needed for the regression tests +USE_GMAKE = Yes + # The tests target gpg2. Running with gpg version 1 will give: # `./t-support.h:160: GPGME: Invalid crypto engine' # https://dev.gnupg.org/T3512 @@ -37,7 +71,5 @@ TEST_DEPENDS += security/gnupg2 pre-test: ln -sf ${LOCALBASE}/bin/gpg2 ${WRKDIR}/bin/gpg -# needed for the regression tests -USE_GMAKE= Yes .include <bsd.port.mk> Index: security/gpgme/distinfo =================================================================== RCS file: /cvs/ports/security/gpgme/distinfo,v retrieving revision 1.13 diff -u -p -u -p -r1.13 distinfo --- security/gpgme/distinfo 2 Dec 2017 12:44:33 -0000 1.13 +++ security/gpgme/distinfo 25 Feb 2018 16:03:24 -0000 @@ -1,2 +1,2 @@ -SHA256 (gpgme-1.9.0.tar.bz2) = Gyn+24v613XnDq+sWwWQYhaDstmGnbmUVo5kAfQDTOs= -SIZE (gpgme-1.9.0.tar.bz2) = 1344222 +SHA256 (gpgme-1.10.0.tar.bz2) = Go/tEZfDuZw19AMGa7NEomIk0pKvwEjP38TM1WkKBpM= +SIZE (gpgme-1.10.0.tar.bz2) = 1370162 Index: security/gpgme/pkg/DESCR =================================================================== RCS file: security/gpgme/pkg/DESCR diff -N security/gpgme/pkg/DESCR --- security/gpgme/pkg/DESCR 15 Dec 2003 21:55:21 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,7 +0,0 @@ -GnuPG Made Easy (GPGME) is a library designed to make access to -GnuPG easier for applications. - -It provides a High-Level Crypto API for encryption, decryption, -signing, signature verification and key management. Currently it -uses GnuPG as it's backend but the API isn't restricted to this -engine; in fact it is planned to add other backends to it. Index: security/gpgme/pkg/DESCR-main =================================================================== RCS file: security/gpgme/pkg/DESCR-main diff -N security/gpgme/pkg/DESCR-main --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ security/gpgme/pkg/DESCR-main 25 Feb 2018 16:03:24 -0000 @@ -0,0 +1,7 @@ +GnuPG Made Easy (GPGME) is a library designed to make access to +GnuPG easier for applications. + +It provides a High-Level Crypto API for encryption, decryption, +signing, signature verification and key management. Currently it +uses GnuPG as it's backend but the API isn't restricted to this +engine; in fact it is planned to add other backends to it. Index: security/gpgme/pkg/DESCR-qt =================================================================== RCS file: security/gpgme/pkg/DESCR-qt diff -N security/gpgme/pkg/DESCR-qt --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ security/gpgme/pkg/DESCR-qt 25 Feb 2018 16:03:24 -0000 @@ -0,0 +1 @@ +Qt and C++ bindings for GnuPG Made Easy (GPGME). Index: security/gpgme/pkg/PLIST =================================================================== RCS file: security/gpgme/pkg/PLIST diff -N security/gpgme/pkg/PLIST --- security/gpgme/pkg/PLIST 2 Dec 2017 12:44:33 -0000 1.9 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,9 +0,0 @@ -@comment $OpenBSD: PLIST,v 1.9 2017/12/02 12:44:33 edd Exp $ -bin/gpgme-config -@bin bin/gpgme-tool -include/gpgme.h -@info info/gpgme.info -lib/libgpgme.a -lib/libgpgme.la -@lib lib/libgpgme.so.${LIBgpgme_VERSION} -share/aclocal/gpgme.m4 Index: security/gpgme/pkg/PLIST-main =================================================================== RCS file: security/gpgme/pkg/PLIST-main diff -N security/gpgme/pkg/PLIST-main --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ security/gpgme/pkg/PLIST-main 25 Feb 2018 16:03:24 -0000 @@ -0,0 +1,9 @@ +@comment $OpenBSD$ +bin/gpgme-config +@bin bin/gpgme-tool +include/gpgme.h +@info info/gpgme.info +lib/libgpgme.a +lib/libgpgme.la +@lib lib/libgpgme.so.${LIBgpgme_VERSION} +share/aclocal/gpgme.m4 Index: security/gpgme/pkg/PLIST-qt =================================================================== RCS file: security/gpgme/pkg/PLIST-qt diff -N security/gpgme/pkg/PLIST-qt --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ security/gpgme/pkg/PLIST-qt 25 Feb 2018 16:03:24 -0000 @@ -0,0 +1,129 @@ +@comment $OpenBSD$ +include/QGpgME/ +include/QGpgME/AbstractImportJob +include/QGpgME/AddUserIDJob +include/QGpgME/ChangeExpiryJob +include/QGpgME/ChangeOwnerTrustJob +include/QGpgME/ChangePasswdJob +include/QGpgME/CryptoConfig +include/QGpgME/DN +include/QGpgME/DataProvider +include/QGpgME/DecryptJob +include/QGpgME/DecryptVerifyJob +include/QGpgME/DefaultKeyGenerationJob +include/QGpgME/DeleteJob +include/QGpgME/DownloadJob +include/QGpgME/EncryptJob +include/QGpgME/ExportJob +include/QGpgME/HierarchicalKeyKistJob +include/QGpgME/ImportFromKeyserverJob +include/QGpgME/ImportJob +include/QGpgME/Job +include/QGpgME/KeyForMailboxJob +include/QGpgME/KeyGenerationJob +include/QGpgME/KeyListJob +include/QGpgME/ListAllKeysJob +include/QGpgME/MultiDeleteJob +include/QGpgME/Protocol +include/QGpgME/QGpgMENewCryptoConfig +include/QGpgME/QuickJob +include/QGpgME/RefreshKeysJob +include/QGpgME/SignEncryptJob +include/QGpgME/SignJob +include/QGpgME/SignKeyJob +include/QGpgME/SpecialJob +include/QGpgME/TofuPolicyJob +include/QGpgME/VerifyDetachedJob +include/QGpgME/VerifyOpaqueJob +include/QGpgME/WKSPublishJob +include/gpgme++/ +include/gpgme++/configuration.h +include/gpgme++/context.h +include/gpgme++/data.h +include/gpgme++/decryptionresult.h +include/gpgme++/defaultassuantransaction.h +include/gpgme++/editinteractor.h +include/gpgme++/encryptionresult.h +include/gpgme++/engineinfo.h +include/gpgme++/error.h +include/gpgme++/eventloopinteractor.h +include/gpgme++/exception.h +include/gpgme++/global.h +include/gpgme++/gpgadduserideditinteractor.h +include/gpgme++/gpgagentgetinfoassuantransaction.h +include/gpgme++/gpggencardkeyinteractor.h +include/gpgme++/gpgmefw.h +include/gpgme++/gpgmepp_export.h +include/gpgme++/gpgmepp_version.h +include/gpgme++/gpgsetexpirytimeeditinteractor.h +include/gpgme++/gpgsetownertrusteditinteractor.h +include/gpgme++/gpgsignkeyeditinteractor.h +include/gpgme++/importresult.h +include/gpgme++/interfaces/ +include/gpgme++/interfaces/assuantransaction.h +include/gpgme++/interfaces/dataprovider.h +include/gpgme++/interfaces/passphraseprovider.h +include/gpgme++/interfaces/progressprovider.h +include/gpgme++/key.h +include/gpgme++/keygenerationresult.h +include/gpgme++/keylistresult.h +include/gpgme++/notation.h +include/gpgme++/result.h +include/gpgme++/scdgetinfoassuantransaction.h +include/gpgme++/signingresult.h +include/gpgme++/swdbresult.h +include/gpgme++/tofuinfo.h +include/gpgme++/trustitem.h +include/gpgme++/verificationresult.h +include/gpgme++/vfsmountresult.h +include/qgpgme/ +include/qgpgme/abstractimportjob.h +include/qgpgme/adduseridjob.h +include/qgpgme/changeexpiryjob.h +include/qgpgme/changeownertrustjob.h +include/qgpgme/changepasswdjob.h +include/qgpgme/cryptoconfig.h +include/qgpgme/dataprovider.h +include/qgpgme/decryptjob.h +include/qgpgme/decryptverifyjob.h +include/qgpgme/defaultkeygenerationjob.h +include/qgpgme/deletejob.h +include/qgpgme/dn.h +include/qgpgme/downloadjob.h +include/qgpgme/encryptjob.h +include/qgpgme/exportjob.h +include/qgpgme/hierarchicalkeylistjob.h +include/qgpgme/importfromkeyserverjob.h +include/qgpgme/importjob.h +include/qgpgme/job.h +include/qgpgme/keyformailboxjob.h +include/qgpgme/keygenerationjob.h +include/qgpgme/keylistjob.h +include/qgpgme/listallkeysjob.h +include/qgpgme/multideletejob.h +include/qgpgme/protocol.h +include/qgpgme/qgpgme_export.h +include/qgpgme/qgpgme_version.h +include/qgpgme/qgpgmenewcryptoconfig.h +include/qgpgme/quickjob.h +include/qgpgme/refreshkeysjob.h +include/qgpgme/signencryptjob.h +include/qgpgme/signjob.h +include/qgpgme/signkeyjob.h +include/qgpgme/specialjob.h +include/qgpgme/tofupolicyjob.h +include/qgpgme/verifydetachedjob.h +include/qgpgme/verifyopaquejob.h +include/qgpgme/wkspublishjob.h +lib/cmake/Gpgmepp/ +lib/cmake/Gpgmepp/GpgmeppConfig.cmake +lib/cmake/Gpgmepp/GpgmeppConfigVersion.cmake +lib/cmake/QGpgme/ +lib/cmake/QGpgme/QGpgmeConfig.cmake +lib/cmake/QGpgme/QGpgmeConfigVersion.cmake +lib/libgpgmepp.a +lib/libgpgmepp.la +@lib lib/libgpgmepp.so.${LIBgpgmepp_VERSION} +lib/libqgpgme.a +lib/libqgpgme.la +@lib lib/libqgpgme.so.${LIBqgpgme_VERSION}