Add back missing thread function check.
[shibboleth/cpp-xmltooling.git] / configure.ac
index 568a529..3a715d5 100644 (file)
@@ -32,6 +32,7 @@ fi
 
 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,
@@ -43,6 +44,15 @@ if test "$GCC" = "yes" ; then
 #        ])
     CFLAGS="$GCC_CFLAGS"
     CXXFLAGS="$GCC_CXXFLAGS"
+else
+# Fix for Sun Workshop compiler in debug mode, may be Sun case #6360993
+       case "${host_cpu}-${host_os}" in
+               *solaris*)
+                       if test "$CXX" = "CC" ; then
+                               CXXFLAGS="$CXXFLAGS -Qoption ccfe -stabs=no%dfltlit+no%dflthlp"
+                       fi
+               ;;
+       esac
 fi
 
 AC_DISABLE_STATIC
@@ -69,6 +79,8 @@ else
     CXXFLAGS="$PTHREAD_CFLAGS $CXXFLAGS"
 fi
 
+AC_CHECK_FUNCS([pthread_rwlock_init])
+
 # OpenSSL settings
 AC_ARG_WITH(openssl,
     AC_HELP_STRING([--with-openssl=PATH], [where openssl is installed]),
@@ -209,13 +221,13 @@ if test x_$with_xmlsec != x_no; then
     AC_MSG_CHECKING([XML-Security version])
     AC_PREPROC_IFELSE(
            [AC_LANG_PROGRAM([#include <xsec/utils/XSECPlatformUtils.hpp>],
-        [#if XSEC_VERSION_MAJOR > 1 || XSEC_VERSION_MEDIUM >2 
+        [#if XSEC_VERSION_MAJOR > 1 || (XSEC_VERSION_MAJOR == 1 && XSEC_VERSION_MEDIUM > 3) || (XSEC_VERSION_MAJOR == 1 && XSEC_VERSION_MEDIUM == 3 && XSEC_VERSION_MINOR > 0)
 int i = 0;
 #else
-#error need version 1.3 or later
+#error need version 1.3.1 or later
 #endif])],
         [AC_MSG_RESULT(OK)],
-        [AC_MSG_FAILURE([XML-Security version 1.3 or greater is required.])])
+        [AC_MSG_FAILURE([XML-Security version 1.3.1 or greater is required.])])
     AC_TRY_LINK(
             [#include <xsec/utils/XSECPlatformUtils.hpp>],
             [XSECPlatformUtils::Initialise()],,