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