X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=configure.ac;h=7af6f4c413587510c26ea6be2e3085cdbd53edbd;hb=420effca96f38dfa5f2a6549679a5d455a3945a7;hp=2a6b6c6163545a02f1fac45d8834248453fa5601;hpb=c64085f883742755ece9e487a0ada71f692c27c0;p=shibboleth%2Fcpp-xmltooling.git diff --git a/configure.ac b/configure.ac index 2a6b6c6..7af6f4c 100644 --- a/configure.ac +++ b/configure.ac @@ -90,10 +90,23 @@ AC_CXX_REQUIRE_STL AC_CXX_NAMESPACES # are covariant methods allowed? -AC_TRY_LINK( - [ class base { public: virtual base *GetPtr( void ) { return this; } }; ], - [ class derived: virtual public base { public: virtual derived *GetPtr( void ) { return this; } }; ], - [AC_DEFINE([HAVE_COVARIANT_RETURNS], [1], [Define to 1 if C++ compiler supports covariant virtual methods.])]) +AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[]], + [[ + class base { public: virtual base *GetPtr( void ) { return this; } }; + class derived: virtual public base { public: virtual derived *GetPtr( void ) { return this; } }; + ]])], + [AC_DEFINE([HAVE_COVARIANT_RETURNS], [1], [Define to 1 if C++ compiler supports covariant virtual methods.])] + ) + +# is nullptr supported? +AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[]], + [[ + const char* ptr = nullptr; + ]])], + [AC_DEFINE([HAVE_NULLPTR], [1], [Define to 1 if C++ compiler supports nullptr keyword.])] + ) # log4shib settings (favor this version over the log4cpp code) AC_PATH_PROG(LOG4SHIB_CONFIG,log4shib-config) @@ -210,6 +223,16 @@ AC_TRY_COMPILE([#include ], [AC_DEFINE([XMLTOOLING_XERCESC_BOOLSETIDATTRIBUTE], [1], [Define to 1 if Xerces DOM ID methods take extra parameter.])], [AC_MSG_RESULT([no])]) +AC_MSG_CHECKING([whether Xerces XMLString::release(XMLByte**) exists]) +AC_TRY_COMPILE([#include ], + [using namespace XERCES_CPP_NAMESPACE; + XMLByte* buf=NULL; + XMLString::release(&buf); + ], + [AC_MSG_RESULT([yes])] + [AC_DEFINE([XMLTOOLING_XERCESC_HAS_XMLBYTE_RELEASE], [1], [Define to 1 if Xerces XMLString includes XMLByte release.])], + [AC_MSG_RESULT([no])]) + # XML-Security settings AC_ARG_WITH(xmlsec, AC_HELP_STRING([--with-xmlsec=PATH], [where xmlsec is installed]),, @@ -261,6 +284,10 @@ if test x_$with_xmlsec != x_no; then AC_MSG_ERROR([unable to link with openssl libraries])) AC_MSG_RESULT(yes) + AC_CHECK_DECL(EVP_sha512, + [AC_DEFINE(XMLTOOLING_OPENSSL_HAVE_SHA2)], + ,[#include ]) + # restore master libs LIBS="$save_LIBS" @@ -305,6 +332,20 @@ int i = 0; [AC_DEFINE([XMLTOOLING_XMLSEC_SIGALGORITHM], [1], [Define to 1 if XML-Security-C exposes the signature algorithm URI.])], [AC_MSG_RESULT([no])]) + AC_MSG_CHECKING([whether XML-Security-C includes ECC support]) + AC_TRY_COMPILE([#include ], + [DSIGKeyInfoValue* info; info->getECNamedCurve();], + [AC_MSG_RESULT([yes])] + [AC_DEFINE([XMLTOOLING_XMLSEC_ECC], [1], [Define to 1 if XML-Security-C includes ECC support.])], + [AC_MSG_RESULT([no])]) + + AC_MSG_CHECKING([whether XML-Security-C includes debug logging support]) + AC_TRY_COMPILE([#include ], + [XSECPlatformUtils::SetReferenceLoggingSink(NULL)], + [AC_MSG_RESULT([yes])] + [AC_DEFINE([XMLTOOLING_XMLSEC_DEBUGLOGGING], [1], [Define to 1 if XML-Security-C includes debug logging support.])], + [AC_MSG_RESULT([no])]) + # restore master libs LIBS="$save_LIBS"