On Thursday 02 July 2009 09:59:33 Max Brazhnikov wrote:
> On Thu, 2 Jul 2009 06:57:15 -0400, Jason E. Hale wrote:
> > After seeing the problem with KDE, I went through the source code of the
> > rest of the ports that use gpgme. The problem is that the new version of
> > gpgme requires that gpgme_check_version() is called before gpgme_new().
> > I have identified several other ports that do not do this and I have
> > developed patches for them. They are as follows:
> >
> > deskutils/kdepim3 (based on official patch)
> > deskutils/kdepim4 (based on official patch)
> > deskutils/kdepimlibs4 (based on official patch)
> > devel/bazaar
> > finance/qhacc
> > mail/mutt-devel
> > net-im/ayttm
> > net-im/centericq
> > net-im/centerim
> > net-im/centerim-devel
> > security/openvas-libnasl
> >
> > I run tested deskutils/kdepim4 with deskutils/kdepimlibs4, finance/qhacc,
> > net- im/ayttm, and net-im/centerim. The others are a little impractical
> > for me to test right now; perhaps their maintainers can test them
> > (maintainers CC'd).
> >
> > - Jason
>
> Thanks for taking that, Jason.
>
> Just for the note, the patches for KDE3/4 touch library version, thus pkg-
> plist should be updated also.
>
> Max
Thanks for pointing that out. I fixed the pkg-plist for kdepimlibs4 and
kdepim3 and attached the new patches for those. I will post all of the
patches as a followup to PR: ports/135911 so that they are in a central
location.
- Jason
diff -ruN kdepim3.orig/files/patch-certmanager-lib-backends-qgpgme-qgpgmebackend.cpp kdepim3/files/patch-certmanager-lib-backends-qgpgme-qgpgmebackend.cpp
--- kdepim3.orig/files/patch-certmanager-lib-backends-qgpgme-qgpgmebackend.cpp 1969-12-31 19:00:00.000000000 -0500
+++ kdepim3/files/patch-certmanager-lib-backends-qgpgme-qgpgmebackend.cpp 2009-07-01 19:51:10.000000000 -0400
@@ -0,0 +1,11 @@
+--- certmanager/lib/backends/qgpgme/qgpgmebackend.cpp.orig 2009-07-01 19:41:54.000000000 -0400
++++ certmanager/lib/backends/qgpgme/qgpgmebackend.cpp 2009-07-01 19:42:25.000000000 -0400
+@@ -54,7 +54,7 @@
+ mOpenPGPProtocol( 0 ),
+ mSMIMEProtocol( 0 )
+ {
+-
++ GpgME::initializeLibrary();
+ }
+
+ Kleo::QGpgMEBackend::~QGpgMEBackend() {
diff -ruN kdepim3.orig/files/patch-libkdenetwork-gpgmepp-Makefile.in kdepim3/files/patch-libkdenetwork-gpgmepp-Makefile.in
--- kdepim3.orig/files/patch-libkdenetwork-gpgmepp-Makefile.in 1969-12-31 19:00:00.000000000 -0500
+++ kdepim3/files/patch-libkdenetwork-gpgmepp-Makefile.in 2009-07-01 19:52:28.000000000 -0400
@@ -0,0 +1,11 @@
+--- libkdenetwork/gpgmepp/Makefile.in.orig 2009-07-01 19:33:31.000000000 -0400
++++ libkdenetwork/gpgmepp/Makefile.in 2009-07-01 19:39:35.000000000 -0400
+@@ -434,7 +434,7 @@
+ # (Interfaces added/removed/changed: CURRENT++, REVISION=0)
+ # (Interfaces added: AGE++)
+ # (Interfaces removed/changed: AGE=0)
+-libgpgme___la_LDFLAGS = -no-undefined -version-info 3:0:3
++libgpgme___la_LDFLAGS = -no-undefined -version-info 4:0:4
+ libgpgme___la_LIBADD = $(GPGME_LIBS)
+ libgpgme___la_DEPENDENCIES = $(GPGME_LIBS_DEP)
+ all: all-recursive
diff -ruN kdepim3.orig/files/patch-libkdenetwork-gpgmepp-context.cpp kdepim3/files/patch-libkdenetwork-gpgmepp-context.cpp
--- kdepim3.orig/files/patch-libkdenetwork-gpgmepp-context.cpp 1969-12-31 19:00:00.000000000 -0500
+++ kdepim3/files/patch-libkdenetwork-gpgmepp-context.cpp 2009-07-01 19:52:05.000000000 -0400
@@ -0,0 +1,13 @@
+--- libkdenetwork/gpgmepp/context.cpp.orig 2009-07-01 19:33:09.000000000 -0400
++++ libkdenetwork/gpgmepp/context.cpp 2009-07-01 19:35:46.000000000 -0400
+@@ -53,6 +53,10 @@
+
+ namespace GpgME {
+
++ void initializeLibrary() {
++ gpgme_check_version( 0 );
++ }
++
+ const char * Error::source() const {
+ return gpgme_strsource( (gpgme_error_t)mErr );
+ }
diff -ruN kdepim3.orig/files/patch-libkdenetwork-gpgmepp-context.h kdepim3/files/patch-libkdenetwork-gpgmepp-context.h
--- kdepim3.orig/files/patch-libkdenetwork-gpgmepp-context.h 1969-12-31 19:00:00.000000000 -0500
+++ kdepim3/files/patch-libkdenetwork-gpgmepp-context.h 2009-07-01 19:52:16.000000000 -0400
@@ -0,0 +1,11 @@
+--- libkdenetwork/gpgmepp/context.h.orig 2009-07-01 19:33:50.000000000 -0400
++++ libkdenetwork/gpgmepp/context.h 2009-07-01 19:36:53.000000000 -0400
+@@ -287,6 +287,8 @@
+ //
+ //
+
++ KDE_EXPORT void initializeLibrary();
++
+ KDE_EXPORT GpgME::Error setDefaultLocale( int category, const char * value );
+
+ KDE_EXPORT Context * wait( GpgME::Error & e, bool hang=true );
diff -ruN kdepim3.orig/pkg-plist kdepim3/pkg-plist
--- kdepim3.orig/pkg-plist 2009-07-01 19:21:06.000000000 -0400
+++ kdepim3/pkg-plist 2009-07-02 15:24:09.000000000 -0400
@@ -594,7 +594,7 @@
lib/libgpgme++.a
lib/libgpgme++.la
lib/libgpgme++.so
-lib/libgpgme++.so.3
+lib/libgpgme++.so.4
lib/libgwsoap.a
lib/libgwsoap.la
lib/libgwsoap.so
diff -ruN kdepimlibs4.orig/files/patch-gpgme++-CMakeLists.txt kdepimlibs4/files/patch-gpgme++-CMakeLists.txt
--- kdepimlibs4.orig/files/patch-gpgme++-CMakeLists.txt 1969-12-31 19:00:00.000000000 -0500
+++ kdepimlibs4/files/patch-gpgme++-CMakeLists.txt 2009-07-01 18:36:37.000000000 -0400
@@ -0,0 +1,11 @@
+--- ../gpgme++/CMakeLists.txt.orig 2009-07-01 18:28:08.000000000 -0400
++++ ../gpgme++/CMakeLists.txt 2009-07-01 18:28:36.000000000 -0400
+@@ -32,7 +32,7 @@
+ gpgadduserideditinteractor.cpp
+ )
+
+-set( _gpgmepp_version 2.0.2 )
++set( _gpgmepp_version 2.0.3 )
+ set( _gpgmepp_soversion 2 )
+
+ set( GPGMEPP_INCLUDE ${INCLUDE_INSTALL_DIR} ${GPGME_INCLUDES} ${Boost_INCLUDE_DIR} )
diff -ruN kdepimlibs4.orig/files/patch-gpgme++-context.cpp kdepimlibs4/files/patch-gpgme++-context.cpp
--- kdepimlibs4.orig/files/patch-gpgme++-context.cpp 1969-12-31 19:00:00.000000000 -0500
+++ kdepimlibs4/files/patch-gpgme++-context.cpp 2009-07-01 18:37:44.000000000 -0400
@@ -0,0 +1,13 @@
+--- ../gpgme++/context.cpp.orig 2009-07-01 18:28:59.000000000 -0400
++++ ../gpgme++/context.cpp 2009-07-01 18:30:51.000000000 -0400
+@@ -51,6 +51,10 @@
+ #include <cassert>
+
+ namespace GpgME {
++ void initializeLibrary() {
++ gpgme_check_version( 0 );
++ }
++
+ static inline gpgme_error_t makeError( gpg_err_code_t code ) {
+ return gpg_err_make( (gpg_err_source_t)22, code );
+ }
diff -ruN kdepimlibs4.orig/files/patch-gpgme++-global.h kdepimlibs4/files/patch-gpgme++-global.h
--- kdepimlibs4.orig/files/patch-gpgme++-global.h 1969-12-31 19:00:00.000000000 -0500
+++ kdepimlibs4/files/patch-gpgme++-global.h 2009-07-01 18:38:05.000000000 -0400
@@ -0,0 +1,11 @@
+--- ../gpgme++/global.h.orig 2009-07-01 18:26:50.000000000 -0400
++++ ../gpgme++/global.h 2009-07-01 18:27:58.000000000 -0400
+@@ -39,6 +39,8 @@
+
+ namespace GpgME {
+
++ GPGMEPP_EXPORT void initializeLibrary();
++
+ enum Protocol { OpenPGP, CMS, UnknownProtocol };
+
+ enum Engine { GpgEngine, GpgSMEngine, GpgConfEngine, UnknownEngine };
diff -ruN kdepimlibs4.orig/pkg-plist kdepimlibs4/pkg-plist
--- kdepimlibs4.orig/pkg-plist 2009-07-01 18:24:24.000000000 -0400
+++ kdepimlibs4/pkg-plist 2009-07-02 14:13:38.000000000 -0400
@@ -366,13 +366,13 @@
lib/libakonadi-kmime.so.5.0.1
%%WITH_PTH%%lib/libgpgme++-pth.so
%%WITH_PTH%%lib/libgpgme++-pth.so.2
-%%WITH_PTH%%lib/libgpgme++-pth.so.2.0.2
+%%WITH_PTH%%lib/libgpgme++-pth.so.2.0.3
lib/libgpgme++-pthread.so
lib/libgpgme++-pthread.so.2
-lib/libgpgme++-pthread.so.2.0.2
+lib/libgpgme++-pthread.so.2.0.3
lib/libgpgme++.so
lib/libgpgme++.so.2
-lib/libgpgme++.so.2.0.2
+lib/libgpgme++.so.2.0.3
lib/libkabc.so
lib/libkabc.so.5
lib/libkabc.so.5.0.1
_______________________________________________
kde-freebsd mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kde-freebsd
See also http://freebsd.kde.org/ for latest information