Add schannel option to autotools build

This commit is contained in:
Stu Tomlinson
2022-03-18 12:13:52 +00:00
parent 476dd4c4f7
commit 700abd95b6
2 changed files with 13 additions and 1 deletions

View File

@@ -14,9 +14,11 @@ if TLS_WITH_GNUTLS
SSL_CFLAGS = @gnutls_CFLAGS@ SSL_CFLAGS = @gnutls_CFLAGS@
SSL_LIBS = @gnutls_LIBS@ SSL_LIBS = @gnutls_LIBS@
else else
if !TLS_WITH_SCHANNEL
SSL_CFLAGS = @openssl_CFLAGS@ SSL_CFLAGS = @openssl_CFLAGS@
SSL_LIBS = @openssl_LIBS@ SSL_LIBS = @openssl_LIBS@
endif endif
endif
MINGW_LIBS = @MINGW_LIBS@ MINGW_LIBS = @MINGW_LIBS@
@@ -86,9 +88,13 @@ else
if TLS_WITH_GNUTLS if TLS_WITH_GNUTLS
libstrophe_la_SOURCES += src/tls_gnutls.c libstrophe_la_SOURCES += src/tls_gnutls.c
else else
if TLS_WITH_SCHANNEL
libstrophe_la_SOURCES += src/tls_schannel.c
else
libstrophe_la_SOURCES += src/tls_openssl.c libstrophe_la_SOURCES += src/tls_openssl.c
endif endif
endif endif
endif
if PARSER_EXPAT if PARSER_EXPAT
libstrophe_la_SOURCES += src/parser_expat.c libstrophe_la_SOURCES += src/parser_expat.c
@@ -113,7 +119,6 @@ EXTRA_DIST = \
jni/Android.mk \ jni/Android.mk \
jni/Application.mk \ jni/Application.mk \
m4/ax_valgrind_check.m4 \ m4/ax_valgrind_check.m4 \
src/tls_schannel.c \
tests/cert.pem \ tests/cert.pem \
tests/cert.pfx \ tests/cert.pfx \
tests/cert.emptypass.pfx \ tests/cert.emptypass.pfx \

View File

@@ -43,6 +43,8 @@ AC_ARG_WITH([libxml2],
[AS_HELP_STRING([--with-libxml2], [use libxml2 for XML parsing, expat is the default])]) [AS_HELP_STRING([--with-libxml2], [use libxml2 for XML parsing, expat is the default])])
AC_ARG_WITH([gnutls], AC_ARG_WITH([gnutls],
[AS_HELP_STRING([--with-gnutls], [use GnuTLS for TLS support, OpenSSL is the default])]) [AS_HELP_STRING([--with-gnutls], [use GnuTLS for TLS support, OpenSSL is the default])])
AC_ARG_WITH([schannel],
[AS_HELP_STRING([--with-schannel], [use Windows Schannel for TLS support, OpenSSL is the default])])
AC_ARG_ENABLE([tls], AC_ARG_ENABLE([tls],
[AS_HELP_STRING([--disable-tls], [disable TLS support])]) [AS_HELP_STRING([--disable-tls], [disable TLS support])])
AC_ARG_ENABLE([cares], AC_ARG_ENABLE([cares],
@@ -98,6 +100,10 @@ if test "x$enable_tls" != xno -a "x$with_gnutls" == xyes; then
], ],
[AC_MSG_ERROR([gnutls not found; gnutls required])] [AC_MSG_ERROR([gnutls not found; gnutls required])]
)]) )])
elif test "x$enable_tls" != xno -a "x$with_schannel" == xyes; then
if test "x$PLATFORM" != xwin32; then
AC_MSG_ERROR([schannel is only supported on Windows])
fi
elif test "x$enable_tls" != xno; then elif test "x$enable_tls" != xno; then
PKG_CHECK_MODULES([openssl], [openssl], PKG_CHECK_MODULES([openssl], [openssl],
[PC_REQUIRES="openssl ${PC_REQUIRES}"], [PC_REQUIRES="openssl ${PC_REQUIRES}"],
@@ -219,6 +225,7 @@ AM_CONDITIONAL([PARSER_EXPAT], [test x$with_parser != xlibxml2])
AM_CONDITIONAL([DISABLE_TLS], [test x$enable_tls = xno]) AM_CONDITIONAL([DISABLE_TLS], [test x$enable_tls = xno])
AM_CONDITIONAL([NEED_SNPRINTF], [test x$have_snprintf = xno]) AM_CONDITIONAL([NEED_SNPRINTF], [test x$have_snprintf = xno])
AM_CONDITIONAL([TLS_WITH_GNUTLS], [test x$with_gnutls = xyes]) AM_CONDITIONAL([TLS_WITH_GNUTLS], [test x$with_gnutls = xyes])
AM_CONDITIONAL([TLS_WITH_SCHANNEL], [test x$with_schannel = xyes])
# define while compiling # define while compiling
AC_DEFINE_UNQUOTED(LIBXMPP_VERSION_MAJOR, [v_maj], [Major version]) AC_DEFINE_UNQUOTED(LIBXMPP_VERSION_MAJOR, [v_maj], [Major version])