dnl =================================================================== dnl Licensed to the Apache Software Foundation (ASF) under one dnl or more contributor license agreements. See the NOTICE file dnl distributed with this work for additional information dnl regarding copyright ownership. The ASF licenses this file dnl to you under the Apache License, Version 2.0 (the dnl "License"); you may not use this file except in compliance dnl with the License. You may obtain a copy of the License at dnl dnl http://www.apache.org/licenses/LICENSE-2.0 dnl dnl Unless required by applicable law or agreed to in writing, dnl software distributed under the License is distributed on an dnl "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY dnl KIND, either express or implied. See the License for the dnl specific language governing permissions and limitations dnl under the License. dnl =================================================================== dnl dnl SVN_LIB_KWALLET dnl dnl Check configure options and assign variables related to KWallet support dnl AC_DEFUN(SVN_LIB_KWALLET, [ AC_ARG_WITH(kwallet, [AS_HELP_STRING([[--with-kwallet[=PATH]]], [Enable use of KWallet (KDE 4) for auth credentials])], [svn_lib_kwallet="$withval"], [svn_lib_kwallet=no]) AC_MSG_CHECKING([whether to look for KWallet]) if test "$svn_lib_kwallet" != "no"; then 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]) if $PKG_CONFIG --exists QtCore QtDBus QtGui; then AC_MSG_RESULT([yes]) if test "$svn_lib_kwallet" != "yes"; then AC_MSG_CHECKING([for kde4-config]) KDE4_CONFIG="$svn_lib_kwallet/bin/kde4-config" if test -f "$KDE4_CONFIG" && test -x "$KDE4_CONFIG"; then AC_MSG_RESULT([yes]) else KDE4_CONFIG="" AC_MSG_RESULT([no]) fi else AC_PATH_PROG(KDE4_CONFIG, kde4-config) fi if test -n "$KDE4_CONFIG"; then AC_MSG_CHECKING([for KWallet]) old_CXXFLAGS="$CXXFLAGS" old_LDFLAGS="$LDFLAGS" old_LIBS="$LIBS" for d in [`$PKG_CONFIG --cflags QtCore QtDBus QtGui`]; do if test -n ["`echo "$d" | $EGREP -- '^-D[^[:space:]]*'`"]; then CPPFLAGS="$CPPFLAGS $d" fi done qt_include_dirs="`$PKG_CONFIG --cflags-only-I QtCore QtDBus QtGui`" kde_dir="`$KDE4_CONFIG --prefix`" SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs -I$kde_dir/include" qt_libs_other_options="`$PKG_CONFIG --libs-only-other QtCore QtDBus QtGui`" SVN_KWALLET_LIBS="$DBUS_LIBS -lQtCore -lQtDBus -lQtGui -lkdecore -lkdeui $qt_libs_other_options" CXXFLAGS="$CXXFLAGS $SVN_KWALLET_INCLUDES" LIBS="$LIBS $SVN_KWALLET_LIBS" qt_lib_dirs="`$PKG_CONFIG --libs-only-L QtCore QtDBus QtGui`" kde_lib_suffix="`$KDE4_CONFIG --libsuffix`" LDFLAGS="$old_LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS($qt_lib_dirs -L$kde_dir/lib$kde_lib_suffix)`" AC_LANG(C++) AC_LINK_IFELSE([ #include int main() {KWallet::Wallet::walletList();}], svn_lib_kwallet="yes", svn_lib_kwallet="no") AC_LANG(C) if test "$svn_lib_kwallet" = "yes"; then AC_MSG_RESULT([yes]) CXXFLAGS="$old_CXXFLAGS" LIBS="$old_LIBS" else AC_MSG_RESULT([no]) AC_MSG_ERROR([cannot find KWallet]) fi else AC_MSG_ERROR([cannot find kde4-config]) fi else AC_MSG_RESULT([no]) AC_MSG_ERROR([cannot find QtCore, QtDBus, QtGui]) fi else AC_MSG_ERROR([cannot find D-Bus]) fi else 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 AC_MSG_ERROR([--with-kwallet conflicts with --disable-shared]) fi else AC_MSG_RESULT([no]) fi AC_SUBST(SVN_KWALLET_INCLUDES) AC_SUBST(SVN_KWALLET_LIBS) ])