summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichele Calgaro <[email protected]>2016-03-16 11:32:41 +0100
committerMichele Calgaro <[email protected]>2016-03-16 11:32:41 +0100
commitd8f34393595f0ce73586f89ab63e62aa11199493 (patch)
tree3f6f686378ab6a9c3e21f0adcc0ad375168bf1bd
parent5fb3200dbf531059c194b96ec2cea8376ca941df (diff)
downloadkerberostray-d8f34393595f0ce73586f89ab63e62aa11199493.tar.gz
kerberostray-d8f34393595f0ce73586f89ab63e62aa11199493.zip
Fix krb5 library detection. This resolves FTBFS with heimdal-krb5.
Based on similar patch for libraries/libtdeldap from Slavek Banko. Signed-off-by: Michele Calgaro <[email protected]>
-rw-r--r--configure.in.in37
-rw-r--r--src/Makefile.am4
2 files changed, 39 insertions, 2 deletions
diff --git a/configure.in.in b/configure.in.in
index 18b1486..03cae23 100644
--- a/configure.in.in
+++ b/configure.in.in
@@ -4,3 +4,40 @@ AM_INIT_AUTOMAKE(autostart, 0.1)
AC_C_BIGENDIAN
AC_CHECK_KDEMAXPATHLEN
+
+PKG_CHECK_MODULES(KRB5, krb5, have_krb5=yes, have_krb5=no)
+if test "x$have_krb5" = "xno"; then
+ # Try to find krb5 without pkg-config file
+ AC_MSG_CHECKING(krb5)
+ AC_FIND_FILE(krb5.h, [\
+ /usr/local/include/heimdal /usr/local/include \
+ /usr/include/heimdal /usr/include \
+ ], krb5_includes)
+ if test "x$krb5_includes" != "xNO"; then
+ krb5_multiarch="`gcc -print-multiarch 2>/dev/null`"
+ AC_FIND_FILE(libkrb5.so, [\
+ /usr/local/lib/$krb5_multiarch/heimdal /usr/local/lib64/heimdal /usr/local/lib/heimdal \
+ /usr/local/lib/$krb5_multiarch /usr/local/lib64 /usr/local/lib \
+ /usr/lib/$krb5_multiarch/heimdal /usr/lib64/heimdal /usr/lib/heimdal \
+ /usr/lib/$krb5_multiarch /usr/lib64 /usr/lib \
+ ], krb5_libs)
+ if test "x$krb5_libs" != "xNO"; then
+ AC_MSG_RESULT([libraries $krb5_libs, headers $krb5_includes])
+ CPPFLAGS="$CPPFLAGS -I$krb5_includes"
+ CFLAGS="$CFLAGS -I$krb5_includes"
+ LDFLAGS="$LDFLAGS -L$krb5_libs"
+ AC_CHECK_HEADER(krb5.h, have_krb5=yes)
+ fi
+ fi
+ if test "x$have_krb5" != "xno"; then
+ KRB5_CFLAGS="-I$krb5_includes"
+ KRB5_LIBS="-L$krb5_libs -lkrb5"
+ AC_SUBST(KRB5_CFLAGS)
+ AC_SUBST(KRB5_LIBS)
+ else
+ AC_MSG_RESULT(no)
+ fi
+fi
+if test "x$have_krb5" = "xno"; then
+ AC_MSG_ERROR([krb5 library is needed but not found on our system])
+fi
diff --git a/src/Makefile.am b/src/Makefile.am
index 3503e97..6009d77 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,11 +1,11 @@
-INCLUDES= $(all_includes) $(KDE_INCLUDES)/tde
+INCLUDES= $(all_includes) $(KDE_INCLUDES)/tde $(KRB5_CFLAGS)
bin_PROGRAMS = kerberostray
kerberostray_SOURCES = main.cpp toplevel.cpp configdlgbase.ui configdlg.cpp
kerberostray_METASOURCES = AUTO
-kerberostray_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_TDEIO) -ltdetexteditor -ltdeldap
+kerberostray_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx $(LIB_TDEIO) -ltdetexteditor -ltdeldap $(KRB5_LIBS)
# LIB_TDEIO needed for KNotifyDialog
kerberostray_LDADD = $(LIB_TDEUI) $(LIB_TDEIO)