X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=configure.ac;h=850e814f21cbe3601441f3f625a712290b7d3015;hp=499571a70318f2d3bfe753e8a9be95307e7fc378;hb=b287a53fa3e3dffb51febedebff6efb0d1065c2c;hpb=c517cb88ae745c9be06ac5cd99236c4bae8575c9 diff --git a/configure.ac b/configure.ac index 499571a7..850e814f 100644 --- a/configure.ac +++ b/configure.ac @@ -96,8 +96,33 @@ AC_CHECK_HEADER(openssl/ssl.h, [], [HAVE_OPENSSL=no]) AC_CHECK_LIB([crypto], [RAND_bytes], [], [HAVE_OPENSSL=no]) LIB_SUBST_FLAGS(openssl) if test $HAVE_OPENSSL = yes; then - AC_CHECK_LIB([crypto], [RSA_set0_key], - AC_DEFINE([HAVE_RSA_SET0_KEY], [1], [openssl-1.1])) + HAVE_RSA_SET0_KEY=yes + AC_CHECK_DECL([RSA_set0_key], [], [], [#include ]) + AC_CHECK_LIB([crypto], [RSA_set0_key], [], []) + if test "$ac_cv_have_decl_RSA_set0_key" != "$ac_cv_lib_crypto_RSA_set0_key"; then + AC_MSG_ERROR([openssl header/library mismatch]) + fi + test "$ac_cv_have_decl_RSA_set0_key" = yes && + AC_DEFINE([HAVE_RSA_SET0_KEY], [1], [openssl >= 1.1]) + + HAVE_CRYPTO_CLEANUP_ALL_EX_DATA=yes + AC_CHECK_DECL([CRYPTO_cleanup_all_ex_data], [], + [HAVE_CRYPTO_CLEANUP_ALL_EX_DATA=no], + [#include ]) + AC_CHECK_LIB([crypto], [CRYPTO_cleanup_all_ex_data], [], + [HAVE_CRYPTO_CLEANUP_ALL_EX_DATA=no]) + test $HAVE_CRYPTO_CLEANUP_ALL_EX_DATA = yes && + AC_DEFINE([HAVE_CRYPTO_CLEANUP_ALL_EX_DATA], [1], + [not available on FreeBSD 12]) + HAVE_OPENSSL_THREAD_STOP=yes + AC_CHECK_DECL([OPENSSL_thread_stop], [], + [HAVE_OPENSSL_THREAD_STOP=no], + [#include ]) + AC_CHECK_LIB([crypto], [OPENSSL_thread_stop], [], + [HAVE_OPENSSL_THREAD_STOP=no]) + test $HAVE_OPENSSL_THREAD_STOP = yes && + AC_DEFINE([HAVE_OPENSSL_THREAD_STOP], [1], + [not available on openssl-1.0]) fi UNSTASH_FLAGS ######################################################################### gcrypt @@ -348,6 +373,11 @@ AC_CHECK_HEADER(samplerate.h, [], HAVE_SAMPLERATE=no) AC_CHECK_LIB([samplerate], [src_process], [], HAVE_SAMPLERATE=no) LIB_SUBST_FLAGS(samplerate) UNSTASH_FLAGS +######################################################################### ubsan +AC_ARG_ENABLE([ubsan], [AS_HELP_STRING(--enable-ubsan, + [Detect and report undefined behaviour.])], + [ENABLE_UBSAN=yes], [ENABLE_UBSAN=no]) +AC_SUBST(ENABLE_UBSAN) ######################################################################### server if test -n "$CRYPTOLIB" && test $HAVE_OSL = yes && test -n "$BISON" && \ test -n "$FLEX"; then @@ -392,9 +422,10 @@ if test -n "$CRYPTOLIB" && test $HAVE_OSL = yes && test -n "$BISON" && \ wma_common sideband version + lsu " if test "$CRYPTOLIB" = openssl; then - server_errlist_objs="$server_errlist_objs crypt" + server_errlist_objs="$server_errlist_objs openssl" else server_errlist_objs="$server_errlist_objs gcrypt" fi @@ -420,6 +451,7 @@ if test -n "$CRYPTOLIB"; then net string fd + lsu sched stdin stdout @@ -432,7 +464,7 @@ if test -n "$CRYPTOLIB"; then version " if test "$CRYPTOLIB" = openssl; then - client_errlist_objs="$client_errlist_objs crypt" + client_errlist_objs="$client_errlist_objs openssl" else client_errlist_objs="$client_errlist_objs gcrypt" fi @@ -486,9 +518,10 @@ if test -n "$CRYPTOLIB"; then wmadec_filter buffer_tree sync_filter + lsu " if test "$CRYPTOLIB" = openssl; then - audiod_errlist_objs="$audiod_errlist_objs crypt" + audiod_errlist_objs="$audiod_errlist_objs openssl" else audiod_errlist_objs="$audiod_errlist_objs gcrypt" fi @@ -543,7 +576,7 @@ fi if test $HAVE_OSS = yes -o $HAVE_ALSA = yes; then build_mixer="yes" executables="$executables mixer" - mixer_errlist_objs="mixer exec string fd version" + mixer_errlist_objs="mixer exec string fd lsu version" if test $HAVE_OSS = yes; then mixer_errlist_objs="$mixer_errlist_objs oss_mix" fi @@ -569,6 +602,7 @@ if test $HAVE_CURSES = yes; then fd gui gui_theme + lsu time sched version @@ -593,6 +627,7 @@ filter_errlist_objs=" amp_filter fecdec_filter fec + lsu version prebuffer_filter time @@ -722,6 +757,7 @@ play_errlist_objs=" file_write version sync_filter + lsu " NEED_OGG_OBJECTS && play_errlist_objs="$play_errlist_objs ogg_afh_common" NEED_VORBIS_OBJECTS && { @@ -793,6 +829,7 @@ AC_SUBST(write_objs, add_dot_o($write_objs)) audioc_errlist_objs=" audioc string + lsu net fd version