diff options
author | Joe Shaw <joe@ximian.com> | 2003-03-10 22:44:02 +0000 |
---|---|---|
committer | Joe Shaw <joeshaw@src.gnome.org> | 2003-03-10 22:44:02 +0000 |
commit | 398e960b9bbd1706cdbe0b7d245f1528cc6776ee (patch) | |
tree | 3956f6d10b44da24f32d2f4a90260e02b4fc272f /configure.in | |
parent | ef95ef0d58ba833655cf08ae2201d487a96777fb (diff) | |
download | libsoup-398e960b9bbd1706cdbe0b7d245f1528cc6776ee.tar.gz |
Add support for GnuTLS. Patch from Ian Peters.
2003-03-10 Joe Shaw <joe@ximian.com>
* configure.in, libsoup/Makefile.am, libsoup/soup.gnutls.[ch],
libsoup/soup-ssl.c: Add support for GnuTLS. Patch from Ian
Peters.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 137 |
1 files changed, 95 insertions, 42 deletions
diff --git a/configure.in b/configure.in index 5b4d76a1..a8a65c0b 100644 --- a/configure.in +++ b/configure.in @@ -173,9 +173,9 @@ yes) ;; esac -dnl **************************************************** -dnl *** SSL Library checks (Mozilla NSS, or OpenSSL) *** -dnl **************************************************** +dnl ************************************************************ +dnl *** SSL Library checks (GnuTLS, Mozilla NSS, or OpenSSL) *** +dnl ************************************************************ AC_ARG_ENABLE(ssl, [ --enable-ssl Turn on Secure Sockets Layer support [default=yes]],, @@ -209,6 +209,15 @@ AC_ARG_WITH(openssl-libs, [openssl_prefix=$withval], [openssl_prefix=$libdir]) +AC_ARG_WITH(gnutls-includes, + [ --with-gnutls-includes Specify location of GnuTLS header files], + [gnutls_inc_prefix=-I$withval]) + +AC_ARG_WITH(gnutls-libs, + [ --with-gnutls-libs Specify location of GnuTLS libs], + [gnutls_prefix=$withval], + [gnutls_prefix=$libdir]) + ### ### Allow for a custom SSL proxy name ### @@ -229,61 +238,104 @@ AC_ARG_ENABLE(ssl-link-static, [ --enable-static-ssl Link with SSL library statically [default=no]], [enable_static_ssl=yes]) +enable_gnutls="no" +enable_openssl="no" +enable_nss="no" + if test "x$enable_ssl" = xyes; then + found_ssl= + ### - ### Check for OpenSSL + ### Check for GnuTLS ### save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $openssl_inc_prefix" - AC_CHECK_LIB(dl, dlopen, DL_LDFLAGS="-ldl", DL_LDFLAGS="") - AC_CHECK_HEADERS(openssl/ssl.h openssl/err.h, - [enable_openssl="yes"], - [enable_openssl="no"; break]) + CPPFLAGS="$CPPFLAGS $gnutls_inc_prefix" + AC_CHECK_HEADERS(gnutls/gnutls.h, + [enable_gnutls="yes"], + [enable_gnutls="no"; break]) - if test "x$enable_openssl" = xyes; then + if test "x$enable_gnutls" = xyes; then if test "x$enable_static_ssl" = "xyes"; then - OPENSSL_LIBS="$openssl_prefix/libssl.a $openssl_prefix/libcrypto.a" + GNUTLS_LIBS="$gnutls_prefix/libgnutls.a $gnutls_prefix/libgcrypt.a" else - OPENSSL_LIBS="-L$openssl_prefix -lssl -lcrypto $DL_LDFLAGS" + GNUTLS_LIBS="-L$gnutls_prefix -lgnutls -lgcrypt" fi - OPENSSL_CFLAGS=$CPPFLAGS - AC_DEFINE(HAVE_OPENSSL, 1, - [Defined if you are using OpenSSL for SSL support]) + GNUTLS_CFLAGS=$CPPFLAGS + AC_DEFINE(HAVE_GNUTLS, 1, + [Defined if you are using GnuTLS for SSL support]) + found_ssl=yes else - OPENSSL_LIBS= - OPENSSL_CFLAGS= + GNUTLS_LIBS= + GNUTLS_CFLAGS= fi - AC_SUBST(OPENSSL_CFLAGS) - AC_SUBST(OPENSSL_LIBS) + AC_SUBST(GNUTLS_CFLAGS) + AC_SUBST(GNUTLS_LIBS) CPPFLAGS=$save_CPPFLAGS + AM_CONDITIONAL(BUILD_PROXY, false) + ### - ### Check for Mozilla NSS + ### Check for OpenSSL ### - save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $nspr_inc_prefix $nss_inc_prefix" - AC_CHECK_HEADERS(nss.h ssl.h pk11func.h, - [enable_nss="yes"], - [enable_nss="no"; break]) - - if test "x$enable_nss" = xyes; then - if test "x$enable_static_ssl" = "xyes"; then - NSS_LIBS="-lpthread $nspr_prefix/libnspr4.a $nspr_prefix/libplc4.a $nspr_prefix/libplds4.a $nss_prefix/libnssb.a" + if test "x$found_ssl" != "xyes"; then + save_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $openssl_inc_prefix" + AC_CHECK_LIB(dl, dlopen, DL_LDFLAGS="-ldl", DL_LDFLAGS="") + AC_CHECK_HEADERS(openssl/ssl.h openssl/err.h, + [enable_openssl="yes"], + [enable_openssl="no"; break]) + + if test "x$enable_openssl" = xyes; then + if test "x$enable_static_ssl" = "xyes"; then + OPENSSL_LIBS="$openssl_prefix/libssl.a $openssl_prefix/libcrypto.a" + else + OPENSSL_LIBS="-L$openssl_prefix -lssl -lcrypto $DL_LDFLAGS" + fi + OPENSSL_CFLAGS=$CPPFLAGS + AC_DEFINE(HAVE_OPENSSL, 1, + [Defined if you are using OpenSSL for SSL support]) + found_ssl=yes + AM_CONDITIONAL(BUILD_PROXY, true) else - NSS_LIBS="-lpthread -L$nspr_prefix -lnspr4 -lplc4 -lplds4 $nss_prefix -lnss3 -lssl3" + OPENSSL_LIBS= + OPENSSL_CFLAGS= fi - NSS_CFLAGS=$CPPFLAGS - AC_DEFINE(HAVE_NSS, 1, - [Defined if you are using Mozilla NSS for SSL support]) - else - NSS_LIBS= - NSS_CFLAGS= + + AC_SUBST(OPENSSL_CFLAGS) + AC_SUBST(OPENSSL_LIBS) + CPPFLAGS=$save_CPPFLAGS fi - AC_SUBST(NSS_CFLAGS) - AC_SUBST(NSS_LIBS) - CPPFLAGS=$save_CPPFLAGS + ### + ### Check for Mozilla NSS + ### + if test "x$found_ssl" != "xyes"; then + save_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $nspr_inc_prefix $nss_inc_prefix" + AC_CHECK_HEADERS(nss.h ssl.h pk11func.h, + [enable_nss="yes"], + [enable_nss="no"; break]) + + if test "x$enable_nss" = xyes; then + if test "x$enable_static_ssl" = "xyes"; then + NSS_LIBS="-lpthread $nspr_prefix/libnspr4.a $nspr_prefix/libplc4.a $nspr_prefix/libplds4.a $nss_prefix/libnssb.a" + else + NSS_LIBS="-lpthread -L$nspr_prefix -lnspr4 -lplc4 -lplds4 $nss_prefix -lnss3 -lssl3" + fi + NSS_CFLAGS=$CPPFLAGS + AC_DEFINE(HAVE_NSS, 1, + [Defined if you are using Mozilla NSS for SSL support]) + found_ssl=yes + else + NSS_LIBS= + NSS_CFLAGS= + fi + + AC_SUBST(NSS_CFLAGS) + AC_SUBST(NSS_LIBS) + CPPFLAGS=$save_CPPFLAGS + fi fi @@ -385,10 +437,11 @@ Configuration: Compiler: ${CC} Build flags: ${CFLAGS} ${SOUP_DEBUG_FLAGS} - Static SSL Proxy: ${enable_static_proxy:-no} - SSL Proxy Name: ${SSL_PROXY_NAME} - + GnuTLS support: ${enable_gnutls} OpenSSL support: ${enable_openssl} + Static SSL Proxy: ${enable_static_proxy:-no} + SSL Proxy Name: ${SSL_PROXY_NAME} Mozilla NSS support: ${enable_nss} + " |