1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
AC_PREREQ([2.50])
AC_INIT([shibboleth-resolver], [3.1.0], [MOONSHOT-COMMUNITY@JISCMAIL.AC.UK], [shibboleth-resolver])
AC_CONFIG_SRCDIR(src)
AC_CONFIG_AUX_DIR(build-aux)
AC_CONFIG_MACRO_DIR(m4)
AM_INIT_AUTOMAKE
AC_DISABLE_STATIC
AC_PROG_LIBTOOL
PKG_INSTALLDIR
AC_ARG_ENABLE(debug,
AS_HELP_STRING([--enable-debug],[Have GCC compile with symbols (Default = no)]),
enable_debug=$enableval, enable_debug=no)
if test "$enable_debug" = "yes" ; then
GCC_CFLAGS="$CFLAGS -g -D_DEBUG"
GCC_CXXFLAGS="$CXXFLAGS -g -D_DEBUG"
else
GCC_CFLAGS="$CFLAGS -O2 -DNDEBUG"
GCC_CXXFLAGS="$CXXFLAGS -O2 -DNDEBUG"
fi
AC_CONFIG_HEADERS([config.h src/shibresolver/config_pub.h])
AC_CONFIG_FILES([resolver.spec shibresolver.pc shibresolver-lite.pc])
AC_CONFIG_FILES([Makefile doc/Makefile src/Makefile])
AC_PROG_CC([gcc gcc3 cc])
AC_PROG_CXX([g++ g++3 c++ CC])
AC_CANONICAL_HOST
if test "$GCC" = "yes" ; then
# AC_HAVE_GCC_VERSION(4,0,0,0,
# [
# AC_DEFINE(GCC_HASCLASSVISIBILITY,1,
# [Define to enable class visibility control in gcc.])
# GCC_CFLAGS="$GCC_CFLAGS -fvisibility=hidden -fvisibility-inlines-hidden"
# GCC_CXXFLAGS="$GCC_CXXFLAGS -fvisibility=hidden -fvisibility-inlines-hidden"
# ])
CFLAGS="-Wall $GCC_CFLAGS"
CXXFLAGS="-Wall $GCC_CXXFLAGS"
fi
# Fix for Sun Workshop compiler in debug mode, may be Sun case #6360993
# Also enables POSIX semantics for some functions.
case "${host_cpu}-${host_os}" in
*solaris*)
CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS"
CXXFLAGS="$CXXFLAGS -D_POSIX_PTHREAD_SEMANTICS"
if test "$CXX" = "CC" ; then
CXXFLAGS="$CXXFLAGS -Qoption ccfe -stabs=no%dfltlit+no%dflthlp"
fi
;;
esac
AC_LANG(C)
# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_TYPE_SIZE_T
AC_STRUCT_TM
# Checks for library functions.
AC_CHECK_FUNCS([strcasecmp])
AX_PTHREAD(,[AC_MSG_ERROR([unable to find pthreads, currently this is required])])
AC_LANG(C++)
# C++ requirements
AC_CXX_NAMESPACES
AC_CXX_REQUIRE_STL
AX_PKG_CHECK_MODULES([log4shib],,[log4shib],
[AC_DEFINE([SHIBRESOLVER_LOG4SHIB],[1],[Define to 1 if log4shib library is used.])],
[AX_PKG_CHECK_MODULES([log4cpp],,[log4cpp],
[AC_DEFINE([SHIBRESOLVER_LOG4CPP],[1],[Define to 1 if log4cpp library is used.])],,
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])],,
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([xerces],,[xerces-c >= 3.2],,,
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([xmlsec],,[xml-security-c >= 2],,,
[SHIBRESOLVER_REQUIRES],[SHIBRESOLVER_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([xmltooling],,[xmltooling >= 3],,,
[SHIBRESOLVER_REQUIRES],[SHIBRESOLVER_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([xmltooling_lite],,[xmltooling-lite >= 3],,,
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([opensaml],,[opensaml >= 3],,,
[SHIBRESOLVER_REQUIRES],[SHIBRESOLVER_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([shibsp],,[shibsp >= 3],,,
[SHIBRESOLVER_REQUIRES],[SHIBRESOLVER_REQUIRES_PRIVATE])
AX_PKG_CHECK_MODULES([shibsp_lite],,[shibsp-lite >= 3],,,
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])
AC_ARG_WITH([gssapi],
[AS_HELP_STRING([--with-gssapi],[include GSSAPI support])],,[with_gssapi=check])
AS_IF([test "x$with_gssapi" != xno],
[AX_PKG_CHECK_MODULES([gss],,[krb5-gssapi],
[PKG_CHECK_VAR([GSS_VENDOR],[krb5-gssapi],[vendor])
AS_CASE(["$GSS_VENDOR"],
[Heimdal],[AC_DEFINE([SHIBRESOLVER_HAVE_GSSHEIMDAL],[1],[if you have the Heimdal gssapi libraries])],
[MIT],[AC_DEFINE([SHIBRESOLVER_HAVE_GSSMIT],[1],[if you have the MIT gssapi libraries])])],
[AX_PKG_CHECK_MODULES([gnu_gss],,[gss],
[AC_DEFINE([SHIBRESOLVER_HAVE_GSSGNU],[1],[if you have the GNU gssapi libraries])],
[with_gssapi=no],
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])],
[SHIBRESOLVER_LITE_REQUIRES],[SHIBRESOLVER_LITE_REQUIRES_PRIVATE])
AS_IF([test "x$with_gssapi" != xno],
[AC_DEFINE([SHIBRESOLVER_HAVE_GSSAPI],[1],[if you have the gssapi libraries])
AX_SAVE_FLAGS
CXXFLAGS="$gss_CFLAGS $gnu_gss_CFLAGS $CXXFLAGS"
LIBS="$gss_LIBS $gnu_gss_LIBS $LIBS"
AC_CHECK_DECLS([gss_get_name_attribute,GSS_C_NT_EXPORT_NAME_COMPOSITE],,,[[
#ifdef SHIBRESOLVER_HAVE_GSSGNU
# include <gss.h>
#elif defined SHIBRESOLVER_HAVE_GSSMIT
# include <gssapi/gssapi.h>
# include <gssapi/gssapi_ext.h>
#else
# include <gssapi.h>
#endif
]])
AX_RESTORE_FLAGS
])
])
AS_IF([test "x$ac_cv_have_decl_gss_get_name_attribute" = xyes],
[AC_DEFINE([SHIBRESOLVER_HAVE_GSSAPI_NAMINGEXTS],[1],[Define to 1 if GSS-API naming extensions are available.])])
AC_OUTPUT
|