Drop again introduced huge patch.
authorTomas Chvatal <scarabeus@gentoo.org>
Sun, 4 Jul 2010 14:26:34 +0000 (14:26 +0000)
committerTomas Chvatal <scarabeus@gentoo.org>
Sun, 4 Jul 2010 14:26:34 +0000 (14:26 +0000)
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64

kde-base/kleopatra/ChangeLog
kde-base/kleopatra/Manifest
kde-base/kleopatra/files/kleopatra-4.4.3-assuan2.patch [deleted file]
kde-base/kleopatra/kleopatra-4.4.5.ebuild

index 27f14fa41e427a804a1ae88cb280d5fb5b96d9a2..c815835f09a7dbd353485b3670a70b312e6f0548 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for kde-base/kleopatra
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kleopatra/ChangeLog,v 1.54 2010/06/30 15:37:02 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kleopatra/ChangeLog,v 1.55 2010/07/04 14:26:33 scarabeus Exp $
+
+  04 Jul 2010; Tomáš Chvátal <scarabeus@gentoo.org>
+  -files/kleopatra-4.4.3-assuan2.patch, kleopatra-4.4.5.ebuild:
+  Drop again introduced huge patch.
 
 *kleopatra-4.4.5 (30 Jun 2010)
 
index f5e5b7476679a635b0f6532b5b4109ff69b8d40c..dd20b06e4372b570fff441de8b9cf20774ecd2a3 100644 (file)
@@ -1,20 +1,19 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-AUX kleopatra-4.4.3-assuan2.patch 43596 RMD160 42d7505984a578d00fc8205289d9c421b7ba35bb SHA1 b8e91011c6532562a9165d25021e1608a09b3eed SHA256 1ee8e3f919d9f31671933fc8c1936101e4f928cc5a3e63c50218a01d7e6d1cd2
 DIST kdepim-4.3.5.tar.bz2 11254015 RMD160 4a35783ff949dda1e68af92a83482b92bd831110 SHA1 0c319929af1828f0ee15c47a957f0a3c95556742 SHA256 76f8efcdfde2b00c8c8a82dcd1363b50cf9c1a7217419dd495126f05a6528fd1
 DIST kdepim-4.4.4.tar.bz2 9354818 RMD160 49a1d471149322f4156634e7e79ed53a5c42bbe9 SHA1 8edd0abf479d29b55463d8f8c698477f66120ed6 SHA256 5bee3471a5b467775ec8b6201bd91a14a38de651e83c30e957720292d1596218
 DIST kdepim-4.4.5.tar.bz2 9346777 RMD160 e033c32fa16d46bfcaea94f64a3a862629965b7e SHA1 84f6367e38948d3595a9f87ae384b41f9f295add SHA256 778dd9afca20775be3d33bcb33e3e627039661520995cd9375ff781aa6e42559
 DIST kleopatra-4.4.3-assuan2.patch.bz2 9304 RMD160 fd00c6e28d05b19e89f029338e2e59b81866f415 SHA1 d69d28734c1db16f1af9018ca16de58bf277fa55 SHA256 eee3fb370a0f93bfbfc4c4386e74c026ab8fceba004eac3a1467721e31856c96
 EBUILD kleopatra-4.3.5.ebuild 800 RMD160 6184251c40c29ca623044353f419eade3e827c54 SHA1 f84b4642da989c414aa18c9a1ed3800fd357f3c3 SHA256 d97634f0c024831e353725a07aa3f91c82df6033938782eb5d13f4f10f43daa4
 EBUILD kleopatra-4.4.4.ebuild 1053 RMD160 439da126544dd55c9083b5e3c14426d3804277cc SHA1 1d2720075342e8a2c09cdd4fa8cdeb5b043a84e6 SHA256 94ec4b9e22f844c368a8ee85dbd6233e29f346716b3ca42b104c63a0a16ea750
-EBUILD kleopatra-4.4.5.ebuild 916 RMD160 ac286c0f31db49299e39227a6bd8d4db2c549f2b SHA1 ab71adda6995d5156a5f6f05a3ffe7d6d9ca2eea SHA256 8a2dc1d19e560c8236ec697acf8db4caa1e9bf6b9d028c24d80f26bc71e8b7d3
-MISC ChangeLog 6735 RMD160 b60b2055cbb60377975d45ee920e3f371ce9c203 SHA1 eefe83a55115665c0b02dee22d5c88a2d7268fb3 SHA256 f57eba7496e907f531ea1ab4664ab932649a5f4e73215ab53de6803e5c0310d3
+EBUILD kleopatra-4.4.5.ebuild 1059 RMD160 08c2897ba96f0320d83094129f54c7680fbe7b0c SHA1 2b71331f2c1c42ff239a459bb39b613f262914ac SHA256 7045b15d8ec813a52b6d37d9b582c923e7f241b7c3b6374941c252b97c5806d2
+MISC ChangeLog 6894 RMD160 40ed171bb1e7116a73072286a1f95b1b6e7ee9bc SHA1 df31335ee027c0dd4ba433a5a2f1be85107e3051 SHA256 45b1c684e74fd427c4cdc3de52df5afdcbcbc67f65279355a88deffd44372d9c
 MISC metadata.xml 156 RMD160 ecce3b981f150c45ae1e84e2d208e678d6124259 SHA1 b64f7c0b4e5db816d82ad19848f72118af129d35 SHA256 2f4da28506b9d4185f320f67a6191d30c7a921217ed4447ed46ea0bc4aefc79a
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.15 (GNU/Linux)
 
-iEYEARECAAYFAkwrZVoACgkQ5BmOA85PVLi7nwCfWcnA+F3rydLXQDSOHKEal8X3
-TB0AoKqUfe7Zs2LVRx5fEKMz0p2m9k6B
-=BgoG
+iEYEARECAAYFAkwwmhIACgkQHB6c3gNBRYeHVACgz8Buu9l7KxLzZoCNO0b2RNUH
+XM8An2eT1vvzxTj3PrGVDQgZzztND0gW
+=IkH6
 -----END PGP SIGNATURE-----
diff --git a/kde-base/kleopatra/files/kleopatra-4.4.3-assuan2.patch b/kde-base/kleopatra/files/kleopatra-4.4.3-assuan2.patch
deleted file mode 100644 (file)
index cb716bc..0000000
+++ /dev/null
@@ -1,1083 +0,0 @@
-Index: cmake/modules/FindAssuan2.cmake
-===================================================================
---- cmake/modules/FindAssuan2.cmake    (revision 0)
-+++ cmake/modules/FindAssuan2.cmake    (revision 1078528)
-@@ -0,0 +1,251 @@
-+# - Try to find the assuan v2 library
-+
-+# Variables set:
-+#  ASSUAN2_{INCLUDES,FOUND,LIBRARIES} will be set for each of the above
-+
-+# do away with crappy condition repetition on else/endfoo
-+set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS_assuan2_saved ${CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS} )
-+set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true )
-+
-+#if this is built-in, please replace, if it isn't, export into a MacroToBool.cmake of it's own
-+macro( macro_bool_to_bool FOUND_VAR )
-+  foreach( _current_VAR ${ARGN} )
-+    if ( ${FOUND_VAR} )
-+      set( ${_current_VAR} TRUE )
-+    else()
-+      set( ${_current_VAR} FALSE )
-+    endif()
-+  endforeach()
-+endmacro()
-+
-+include (MacroEnsureVersion)
-+
-+message( STATUS "In FindAssuan2.cmake" )
-+
-+if ( WIN32 )
-+
-+  # On Windows, we don't have a libassuan-config script, so we need to
-+  # look for the stuff ourselves:
-+
-+  # in cmake, AND and OR have the same precedence, there's no
-+  # subexpressions, and expressions are evaluated short-circuit'ed
-+  # IOW: CMake if() suxx.
-+  set( _seem_to_have_cached_assuan2 false )
-+  if ( ASSUAN2_INCLUDES )
-+    if ( ASSUAN2_VANILLA_LIBRARIES )#OR ASSUAN2_QT_LIBRARIES OR ASSUAN2_GLIB_LIBRARIES )
-+      set( _seem_to_have_cached_assuan2 true )
-+    endif()
-+  endif()
-+
-+  if ( _seem_to_have_cached_assuan2 )
-+
-+    macro_bool_to_bool( ASSUAN2_VANILLA_LIBRARIES  ASSUAN2_VANILLA_FOUND )
-+    # this would have been preferred:
-+    #set( ASSUAN2_*_FOUND macro_bool_to_bool(ASSUAN2_*_LIBRARIES) )
-+
-+    if ( ASSUAN2_VANILLA_FOUND ) #OR ASSUAN2_GLIB_FOUND OR ASSUAN2_QT_FOUND )
-+      set( ASSUAN2_FOUND true )
-+    else()
-+      set( ASSUAN2_FOUND false )
-+    endif()
-+
-+  else()
-+
-+    set( ASSUAN2_FOUND         false )
-+    set( ASSUAN2_VANILLA_FOUND false )
-+    #set( ASSUAN2_GLIB_FOUND    false )
-+    #set( ASSUAN2_QT_FOUND      false )
-+
-+    find_path( ASSUAN2_INCLUDES assuan.h
-+      ${CMAKE_INCLUDE_PATH}
-+      ${CMAKE_INSTALL_PREFIX}/include
-+    )
-+
-+    find_library( _assuan2_library NAMES assuan assuan0 assuan2 libassuan libassuan0 libassuan2
-+      PATHS 
-+        ${CMAKE_LIBRARY_PATH}
-+        ${CMAKE_INSTALL_PREFIX}/lib
-+    )
-+
-+    find_library( _gpg_error_library     NAMES gpg-error libgpg-error gpg-error-0 libgpg-error-0
-+      PATHS 
-+        ${CMAKE_LIBRARY_PATH}
-+        ${CMAKE_INSTALL_PREFIX}/lib
-+    )
-+
-+    set( ASSUAN2_INCLUDES ${ASSUAN2_INCLUDES} )
-+
-+    if ( _assuan2_library AND _gpg_error_library )
-+      set( ASSUAN2_LIBRARIES ${_assuan2_library} ${_gpg_error_library} ws2_32 )
-+      set( ASSUAN2_FOUND             true )
-+    endif()
-+
-+  endif()
-+
-+  macro_bool_to_01( ASSUAN2_FOUND HAVE_ASSUAN2 )
-+
-+else() # not WIN32
-+
-+  # On *nix, we have the libassuan-config script which can tell us all we
-+  # need to know:
-+
-+  # see WIN32 case for an explanation of what this does:
-+  set( _seem_to_have_cached_assuan2 false )
-+  if ( ASSUAN2_INCLUDES AND ASSUAN2_LIBRARIES )
-+    set( _seem_to_have_cached_assuan2 true )
-+  endif()
-+
-+  if ( _seem_to_have_cached_assuan2 )
-+
-+    set( ASSUAN2_FOUND true )
-+
-+  else()
-+
-+    set( ASSUAN2_FOUND         false )
-+
-+    find_program( _ASSUAN2CONFIG_EXECUTABLE NAMES libassuan-config )
-+
-+    # if libassuan-config has been found
-+    if ( _ASSUAN2CONFIG_EXECUTABLE )
-+      
-+      message( STATUS "Found libassuan-config at ${_ASSUAN2CONFIG_EXECUTABLE}" )
-+
-+      exec_program( ${_ASSUAN2CONFIG_EXECUTABLE} ARGS --version OUTPUT_VARIABLE ASSUAN2_VERSION )
-+
-+      set( _ASSUAN2_MIN_VERSION "2.0.0" )
-+      macro_ensure_version( ${_ASSUAN2_MIN_VERSION} ${ASSUAN2_VERSION} _ASSUAN2_INSTALLED_VERSION_OK )
-+
-+      if ( NOT _ASSUAN2_INSTALLED_VERSION_OK )
-+
-+        message( STATUS "The installed version of assuan is too old: ${ASSUAN2_VERSION} (required: >= ${_ASSUAN2_MIN_VERSION})" )
-+
-+      else()
-+
-+        message( STATUS "Found assuan v${ASSUAN2_VERSION}" )
-+
-+        exec_program( ${_ASSUAN2CONFIG_EXECUTABLE} ARGS --libs OUTPUT_VARIABLE _assuan2_config_libs RETURN_VALUE _ret )
-+      if ( _ret )
-+        set( _assuan2_config_libs )
-+      endif()
-+
-+        # append -lgpg-error to the list of libraries, if necessary
-+        if ( _assuan2_config_libs AND NOT _assuan2_config_libs MATCHES "lgpg-error" )
-+          set( _assuan2_config_libs "${_assuan2_config_libs} -lgpg-error" )
-+        endif()
-+
-+        if ( _assuan2_config_libs )
-+
-+          exec_program( ${_ASSUAN2CONFIG_EXECUTABLE} ARGS --cflags OUTPUT_VARIABLE _ASSUAN2_CFLAGS )
-+
-+          if ( _ASSUAN2_CFLAGS )
-+            string( REGEX REPLACE "(\r?\n)+$" " " _ASSUAN2_CFLAGS  "${_ASSUAN2_CFLAGS}" )
-+            string( REGEX REPLACE " *-I"      ";" ASSUAN2_INCLUDES "${_ASSUAN2_CFLAGS}" )
-+          endif()
-+
-+          if ( _assuan2_config_libs )
-+
-+            set( _assuan2_library_dirs )
-+            set( _assuan2_library_names )
-+
-+            string( REGEX REPLACE " +" ";" _assuan2_config_libs "${_assuan2_config_libs}" )
-+
-+            foreach( _flag ${_assuan2_config_libs} )
-+              if ( "${_flag}" MATCHES "^-L" )
-+                string( REGEX REPLACE "^-L" "" _dir "${_flag}" )
-+                file( TO_CMAKE_PATH "${_dir}" _dir )
-+                set( _assuan2_library_dirs ${_assuan2_library_dirs} "${_dir}" )
-+              elseif( "${_flag}" MATCHES "^-l" )
-+                string( REGEX REPLACE "^-l" "" _name "${_flag}" )
-+                set( _assuan2_library_names ${_assuan2_library_names} "${_name}" )
-+              endif()
-+            endforeach()
-+
-+            set( ASSUAN2_FOUND true )
-+
-+            foreach( _name ${_assuan2_library_names} )
-+              set( _assuan2_${_name}_lib )
-+
-+              # if -L options were given, look only there
-+              if ( _assuan2_library_dirs )
-+                find_library( _assuan2_${_name}_lib NAMES ${_name} PATHS ${_assuan2_library_dirs} NO_DEFAULT_PATH )
-+              endif()
-+
-+              # if not found there, look in system directories
-+              if ( NOT _assuan2_${_name}_lib )
-+                find_library( _assuan2_${_name}_lib NAMES ${_name} )
-+              endif()
-+
-+              # if still not found, then the whole flavour isn't found
-+              if ( NOT _assuan2_${_name}_lib )
-+                if ( ASSUAN2_FOUND )
-+                  set( ASSUAN2_FOUND false )
-+                  set( _not_found_reason "dependant library ${_name} wasn't found" )
-+                endif()
-+              endif()
-+
-+              set( ASSUAN2_LIBRARIES ${ASSUAN2_LIBRARIES} "${_assuan2_${_name}_lib}" )
-+            endforeach()
-+
-+            #check_c_library_exists_explicit( assuan         assuan_check_version "${_ASSUAN2_CFLAGS}" "${ASSUAN2_LIBRARIES}"         ASSUAN2_FOUND         )
-+            if ( ASSUAN2_FOUND )
-+              message( STATUS " Checking whether assuan is usable...yes" )
-+            else()
-+              message( STATUS " Checking whether assuan is usable...no" )
-+              message( STATUS "  (${_not_found_reason})" )
-+            endif()
-+          endif()
-+
-+          # ensure that they are cached
-+          set( ASSUAN2_INCLUDES  ${ASSUAN2_INCLUDES}  )
-+          set( ASSUAN2_LIBRARIES ${ASSUAN2_LIBRARIES} )
-+
-+        endif()
-+
-+      endif()
-+
-+    endif()
-+
-+  endif()
-+
-+  macro_bool_to_01( ASSUAN2_FOUND         HAVE_ASSUAN2         )
-+
-+endif() # WIN32 | Unix
-+
-+
-+if ( NOT Assuan2_FIND_QUIETLY )
-+
-+  if ( ASSUAN2_FOUND )
-+    message( STATUS "Usable assuan found." )
-+    message( STATUS " Includes:  ${ASSUAN2_INCLUDES}" )
-+    message( STATUS " Libraries: ${ASSUAN2_LIBRARIES}" )
-+  else()
-+    message( STATUS "No usable assuan found." )
-+  endif()
-+
-+  macro_bool_to_bool( Assuan2_FIND_REQUIRED _req )
-+
-+  if ( WIN32 )
-+    set( _assuan2_homepage "http://www.gpg4win.org" )
-+  else()
-+    set( _assuan2_homepage "http://www.gnupg.org/related_software/libassuan" )
-+  endif()
-+
-+  macro_log_feature(
-+    ASSUAN2_FOUND
-+    "assuan2"
-+    "Assuan v2 IPC library"
-+    ${_assuan2_homepage}
-+    ${_req}
-+    "${_ASSUAN2_MIN_VERSION} or greater"
-+    "Needed for Kleopatra to act as the GnuPG UI Server"
-+  )
-+
-+else()
-+
-+  if ( Assuan2_FIND_REQUIRED AND NOT ASSUAN2_FOUND )
-+    message( FATAL_ERROR "" )
-+  endif()
-+
-+endif()
-+
-+set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS_assuan2_saved )
-Index: kleopatra/ConfigureChecks.cmake
-===================================================================
---- kleopatra/ConfigureChecks.cmake    (revision 1078527)
-+++ kleopatra/ConfigureChecks.cmake    (revision 1078528)
-@@ -1,21 +1,18 @@
- # assuan configure checks
- include(CheckFunctionExists)
- 
--macro_optional_find_package(Assuan)
-+macro_optional_find_package(Assuan2)
- 
- set( USABLE_ASSUAN_FOUND false )
- 
--if ( ASSUAN_FOUND )
-+if ( ASSUAN2_FOUND )
- 
--  set( CMAKE_REQUIRED_INCLUDES ${ASSUAN_INCLUDES} )
-+  set( CMAKE_REQUIRED_INCLUDES ${ASSUAN2_INCLUDES} )
- 
--  if ( WIN32 AND ASSUAN_VANILLA_FOUND )
--    set( CMAKE_REQUIRED_LIBRARIES ${ASSUAN_VANILLA_LIBRARIES} )
-+  if ( ASSUAN2_FOUND )
-+    set( CMAKE_REQUIRED_LIBRARIES ${ASSUAN2_LIBRARIES} )
-     set( USABLE_ASSUAN_FOUND true )
--  elseif( NOT WIN32 AND ASSUAN_PTHREAD_FOUND )
--    set( CMAKE_REQUIRED_LIBRARIES ${ASSUAN_PTHREAD_LIBRARIES} )
--    set( USABLE_ASSUAN_FOUND true )
--  endif( WIN32 AND ASSUAN_VANILLA_FOUND )
-+  endif( ASSUAN2_FOUND )
- 
-   # TODO: this workaround will be removed as soon as we find better solution
-   if(MINGW)
-@@ -24,7 +21,7 @@
-     set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDE_DIR}/msvc)
-   endif(MINGW)
- 
--endif( ASSUAN_FOUND )
-+endif( ASSUAN2_FOUND )
- 
- if ( USABLE_ASSUAN_FOUND )
-   # check if assuan.h can be compiled standalone (it couldn't, on
-@@ -48,40 +45,6 @@
- 
- if ( USABLE_ASSUAN_FOUND )
- 
--  # check if assuan has assuan_fd_t
--  check_cxx_source_compiles("
--        #include <assuan.h>
--        int main() {
--            assuan_fd_t fd = ASSUAN_INVALID_FD;
--            return fd ? 1 : 0 ;
--        }
--        "
--    HAVE_ASSUAN_FD_T )
--
--  if ( WIN32 AND NOT HAVE_ASSUAN_FD_T )
--    set( USABLE_ASSUAN_FOUND false )
--  endif ( WIN32 AND NOT HAVE_ASSUAN_FD_T )
--
--  # check if assuan has assuan_inquire_ext, old style
--  check_function_exists( "assuan_inquire_ext" HAVE_ASSUAN_INQUIRE_EXT )
--
--  if ( NOT HAVE_ASSUAN_INQUIRE_EXT )
--    set( USABLE_ASSUAN_FOUND false )
--  endif( NOT HAVE_ASSUAN_INQUIRE_EXT )
--
--  # check if assuan has new-style assuan_inquire_ext:
--  check_cxx_source_compiles("
--        #include <assuan.h>
--        static int handler( void *, int, unsigned char*, size_t ) { return 0; }
--        int main() {
--            assuan_context_t ctx = 0;
--            const size_t maxSize = 0U;
--            assuan_error_t err = assuan_inquire_ext( ctx, \"FOO\", maxSize, handler, (void*)0 );
--            return err ? 1 : 0 ;
--        }
--        "
--    HAVE_NEW_STYLE_ASSUAN_INQUIRE_EXT )
--
-   # check if gpg-error already has GPG_ERR_SOURCE_KLEO
-   check_cxx_source_compiles("
-         #include <gpg-error.h>
-@@ -90,21 +53,6 @@
-         "
-     HAVE_GPG_ERR_SOURCE_KLEO )
- 
--  # check if assuan has assuan_sock_get_nonce (via assuan_sock_nonce_t)
--  # function_exists runs into linking errors - libassuan is static,
--  # and assuan_sock_get_nonce drags in stuff that needs linking
--  # against winsock2.
--  check_cxx_source_compiles("
--        #include <assuan.h>
--        static assuan_sock_nonce_t nonce;
--        int main() { return 0; }
--        "
--    HAVE_ASSUAN_SOCK_GET_NONCE )
--
--  if ( WIN32 AND NOT HAVE_ASSUAN_SOCK_GET_NONCE )
--    set( USABLE_ASSUAN_FOUND false )
--  endif ( WIN32 AND NOT HAVE_ASSUAN_SOCK_GET_NONCE )  
--
- endif ( USABLE_ASSUAN_FOUND )
- 
- if ( USABLE_ASSUAN_FOUND )
-@@ -113,45 +61,14 @@
-   message( STATUS "NO usable assuan found for Kleopatra" )
- endif ( USABLE_ASSUAN_FOUND )
- 
--#
--# Check that libassuan (which is built statically) can be linked into a DSO
--# (e.g. on amd64, this requires it to be compiled with -fPIC).
--#
--
--set ( ASSUAN_LINKABLE_TO_DSO false )
--
- OPTION( BUILD_libkleopatraclient "Build directory kleopatra/libkleopatraclient" ${USABLE_ASSUAN_FOUND} )
- 
- if ( NOT USABLE_ASSUAN_FOUND )
-   set( BUILD_libkleopatraclient false )
- endif ( NOT USABLE_ASSUAN_FOUND )
- 
--if ( BUILD_libkleopatraclient )
--
--  message( STATUS "Checking whether libassuan can be linked against from DSO's" )
--
--  set ( YUP TRUE )
--  if ( YUP )
--    set ( ASSUAN_LINKABLE_TO_DSO true )
--    message( STATUS "--> Assuming that it can. If compilation of libkleopatraclient fails on AMD64, check that libassuan is compiled with -fPIC and try again. Otherwise, pass -DBUILD_libkleopatraclient=OFF." )
--  else ( YUP )
--  # TODO: make this one executed at configure time, so the check below works:
--  add_library( dso_with_assuan_check SHARED ${CMAKE_SOURCE_DIR}/kleopatra/dso_with_assuan_check.c )
--
--  set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} dso_with_assuan_check )
--  check_cxx_source_compiles( "int main() { return 0; }" ASSUAN_LINKABLE_TO_DSO )
--
--  if ( ASSUAN_LINKABLE_TO_DSO )
--    message( STATUS "Usable assuan found for libkleopatraclient" )
--  else ( ASSUAN_LINKABLE_TO_DSO )
--    message( STATUS "NO usable assuan found for libkleopatraclient - if this is AMD64, check that libassuan is compiled with -fPIC" )
--  endif ( ASSUAN_LINKABLE_TO_DSO )
--  endif ( YUP )
--
--endif ( BUILD_libkleopatraclient )
--
- macro_bool_to_01( USABLE_ASSUAN_FOUND  HAVE_USABLE_ASSUAN )
--macro_bool_to_01( ASSUAN_LINKABLE_TO_DSO HAVE_KLEOPATRACLIENT_LIBRARY )
-+macro_bool_to_01( USABLE_ASSUAN_FOUND  HAVE_KLEOPATRACLIENT_LIBRARY )
- 
- set(CMAKE_REQUIRED_INCLUDES)
- set(CMAKE_REQUIRED_LIBRARIES)
-Index: kleopatra/config-kleopatra.h.cmake
-===================================================================
---- kleopatra/config-kleopatra.h.cmake (revision 1078527)
-+++ kleopatra/config-kleopatra.h.cmake (revision 1078528)
-@@ -1,18 +1,6 @@
- /* Define to 1 if you have a recent enough libassuan */
- #cmakedefine HAVE_USABLE_ASSUAN 1
- 
--/* Define to 1 if your libassuan has the assuan_fd_t type  */
--#cmakedefine HAVE_ASSUAN_FD_T 1
--
--/* Define to 1 if your libassuan has the assuan_inquire_ext function */
--#cmakedefine HAVE_ASSUAN_INQUIRE_EXT 1
--
--/* Define to 1 if your assuan_inquire_ext puts the buffer arguments into the callback signature */
--#cmakedefine HAVE_NEW_STYLE_ASSUAN_INQUIRE_EXT 1
--
--/* Define to 1 if your libassuan has the assuan_sock_get_nonce function */
--#cmakedefine HAVE_ASSUAN_SOCK_GET_NONCE 1
--
- /* Define to 1 if you build libkleopatraclient */
- #cmakedefine HAVE_KLEOPATRACLIENT_LIBRARY 1
- 
-Index: kleopatra/tests/test_uiserver.cpp
-===================================================================
---- kleopatra/tests/test_uiserver.cpp  (revision 1078527)
-+++ kleopatra/tests/test_uiserver.cpp  (revision 1078528)
-@@ -89,17 +89,17 @@
-     exit( 1 );
- }
- 
--static assuan_error_t data( void * void_ctx, const void * buffer, size_t len ) {
-+static gpg_error_t data( void * void_ctx, const void * buffer, size_t len ) {
-     (void)void_ctx; (void)buffer; (void)len;
-     return 0; // ### implement me
- }
- 
--static assuan_error_t status( void * void_ctx, const char * line ) {
-+static gpg_error_t status( void * void_ctx, const char * line ) {
-     (void)void_ctx; (void)line;
-     return 0;
- }
- 
--static assuan_error_t inquire( void * void_ctx, const char * keyword ) {
-+static gpg_error_t inquire( void * void_ctx, const char * keyword ) {
-     assuan_context_t ctx = (assuan_context_t)void_ctx;
-     assert( ctx );
-     const std::map<std::string,std::string>::const_iterator it = inquireData.find( keyword );
-@@ -121,7 +121,7 @@
- 
-     const Kleo::WSAStarter _wsastarter;
- 
--    assuan_set_assuan_err_source( GPG_ERR_SOURCE_DEFAULT );
-+    assuan_set_gpg_err_source( GPG_ERR_SOURCE_DEFAULT );
- 
-     if ( argc < 3 )
-         usage(); // need socket and command, at least
-@@ -185,7 +185,12 @@
- 
-     assuan_context_t ctx = 0;
- 
--    if ( const gpg_error_t err = assuan_socket_connect_ext( &ctx, socket, -1, ASSUAN_CONNECT_FLAGS ) ) {
-+    if ( const gpg_error_t err = assuan_new( &ctx ) ) {
-+        qDebug( "%s", Exception( err, "assuan_new" ).what() );
-+        return 1;
-+    }
-+
-+    if ( const gpg_error_t err = assuan_socket_connect( ctx, socket, -1, ASSUAN_CONNECT_FLAGS ) ) {
-         qDebug( "%s", Exception( err, "assuan_socket_connect_ext" ).what() );
-         return 1;
-     }
-@@ -279,7 +284,7 @@
-         return 1;
-     }
- 
--    assuan_disconnect( ctx );
-+    assuan_release( ctx );
- 
-     return 0;
- }
-Index: kleopatra/uiserver/assuancommand.h
-===================================================================
---- kleopatra/uiserver/assuancommand.h (revision 1078527)
-+++ kleopatra/uiserver/assuancommand.h (revision 1078528)
-@@ -39,6 +39,8 @@
- #include <gpgme++/global.h>
- #include <gpgme++/error.h>
- 
-+#include <gpg-error.h>
-+
- #include <kmime/kmime_header_parsing.h>
- 
- #include <qwindowdefs.h> // for WId
-@@ -329,16 +331,16 @@
-         virtual boost::shared_ptr<AssuanCommand> create() const = 0;
-         virtual const char * name() const = 0;
- 
--        typedef int(*_Handler)( assuan_context_s*, char *);
-+        typedef gpg_error_t(*_Handler)( assuan_context_s*, char *);
-         virtual _Handler _handler() const = 0;
-     protected:
--        static int _handle( assuan_context_s*, char *, const char * );
-+        static gpg_error_t _handle( assuan_context_s*, char *, const char * );
-     };
- 
-     template <typename Command>
-     class GenericAssuanCommandFactory : public AssuanCommandFactory {
-         /* reimp */ AssuanCommandFactory::_Handler _handler() const { return &GenericAssuanCommandFactory::_handle; }
--        static int _handle( assuan_context_s* _ctx, char * _line ) {
-+        static gpg_error_t _handle( assuan_context_s* _ctx, char * _line ) {
-             return AssuanCommandFactory::_handle( _ctx, _line, Command::staticName() );
-         }
-         /* reimp */ boost::shared_ptr<AssuanCommand> create() const { return make(); }
-Index: kleopatra/uiserver/assuanserverconnection.cpp
-===================================================================
---- kleopatra/uiserver/assuanserverconnection.cpp      (revision 1078527)
-+++ kleopatra/uiserver/assuanserverconnection.cpp      (revision 1078528)
-@@ -116,13 +116,18 @@
- static const int FOR_READING = 0;
- static const unsigned int MAX_ACTIVE_FDS = 32;
- 
-+static void my_assuan_release( assuan_context_t ctx ) {
-+    if ( ctx )
-+        assuan_release( ctx );
-+}
-+
- // shared_ptr for assuan_context_t w/ deleter enforced to assuan_deinit_server:
- typedef shared_ptr< remove_pointer<assuan_context_t>::type > AssuanContextBase;
- struct AssuanContext : AssuanContextBase {
-     AssuanContext() : AssuanContextBase() {}
--    explicit AssuanContext( assuan_context_t ctx ) : AssuanContextBase( ctx, &assuan_deinit_server ) {}
-+    explicit AssuanContext( assuan_context_t ctx ) : AssuanContextBase( ctx, &my_assuan_release ) {}
- 
--    void reset( assuan_context_t ctx=0 ) { AssuanContextBase::reset( ctx, &assuan_deinit_server ); }
-+    void reset( assuan_context_t ctx=0 ) { AssuanContextBase::reset( ctx, &my_assuan_release ); }
- };
- 
- static inline gpg_error_t assuan_process_done_msg( assuan_context_t ctx, gpg_error_t err, const char * err_msg ) {
-@@ -240,7 +245,8 @@
- public Q_SLOTS:
-     void slotReadActivity( int ) {
-         assert( ctx );
--        if ( const int err = assuan_process_next( ctx.get() ) ) {
-+        int done = false;
-+        if ( const int err = assuan_process_next( ctx.get(), &done ) || done ) {
-             //if ( err == -1 || gpg_err_code(err) == GPG_ERR_EOF ) {
-                 topHalfDeletion();
-                 if ( nohupedCommands.empty() )
-@@ -296,15 +302,17 @@
-     }
- 
- private:
--    static void reset_handler( assuan_context_t ctx_ ) {
-+    static gpg_error_t reset_handler( assuan_context_t ctx_, char * ) {
-         assert( assuan_get_pointer( ctx_ ) );
- 
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-         conn.reset();
-+
-+        return 0;
-     }
- 
--    static int option_handler( assuan_context_t ctx_, const char * key, const char * value ) {
-+    static gpg_error_t option_handler( assuan_context_t ctx_, const char * key, const char * value ) {
-         assert( assuan_get_pointer( ctx_ ) );
- 
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
-@@ -317,7 +325,7 @@
-         //return gpg_error( GPG_ERR_UNKNOWN_OPTION );
-     }
- 
--    static int session_handler( assuan_context_t ctx_, char * line ) {
-+    static gpg_error_t session_handler( assuan_context_t ctx_, char * line ) {
-         assert( assuan_get_pointer( ctx_ ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-@@ -344,7 +352,7 @@
-         return assuan_process_done( ctx_, 0 );
-     }
- 
--    static int capabilities_handler( assuan_context_t ctx_, char * line ) {
-+    static gpg_error_t capabilities_handler( assuan_context_t ctx_, char * line ) {
-         if ( !QByteArray( line ).trimmed().isEmpty() ) {
-             static const QString errorString = i18n("CAPABILITIES does not take arguments");
-             return assuan_process_done_msg( ctx_, gpg_error( GPG_ERR_ASS_PARAMETER ), errorString );
-@@ -357,7 +365,7 @@
-         return assuan_process_done( ctx_, assuan_send_data( ctx_, capabilities, sizeof capabilities - 1 ) );
-     }
- 
--    static int getinfo_handler( assuan_context_t ctx_, char * line ) {
-+    static gpg_error_t getinfo_handler( assuan_context_t ctx_, char * line ) {
-         assert( assuan_get_pointer( ctx_ ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-@@ -386,7 +394,7 @@
-         return assuan_process_done( ctx_, assuan_send_data( ctx_, ba.constData(), ba.size() ) );
-     }
- 
--    static int start_keymanager_handler( assuan_context_t ctx_, char * line ) {
-+    static gpg_error_t start_keymanager_handler( assuan_context_t ctx_, char * line ) {
-         assert( assuan_get_pointer( ctx_ ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-@@ -400,7 +408,7 @@
-         return assuan_process_done( ctx_, 0 );
-     }
- 
--    static int start_confdialog_handler( assuan_context_t ctx_, char * line ) {
-+    static gpg_error_t start_confdialog_handler( assuan_context_t ctx_, char * line ) {
-         assert( assuan_get_pointer( ctx_ ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-@@ -418,7 +426,7 @@
- 
-     // format: TAG (FD|FD=\d+|FILE=...)
-     template <bool in, typename T_memptr>
--    static int IO_handler( assuan_context_t ctx_, char * line_, T_memptr which ) {
-+    static gpg_error_t IO_handler( assuan_context_t ctx_, char * line_, T_memptr which ) {
-         assert( assuan_get_pointer( ctx_ ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-@@ -498,19 +506,19 @@
- 
-     }
- 
--    static int input_handler( assuan_context_t ctx, char * line ) {
-+    static gpg_error_t input_handler( assuan_context_t ctx, char * line ) {
-         return IO_handler<true>( ctx, line, &Private::inputs );
-     }
- 
--    static int output_handler( assuan_context_t ctx, char * line ) {
-+    static gpg_error_t output_handler( assuan_context_t ctx, char * line ) {
-         return IO_handler<false>( ctx, line, &Private::outputs );
-     }
- 
--    static int message_handler( assuan_context_t ctx, char * line ) {
-+    static gpg_error_t message_handler( assuan_context_t ctx, char * line ) {
-         return IO_handler<true>( ctx, line, &Private::messages );
-     }
- 
--    static int file_handler( assuan_context_t ctx_, char * line ) {
-+    static gpg_error_t file_handler( assuan_context_t ctx_, char * line ) {
-         assert( assuan_get_pointer( ctx_ ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx_ ) );
- 
-@@ -572,7 +580,7 @@
-     }
- 
-     template <typename T_memptr, typename T_memptr2>
--    static int recipient_sender_handler( T_memptr mp, T_memptr2 info, assuan_context_t ctx, char * line, bool sender=false ) {
-+    static gpg_error_t recipient_sender_handler( T_memptr mp, T_memptr2 info, assuan_context_t ctx, char * line, bool sender=false ) {
-         assert( assuan_get_pointer( ctx ) );
-         AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx ) );
- 
-@@ -656,11 +664,11 @@
-         return assuan_process_done( ctx, 0 );
-     }
- 
--    static int recipient_handler( assuan_context_t ctx, char * line ) {
-+    static gpg_error_t recipient_handler( assuan_context_t ctx, char * line ) {
-         return recipient_sender_handler( &Private::recipients, &Private::informativeRecipients, ctx, line );
-     }
- 
--    static int sender_handler( assuan_context_t ctx, char * line ) {
-+    static gpg_error_t sender_handler( assuan_context_t ctx, char * line ) {
-         return recipient_sender_handler( &Private::senders, &Private::informativeSenders, ctx, line, true );
-     }
- 
-@@ -792,11 +800,15 @@
-     if ( fd == ASSUAN_INVALID_FD )
-         throw Exception( gpg_error( GPG_ERR_INV_ARG ), "pre-assuan_init_socket_server_ext" );
- 
--    assuan_context_t naked_ctx = 0;
--    if ( const gpg_error_t err = assuan_init_socket_server_ext( &naked_ctx, fd, INIT_SOCKET_FLAGS ) )
-+    {
-+        assuan_context_t naked_ctx = 0;
-+        if ( const gpg_error_t err = assuan_new( &naked_ctx ) )
-+            throw Exception( err, "assuan_new" );
-+        ctx.reset( naked_ctx );
-+    }
-+    if ( const gpg_error_t err = assuan_init_socket_server( ctx.get(), fd, INIT_SOCKET_FLAGS ) )
-         throw Exception( err, "assuan_init_socket_server_ext" );
- 
--    ctx.reset( naked_ctx ); naked_ctx = 0;
- 
-     // for callbacks, associate the context with this connection:
-     assuan_set_pointer( ctx.get(), this );
-@@ -824,34 +836,34 @@
- 
- 
-     // register our INPUT/OUTPUT/MESSGAE/FILE handlers:
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "INPUT",  input_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "INPUT",  input_handler, "" ) )
-         throw Exception( err, "register \"INPUT\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "MESSAGE",  message_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "MESSAGE",  message_handler, "" ) )
-         throw Exception( err, "register \"MESSAGE\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "OUTPUT", output_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "OUTPUT", output_handler, "" ) )
-         throw Exception( err, "register \"OUTPUT\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "FILE", file_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "FILE", file_handler, "" ) )
-         throw Exception( err, "register \"FILE\" handler" );
- 
- 
-     // register user-defined commands:
-     Q_FOREACH( shared_ptr<AssuanCommandFactory> fac, factories )
--        if ( const gpg_error_t err = assuan_register_command( ctx.get(), fac->name(), fac->_handler() ) )
-+        if ( const gpg_error_t err = assuan_register_command( ctx.get(), fac->name(), fac->_handler(), "" ) )
-             throw Exception( err, std::string( "register \"" ) + fac->name() + "\" handler" );
- 
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "GETINFO", getinfo_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "GETINFO", getinfo_handler, "" ) )
-         throw Exception( err, "register \"GETINFO\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "START_KEYMANAGER", start_keymanager_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "START_KEYMANAGER", start_keymanager_handler, "" ) )
-         throw Exception( err, "register \"START_KEYMANAGER\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "START_CONFDIALOG", start_confdialog_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "START_CONFDIALOG", start_confdialog_handler, "" ) )
-         throw Exception( err, "register \"START_CONFDIALOG\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "RECIPIENT", recipient_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "RECIPIENT", recipient_handler, "" ) )
-         throw Exception( err, "register \"RECIPIENT\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "SENDER", sender_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "SENDER", sender_handler, "" ) )
-         throw Exception( err, "register \"SENDER\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "SESSION", session_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "SESSION", session_handler, "" ) )
-         throw Exception( err, "register \"SESSION\" handler" );
--    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "CAPABILITIES", capabilities_handler ) )
-+    if ( const gpg_error_t err = assuan_register_command( ctx.get(), "CAPABILITIES", capabilities_handler, "" ) )
-         throw Exception( err, "register \"CAPABILITIES\" handler" );
- 
-     assuan_set_hello_line( ctx.get(), "GPG UI server (Kleopatra/" KLEOPATRA_VERSION_STRING ") ready to serve" );
-@@ -904,20 +916,14 @@
-     Q_OBJECT
- public:
- 
--#ifdef HAVE_ASSUAN_INQUIRE_EXT
-     explicit InquiryHandler( const char * keyword_, QObject * p=0 )
-         : QObject( p ),
--# ifndef HAVE_NEW_STYLE_ASSUAN_INQUIRE_EXT
--          buffer( 0 ),
--          buflen( 0 ),
--# endif
-           keyword( keyword_ )
-     {
- 
-     }
- 
--# ifdef HAVE_NEW_STYLE_ASSUAN_INQUIRE_EXT
--    static int handler( void * cb_data, int rc, unsigned char * buffer, size_t buflen )
-+    static gpg_error_t handler( void * cb_data, gpg_error_t rc, unsigned char * buffer, size_t buflen )
-     {
-         assert( cb_data );
-         InquiryHandler * this_ = static_cast<InquiryHandler*>(cb_data);
-@@ -926,26 +932,9 @@
-         delete this_;
-         return 0;
-     }
--# else
--    static int handler( void * cb_data, int rc )
--    {
--        assert( cb_data );
--        InquiryHandler * this_ = static_cast<InquiryHandler*>(cb_data);
--        emit this_->signal( rc, QByteArray::fromRawData( reinterpret_cast<const char*>(this_->buffer), this_->buflen ), this_->keyword );
--        std::free( this_->buffer );
--        delete this_;
--        return 0;
--    }
--# endif
- 
- private:
--# ifndef HAVE_NEW_STYLE_ASSUAN_INQUIRE_EXT
--    friend class ::Kleo::AssuanCommand;
--    unsigned char * buffer;
--    size_t buflen;
--# endif
-     const char * keyword;
--#endif // HAVE_ASSUAN_INQUIRE_EXT
- 
- Q_SIGNALS:
-     void signal( int rc, const QByteArray & data, const QByteArray & keyword );
-@@ -1157,20 +1146,13 @@
-     if ( d->nohup )
-         return makeError( GPG_ERR_INV_OP );
- 
--#ifdef HAVE_ASSUAN_INQUIRE_EXT
-     std::auto_ptr<InquiryHandler> ih( new InquiryHandler( keyword, receiver ) );
-     receiver->connect( ih.get(), SIGNAL(signal(int,QByteArray,QByteArray)), slot );
-     if ( const gpg_error_t err = assuan_inquire_ext( d->ctx.get(), keyword,
--# ifndef HAVE_NEW_STYLE_ASSUAN_INQUIRE_EXT
--                                                     &ih->buffer, &ih->buflen,
--# endif
-                                                      maxSize, InquiryHandler::handler, ih.get() ) )
-          return err;
-     ih.release();
-     return 0;
--#else
--    return makeError( GPG_ERR_NOT_SUPPORTED ); // libassuan too old
--#endif // HAVE_ASSUAN_INQUIRE_EXT
- }
- 
- void AssuanCommand::done( const GpgME::Error& err, const QString & details ) {
-@@ -1262,7 +1244,7 @@
-     return d->senders;
- }
- 
--int AssuanCommandFactory::_handle( assuan_context_t ctx, char * line, const char * commandName ) {
-+gpg_error_t AssuanCommandFactory::_handle( assuan_context_t ctx, char * line, const char * commandName ) {
-     assert( assuan_get_pointer( ctx ) );
-     AssuanServerConnection::Private & conn = *static_cast<AssuanServerConnection::Private*>( assuan_get_pointer( ctx ) );
- 
-Index: kleopatra/uiserver/uiserver.cpp
-===================================================================
---- kleopatra/uiserver/uiserver.cpp    (revision 1078527)
-+++ kleopatra/uiserver/uiserver.cpp    (revision 1078528)
-@@ -73,15 +73,15 @@
-       actualSocketName(),
-       cryptoCommandsEnabled( false )
- {
--    assuan_set_assuan_err_source( GPG_ERR_SOURCE_DEFAULT );
-+    assuan_set_gpg_err_source( GPG_ERR_SOURCE_DEFAULT );
- }
- 
- bool UiServer::Private::isStaleAssuanSocket( const QString& fileName )
- {
-     assuan_context_t ctx = 0;
--    const bool error = assuan_socket_connect_ext( &ctx, QFile::encodeName( fileName ).constData(), -1, 0 );
-+    const bool error = assuan_new( &ctx ) || assuan_socket_connect( ctx, QFile::encodeName( fileName ).constData(), -1, 0 );
-     if ( !error )
--        assuan_disconnect( ctx );
-+        assuan_release( ctx );
-     return error;
- }
- 
-@@ -166,13 +166,11 @@
- void UiServer::Private::incomingConnection( int fd ) {
-     try {
-         qDebug( "UiServer: client connect on fd %d", fd );
--#ifdef HAVE_ASSUAN_SOCK_GET_NONCE
-         if ( assuan_sock_check_nonce( (assuan_fd_t)fd, &nonce ) ) {
-             qDebug( "UiServer: nonce check failed" );
-             assuan_sock_close( (assuan_fd_t)fd );
-             return;
-         }
--#endif
-         const shared_ptr<AssuanServerConnection> c( new AssuanServerConnection( (assuan_fd_t)fd, factories ) );
-         connect( c.get(), SIGNAL(closed(Kleo::AssuanServerConnection*)),
-                  this, SLOT(slotConnectionClosed(Kleo::AssuanServerConnection*)) );
-Index: kleopatra/uiserver/uiserver_unix.cpp
-===================================================================
---- kleopatra/uiserver/uiserver_unix.cpp       (revision 1078527)
-+++ kleopatra/uiserver/uiserver_unix.cpp       (revision 1078528)
-@@ -61,11 +61,7 @@
- 
- void UiServer::Private::doMakeListeningSocket( const QByteArray & encodedFileName ) {
-     // Create a Unix Domain Socket:
--#ifdef HAVE_ASSUAN_SOCK_GET_NONCE
-     const assuan_fd_t sock = assuan_sock_new( AF_UNIX, SOCK_STREAM, 0 );
--#else
--    const assuan_fd_t sock = ::socket( AF_UNIX, SOCK_STREAM, 0 );
--#endif
-     if ( sock == ASSUAN_INVALID_FD )
-         throw_<std::runtime_error>( i18n( "Could not create socket: %1", systemErrorString() ) );
- 
-@@ -75,19 +71,13 @@
-         std::memset( &sa, 0, sizeof(sa) );
-         sa.sun_family = AF_UNIX;
-         std::strncpy( sa.sun_path, encodedFileName.constData(), sizeof( sa.sun_path ) - 1 );
--#ifdef HAVE_ASSUAN_SOCK_GET_NONCE
-         if ( assuan_sock_bind( sock, (struct sockaddr*)&sa, sizeof( sa ) ) )
--#else
--        if ( ::bind( sock, (struct sockaddr*)&sa, sizeof( sa ) ) )
--#endif
-             throw_<std::runtime_error>( i18n( "Could not bind to socket: %1", systemErrorString() ) );
- 
-         // ### TODO: permissions?
- 
--#ifdef HAVE_ASSUAN_SOCK_GET_NONCE
-         if ( assuan_sock_get_nonce( (struct sockaddr*)&sa, sizeof( sa ), &nonce ) )
-             throw_<std::runtime_error>( i18n("Could not get socket nonce: %1", systemErrorString() ) );
--#endif
- 
-         // Listen
-         if ( ::listen( sock, SOMAXCONN ) )
-Index: kleopatra/CMakeLists.txt
-===================================================================
---- kleopatra/CMakeLists.txt   (revision 1078527)
-+++ kleopatra/CMakeLists.txt   (revision 1078528)
-@@ -2,7 +2,7 @@
- 
- include(MacroOptionalAddSubdirectory)
- 
--set( kleopatra_version 2.0.12 )
-+set( kleopatra_version 2.1.0 )
- set( kleopatra_release FALSE )
- 
- if (NOT kleopatra_release)
-@@ -28,7 +28,7 @@
-   ${QGPGME_INCLUDES}
-   ${GPGME_INCLUDES} )
- if (USABLE_ASSUAN_FOUND)
--   include_directories(${ASSUAN_INCLUDES})
-+   include_directories(${ASSUAN2_INCLUDES})
- endif(USABLE_ASSUAN_FOUND)
- add_definitions ( -DQT3_SUPPORT -DQT3_SUPPORT_WARNINGS -D_ASSUAN_ONLY_GPG_ERRORS -DQT_STL )
- remove_definitions ( -DQT_NO_STL )
-@@ -84,11 +84,7 @@
-     selftest/uiservercheck.cpp
-     )
- 
--  if ( WIN32 )
--    set( _kleopatra_uiserver_extra_libs ${ASSUAN_VANILLA_LIBRARIES} )
--  else ( WIN32 )
--    set( _kleopatra_uiserver_extra_libs ${ASSUAN_PTHREAD_LIBRARIES} )
--  endif( WIN32 )
-+  set( _kleopatra_uiserver_extra_libs ${ASSUAN2_LIBRARIES} )
- 
-   if ( HAVE_GPG_ERR_SOURCE_KLEO )
-     add_definitions( -DGPG_ERR_SOURCE_DEFAULT=GPG_ERR_SOURCE_KLEO )
-Index: kleopatra/libkleopatraclient/core/command.cpp
-===================================================================
---- kleopatra/libkleopatraclient/core/command.cpp      (revision 1078527)
-+++ kleopatra/libkleopatraclient/core/command.cpp      (revision 1078528)
-@@ -283,19 +283,19 @@
- namespace {
-     struct AssuanClientContext : AssuanContextBase {
-         AssuanClientContext() : AssuanContextBase() {}
--        explicit AssuanClientContext( assuan_context_t ctx ) : AssuanContextBase( ctx, &assuan_disconnect ) {}
--        void reset( assuan_context_t ctx=0 ) { AssuanContextBase::reset( ctx, &assuan_disconnect ); }
-+        explicit AssuanClientContext( assuan_context_t ctx ) : AssuanContextBase( ctx, &assuan_release ) {}
-+        void reset( assuan_context_t ctx=0 ) { AssuanContextBase::reset( ctx, &assuan_release ); }
-     };
- }
- 
--static assuan_error_t
-+static gpg_error_t
- my_assuan_transact( const AssuanClientContext & ctx,
-                     const char *command,
--                    assuan_error_t (*data_cb)( void *, const void *, size_t )=0,
-+                    gpg_error_t (*data_cb)( void *, const void *, size_t )=0,
-                     void * data_cb_arg=0,
--                    assuan_error_t (*inquire_cb)( void *, const char * )=0,
-+                    gpg_error_t (*inquire_cb)( void *, const char * )=0,
-                     void * inquire_cb_arg=0,
--                    assuan_error_t (*status_cb)( void *, const char * )=0,
-+                    gpg_error_t (*status_cb)( void *, const char * )=0,
-                     void * status_cb_arg=0)
- {
-     return assuan_transact( ctx.get(), command, data_cb, data_cb_arg, inquire_cb, inquire_cb_arg, status_cb, status_cb_arg );
-@@ -337,26 +337,26 @@
-     return Command::tr("start_uiserver: not yet implemented");
- }
- 
--static assuan_error_t getinfo_pid_cb( void * opaque, const void * buffer, size_t length ) {
-+static gpg_error_t getinfo_pid_cb( void * opaque, const void * buffer, size_t length ) {
-     qint64 & pid = *static_cast<qint64*>( opaque );
-     pid = QByteArray( static_cast<const char*>( buffer ), length ).toLongLong();
-     return 0;
- }
- 
--static assuan_error_t command_data_cb( void * opaque, const void * buffer, size_t length ) {
-+static gpg_error_t command_data_cb( void * opaque, const void * buffer, size_t length ) {
-     QByteArray & ba = *static_cast<QByteArray*>( opaque );
-     ba.append( QByteArray( static_cast<const char*>(buffer), length ) );
-     return 0;
- }
- 
--static assuan_error_t send_option( const AssuanClientContext & ctx, const char * name, const QVariant & value ) {
-+static gpg_error_t send_option( const AssuanClientContext & ctx, const char * name, const QVariant & value ) {
-     if ( value.isValid() )
-         return my_assuan_transact( ctx, QString().sprintf( "OPTION %s=%s", name, value.toString().toUtf8().constData() ).toUtf8().constData() );
-     else
-         return my_assuan_transact( ctx, QString().sprintf( "OPTION %s", name ).toUtf8().constData() );
- }
- 
--static assuan_error_t send_file( const AssuanClientContext & ctx, const QString & file ) {
-+static gpg_error_t send_file( const AssuanClientContext & ctx, const QString & file ) {
-     return my_assuan_transact( ctx, QString().sprintf( "FILE %s", hexencode( QFile::encodeName( file ) ).constData() ).toUtf8().constData() );
- }
- 
-@@ -373,21 +373,32 @@
- 
-     out.canceled = false;
- 
--    assuan_error_t err = 0;
-+    if ( out.serverLocation.isEmpty() )
-+        out.serverLocation = default_socket_name();
- 
--    assuan_context_t naked_ctx = 0;
-     AssuanClientContext ctx;
-+    gpg_error_t err = 0;
- 
--    if ( out.serverLocation.isEmpty() )
--        out.serverLocation = default_socket_name();
--
-     const QString socketName = out.serverLocation;
-     if ( socketName.isEmpty() ) {
-         out.errorString = tr("Invalid socket name!");
-         goto leave;
-     }
- 
--    err = assuan_socket_connect( &naked_ctx, QFile::encodeName( socketName ).constData(), -1 );
-+    {
-+        assuan_context_t naked_ctx = 0;
-+        err = assuan_new( &naked_ctx );
-+        if ( err ) {
-+            out.errorString = tr( "Could not allocate resources to connect to Kleopatra UI server at %1: %2" )
-+                .arg( socketName, to_error_string( err ) );
-+            goto leave;
-+        }
-+
-+        ctx.reset( naked_ctx );
-+    }
-+
-+
-+    err = assuan_socket_connect( ctx.get(), QFile::encodeName( socketName ).constData(), -1, 0 );
-     if ( err ) {
-         qDebug( "UI server not running, starting it" );
-         
-@@ -400,7 +411,7 @@
-         // give it a bit of time to start up and try a couple of times
-         for ( int i = 0 ; err && i < 20 ; ++i ) {
-             msleep( 500 );
--            err = assuan_socket_connect( &naked_ctx, QFile::encodeName( socketName ).constData(), -1 );
-+            err = assuan_socket_connect( ctx.get(), QFile::encodeName( socketName ).constData(), -1, 0 );
-         }
-     }
- 
-@@ -410,9 +421,6 @@
-         goto leave;
-     }
- 
--    ctx.reset( naked_ctx );
--    naked_ctx = 0;
--
-     out.serverPid = -1;
-     err = my_assuan_transact( ctx, "GETINFO pid", &getinfo_pid_cb, &out.serverPid );
-     if ( err || out.serverPid <= 0 ) {
-Index: kleopatra/libkleopatraclient/core/initialization.cpp
-===================================================================
---- kleopatra/libkleopatraclient/core/initialization.cpp       (revision 1078527)
-+++ kleopatra/libkleopatraclient/core/initialization.cpp       (revision 1078528)
-@@ -29,7 +29,7 @@
- using namespace KLEOPATRACLIENT_NAMESPACE;
- 
- Initialization::Initialization() {
--    assuan_set_assuan_err_source( GPG_ERR_SOURCE_DEFAULT );
-+    assuan_set_gpg_err_source( GPG_ERR_SOURCE_DEFAULT );
- }
- 
- Initialization::~Initialization() {
-Index: kleopatra/libkleopatraclient/core/CMakeLists.txt
-===================================================================
---- kleopatra/libkleopatraclient/core/CMakeLists.txt   (revision 1078527)
-+++ kleopatra/libkleopatraclient/core/CMakeLists.txt   (revision 1078528)
-@@ -1,4 +1,4 @@
--include_directories( ${ASSUAN_INCLUDES} ${CMAKE_SOURCE_DIR}/kleopatra )
-+include_directories( ${ASSUAN2_INCLUDES} ${CMAKE_SOURCE_DIR}/kleopatra )
- 
- add_definitions( -D_ASSUAN_ONLY_GPG_ERRORS -DQT_NO_CAST_FROM_ASCII -DQT_NO_KEYWORDS -DQT_NO_CAST_TO_ASCII )
- 
-@@ -27,9 +27,9 @@
- 
- 
- if ( WIN32 )
--  target_link_libraries( kleopatraclientcore ${QT_QTCORE_LIBRARY} ${ASSUAN_VANILLA_LIBRARIES} ws2_32 )
-+  target_link_libraries( kleopatraclientcore ${QT_QTCORE_LIBRARY} ${ASSUAN2_LIBRARIES} ws2_32 )
- else ( WIN32 )
--  target_link_libraries( kleopatraclientcore ${QT_QTCORE_LIBRARY} ${ASSUAN_PTHREAD_LIBRARIES} )
-+  target_link_libraries( kleopatraclientcore ${QT_QTCORE_LIBRARY} ${ASSUAN2_LIBRARIES} )
- endif ( WIN32 )
- 
- install(
index b3b45471305715eff81bafab3f13816b3c436881..310d580c9b45bd18ac498d5775dedbcf4fd17025 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2010 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kleopatra/kleopatra-4.4.5.ebuild,v 1.1 2010/06/30 15:37:02 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kleopatra/kleopatra-4.4.5.ebuild,v 1.2 2010/07/04 14:26:33 scarabeus Exp $
 
 EAPI="3"
 
@@ -11,6 +11,8 @@ DESCRIPTION="Kleopatra - KDE X.509 key manager"
 KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
 IUSE="debug +handbook"
 
+SRC_URI="${SRC_URI} http://dev.gentooexperimental.org/~scarabeus/kleopatra-4.4.3-assuan2.patch.bz2"
+
 DEPEND="
        app-crypt/gpgme
        >=dev-libs/libassuan-2.0.0
@@ -28,10 +30,6 @@ KMEXTRACTONLY="
 "
 KMLOADLIBS="libkleo"
 
-PATCHES=(
-       "${FILESDIR}/${PN}-4.4.3-assuan2.patch"
-)
-
 src_unpack() {
        if use handbook; then
                KMEXTRA="
@@ -42,6 +40,11 @@ src_unpack() {
        kde4-meta_src_unpack
 }
 
+src_prepare() {
+       kde4-meta_src_prepare
+       epatch "${DISTDIR}/${PN}-4.4.3-assuan2.patch.bz2"
+}
+
 src_configure() {
        mycmakeargs=(
                -DWITH_QGPGME=ON