Following Daniel's suggestions in previous thread, attached is another iteration of the patch that removes the need for NLS to be enabled for KWallet support to be built.
Besides removing the NLS check from kwallet.m4 as the previous patch did, this one also reorders the includes in kwallet.cpp so that the private Subversion includes come after the system/KDE ones. The same has been done to the GNOME Keyring code, as well as another file. In most of the cases, svn_private_config.h is already one of the last files to be included, and I felt it was too dangerous to change the cases where it was included before some feature checks or apr includes.
Index: build/ac-macros/kwallet.m4 =================================================================== --- build/ac-macros/kwallet.m4 (revision 1385138) +++ build/ac-macros/kwallet.m4 (working copy) @@ -35,7 +35,6 @@ AC_MSG_RESULT([yes]) if test "$svn_enable_shared" = "yes"; then if test "$APR_HAS_DSO" = "yes"; then - if test "$USE_NLS" = "yes"; then if test -n "$PKG_CONFIG"; then if test "$HAVE_DBUS" = "yes"; then AC_MSG_CHECKING([for QtCore, QtDBus, QtGui]) @@ -101,9 +100,6 @@ AC_MSG_ERROR([cannot find pkg-config]) fi else - AC_MSG_ERROR([missing support for internationalization]) - fi - else AC_MSG_ERROR([APR does not have support for DSOs]) fi else Index: subversion/libsvn_auth_gnome_keyring/gnome_keyring.c =================================================================== --- subversion/libsvn_auth_gnome_keyring/gnome_keyring.c (revision 1385138) +++ subversion/libsvn_auth_gnome_keyring/gnome_keyring.c (working copy) @@ -28,6 +28,9 @@ /*** Includes. ***/ #include <apr_pools.h> +#include <glib.h> +#include <gnome-keyring.h> + #include "svn_auth.h" #include "svn_config.h" #include "svn_error.h" @@ -37,10 +40,7 @@ #include "svn_private_config.h" -#include <glib.h> -#include <gnome-keyring.h> - /*-----------------------------------------------------------------------*/ /* GNOME Keyring simple provider, puts passwords in GNOME Keyring */ /*-----------------------------------------------------------------------*/ Index: subversion/libsvn_auth_kwallet/kwallet.cpp =================================================================== --- subversion/libsvn_auth_kwallet/kwallet.cpp (revision 1385138) +++ subversion/libsvn_auth_kwallet/kwallet.cpp (working copy) @@ -33,6 +33,17 @@ #include <apr_pools.h> #include <apr_strings.h> + +#include <dbus/dbus.h> +#include <QtCore/QCoreApplication> +#include <QtCore/QString> + +#include <kaboutdata.h> +#include <kcmdlineargs.h> +#include <kcomponentdata.h> +#include <klocalizedstring.h> +#include <kwallet.h> + #include "svn_auth.h" #include "svn_config.h" #include "svn_error.h" @@ -45,17 +56,7 @@ #include "svn_private_config.h" -#include <dbus/dbus.h> -#include <QtCore/QCoreApplication> -#include <QtCore/QString> -#include <kaboutdata.h> -#include <kcmdlineargs.h> -#include <kcomponentdata.h> -#include <klocalizedstring.h> -#include <kwallet.h> - - /*-----------------------------------------------------------------------*/ /* KWallet simple provider, puts passwords in KWallet */ /*-----------------------------------------------------------------------*/ Index: subversion/libsvn_subr/stream.c =================================================================== --- subversion/libsvn_subr/stream.c (revision 1385138) +++ subversion/libsvn_subr/stream.c (working copy) @@ -21,8 +21,6 @@ * ==================================================================== */ -#include "svn_private_config.h" - #include <assert.h> #include <stdio.h> @@ -42,6 +40,7 @@ #include "svn_utf.h" #include "svn_checksum.h" #include "svn_path.h" +#include "svn_private_config.h" #include "private/svn_error_private.h" #include "private/svn_eol_private.h" #include "private/svn_io_private.h"