X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-sp.git;a=blobdiff_plain;f=configure.ac;h=d9b563e9e0c17df78acfaccb3ad1b8cb939c3ab2;hp=21895eff667d3e65f5b1fd5659c815da2556d3d3;hb=HEAD;hpb=f3089d3571639e7677a6f3e17b37283c8d5e8731 diff --git a/configure.ac b/configure.ac index 21895ef..d9b563e 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.50]) -AC_INIT([shibboleth],[2.5.1],[https://issues.shibboleth.net/],[shibboleth-sp]) +AC_INIT([shibboleth],[2.5.6],[https://issues.shibboleth.net/],[shibboleth-sp]) AC_CONFIG_SRCDIR(shibsp) AC_CONFIG_AUX_DIR(build-aux) AC_CONFIG_MACRO_DIR(m4) @@ -77,10 +77,22 @@ AC_FUNC_STRFTIME AC_FUNC_STRERROR_R AC_CHECK_HEADERS([sys/utsname.h grp.h pwd.h]) AC_CHECK_HEADERS([sys/socket.h], [AC_DEFINE([SHIBSP_HAVE_SYS_SOCKET_H],[1],[Define to 1 if you have the header file.])], []) -AC_CHECK_FUNCS([strchr strdup strstr timegm gmtime_r localtime_r strtok_r strcasecmp getpwnam getgrnam]) +AC_CHECK_FUNCS([strchr strdup strstr timegm gmtime_r localtime_r strtok_r strcasecmp getpwnam getgrnam initgroups]) AC_CHECK_TYPES([struct sockaddr_storage], [], [], [[#include ]]) AC_CHECK_MEMBERS([struct sockaddr.sa_len], [], [], [[#include ]]) +AC_CACHE_CHECK([for SOCK_CLOEXEC support], [shib_cv_sock_cloexec], +[AC_TRY_RUN([ +#include +#include +int main() +{ +return socket(AF_INET, SOCK_STREAM|SOCK_CLOEXEC, 0) == -1; +}], [shib_cv_sock_cloexec=yes], [shib_cv_sock_cloexec=no], [shib_cv_sock_cloexec=no])]) + +if test "$shib_cv_sock_cloexec" = "yes"; then + AC_DEFINE([HAVE_SOCK_CLOEXEC], 1, [Define if the SOCK_CLOEXEC flag is supported]) +fi # checks for pthreads ACX_PTHREAD([enable_threads="pthread"],[enable_threads="no"]) @@ -127,7 +139,7 @@ AC_CXX_REQUIRE_STL BOOST_REQUIRE BOOST_BIND BOOST_LAMBDA -BOOST_PTR_CONTAINER +BOOST_POINTER_CONTAINER BOOST_SMART_PTR BOOST_STRING_ALGO BOOST_TUPLE @@ -346,7 +358,7 @@ AC_SUBST(XMLTOOLINGXMLDIR) AC_ARG_WITH(saml, AS_HELP_STRING([--with-saml=PATH],[where opensaml is installed]),, [with_saml=/usr]) -if test x_$with_xmltooling != x_/usr; then +if test x_$with_saml != x_/usr; then CPPFLAGS="-I${with_saml}/include $CPPFLAGS" DX_INCLUDE="$DX_INCLUDE ${with_saml}/include" XMLSEC_LIBS="-L${with_saml}/lib -lsaml $XMLSEC_LIBS" @@ -418,6 +430,31 @@ else WANT_SUBDIRS="$WANT_SUBDIRS adfs" fi +## systemd +dnl Systemd will be disabled by default and requires you to run configure with +dnl --enable-systemd to look for and enable systemd. +AC_ARG_ENABLE(systemd, + AS_HELP_STRING([--enable-systemd],[Build with systemd (Default = no)]), + [if test "x$enableval" = "x" ; then + WANT_SYSTEMD=no + else + WANT_SYSTEMD="$enableval" + fi + ],[ WANT_SYSTEMD=no ]) +AC_MSG_CHECKING(whether to build with systemd) + +AC_MSG_RESULT($WANT_SYSTEMD) +if test "$WANT_SYSTEMD" = "yes" ; then + AC_CHECK_HEADER([systemd/sd-daemon.h], [ + AC_CHECK_LIB([systemd-daemon], [sd_notify], [hassdnotify="y"])]) + AS_IF([test "x$hassdnotify=" = x], [ + AC_MSG_ERROR([Unable to find a suitable libsystemd-daemon library]) + ]) + AC_DEFINE([HAVE_SD_NOTIFY],[1],[Define to 1 if you have the sd_notify function.]) + PKG_CHECK_MODULES([SYSTEMD], [libsystemd-daemon]) + AC_SUBST([SYSTEMD_CFLAGS]) + AC_SUBST([SYSTEMD_LIBS]) +fi # # Build NSAPI module? @@ -473,14 +510,23 @@ AC_ARG_WITH(fastcgi, AC_MSG_RESULT($WANT_FASTCGI) if test "$WANT_FASTCGI" != "no"; then + if test "$WANT_FASTCGI" != "yes"; then if test x_$WANT_FASTCGI != x_/usr; then FASTCGI_INCLUDE="-I$WANT_FASTCGI/include" FASTCGI_LDFLAGS="-L$WANT_FASTCGI/lib" fi fi + + # save and append master flags + save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$FASTCGI_INCLUDE $CPPFLAGS" + AC_CHECK_HEADER([fcgio.h],,AC_MSG_ERROR([unable to find FastCGI header files])) FASTCGI_LIBS="-lfcgi -lfcgi++" + + # restore standard flags + CPPFLAGS="$save_CPPFLAGS" fi AC_SUBST(FASTCGI_INCLUDE) @@ -505,18 +551,27 @@ AC_ARG_WITH(memcached, AC_MSG_RESULT($WANT_MEMCACHED) if test "$WANT_MEMCACHED" != "no"; then + if test "$WANT_MEMCACHED" != "yes"; then if test x_$WANT_MEMCACHED != x_/usr; then MEMCACHED_INCLUDE="-I$WANT_MEMCACHED/include" MEMCACHED_LDFLAGS="-L$WANT_MEMCACHED/lib" fi fi + + # save and append master flags + save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$MEMCACHED_INCLUDE $CPPFLAGS" + AC_CHECK_HEADER([libmemcached/memcached.h],, AC_MSG_ERROR([unable to find Memcached header files])) AC_CHECK_DECL([memcached_last_error_message], [AC_DEFINE([HAVE_MEMCACHED_LAST_ERROR_MESSAGE],[1],[Define to 1 if libmemcached supports error handling function.])],, [#include ]) MEMCACHED_LIBS="-lmemcached" + + # restore standard flags + CPPFLAGS="$save_CPPFLAGS" fi AC_SUBST(MEMCACHED_INCLUDE)