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
kde-freebsd@kde.org
https://mail.kde.org/mailman/listinfo/kde-freebsd
See also http://freebsd.kde.org/ for latest information

Reply via email to