X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=configure.ac;h=b5e71e3253defc6b3ba417d5b1040c30929ea678;hb=a2568a74ee648390703dd8c8001b2ca09d0745b6;hp=42860bbb74009330826719c2c4a2d7fecde721ef;hpb=56e54c8c75d59a8e5072451941aa56c727d99d26;p=paraslash.git diff --git a/configure.ac b/configure.ac index 42860bbb..b5e71e32 100644 --- a/configure.ac +++ b/configure.ac @@ -102,9 +102,14 @@ if test $HAVE_OPENSSL = yes; then 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 && + if test "$ac_cv_have_decl_RSA_set0_key" = yes; then AC_DEFINE([HAVE_RSA_SET0_KEY], [1], [openssl >= 1.1]) - + else + AC_MSG_WARN([ + Old openssl library detected. Support for openssl-1.0 and earlier + will be removed in the next major paraslash release. Please upgrade + your openssl installation.]) + fi HAVE_CRYPTO_CLEANUP_ALL_EX_DATA=yes AC_CHECK_DECL([CRYPTO_cleanup_all_ex_data], [], [HAVE_CRYPTO_CLEANUP_ALL_EX_DATA=no], @@ -291,12 +296,10 @@ AC_DEFUN([NEED_FLAC_OBJECTS], [{ }]) ########################################################################### faad STASH_FLAGS -LIB_ARG_WITH([faad], [-lfaad -lmp4ff]) +LIB_ARG_WITH([faad], [-lfaad]) HAVE_FAAD=yes AC_CHECK_HEADER(neaacdec.h, [], HAVE_FAAD=no) -AC_CHECK_HEADER(mp4ff.h, [], HAVE_FAAD=no) AC_CHECK_LIB([faad], [NeAACDecOpen], [], HAVE_FAAD=no) -AC_CHECK_LIB([mp4ff], [mp4ff_meta_get_artist], [], HAVE_FAAD=no) LIB_SUBST_FLAGS(faad) UNSTASH_FLAGS ########################################################################### mad @@ -373,12 +376,17 @@ 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 build_server="yes" executables="$executables server upgrade_db" - server_errlist_objs=" + server_objs=" server afh_common mp3_afh @@ -391,7 +399,6 @@ if test -n "$CRYPTOLIB" && test $HAVE_OSL = yes && test -n "$BISON" && \ daemon http_send close_on_fork - mm crypt_common base64 ipc @@ -420,19 +427,18 @@ if test -n "$CRYPTOLIB" && test $HAVE_OSL = yes && test -n "$BISON" && \ lsu " if test "$CRYPTOLIB" = openssl; then - server_errlist_objs="$server_errlist_objs openssl" + server_objs="$server_objs openssl" else - server_errlist_objs="$server_errlist_objs gcrypt" + server_objs="$server_objs gcrypt" fi - NEED_OGG_OBJECTS() && server_errlist_objs="$server_errlist_objs ogg_afh_common" - NEED_VORBIS_OBJECTS() && server_errlist_objs="$server_errlist_objs ogg_afh" - NEED_SPEEX_OBJECTS() && server_errlist_objs="$server_errlist_objs spx_afh spx_common" - NEED_OPUS_OBJECTS() && server_errlist_objs="$server_errlist_objs opus_afh opus_common" - NEED_FLAC_OBJECTS && server_errlist_objs="$server_errlist_objs flac_afh" + NEED_OGG_OBJECTS() && server_objs="$server_objs ogg_afh_common" + NEED_VORBIS_OBJECTS() && server_objs="$server_objs ogg_afh" + NEED_SPEEX_OBJECTS() && server_objs="$server_objs spx_afh spx_common" + NEED_OPUS_OBJECTS() && server_objs="$server_objs opus_afh opus_common" + NEED_FLAC_OBJECTS && server_objs="$server_objs flac_afh" if test $HAVE_FAAD = yes; then - server_errlist_objs="$server_errlist_objs aac_afh" + server_objs="$server_objs aac_afh mp4" fi - server_objs="$server_errlist_objs" AC_SUBST(server_objs, add_dot_o($server_objs)) else build_server="no" @@ -452,7 +458,7 @@ AC_SUBST(upgrade_db_objs, add_dot_o($upgrade_db_objs)) if test -n "$CRYPTOLIB"; then build_client="yes" executables="$executables client" - client_errlist_objs=" + client_objs=" client net string @@ -470,15 +476,14 @@ if test -n "$CRYPTOLIB"; then version " if test "$CRYPTOLIB" = openssl; then - client_errlist_objs="$client_errlist_objs openssl" + client_objs="$client_objs openssl" else - client_errlist_objs="$client_errlist_objs gcrypt" + client_objs="$client_objs gcrypt" fi if test $HAVE_READLINE = yes; then - client_errlist_objs="$client_errlist_objs interactive" + client_objs="$client_objs interactive" fi - client_objs="$client_errlist_objs" - AC_SUBST(client_objs, add_dot_o($client_errlist_objs)) + AC_SUBST(client_objs, add_dot_o($client_objs)) else build_client="no" fi @@ -487,7 +492,7 @@ if test -n "$CRYPTOLIB"; then build_audiod="yes" executables="$executables audiod" audiod_audio_formats="wma" - audiod_errlist_objs="$audiod_errlist_objs + audiod_objs="$audiod_objs audiod signal string @@ -527,52 +532,48 @@ if test -n "$CRYPTOLIB"; then lsu " if test "$CRYPTOLIB" = openssl; then - audiod_errlist_objs="$audiod_errlist_objs openssl" + audiod_objs="$audiod_objs openssl" else - audiod_errlist_objs="$audiod_errlist_objs gcrypt" + audiod_objs="$audiod_objs gcrypt" fi NEED_VORBIS_OBJECTS && { - audiod_errlist_objs="$audiod_errlist_objs oggdec_filter" + audiod_objs="$audiod_objs oggdec_filter" audiod_audio_formats="$audiod_audio_formats ogg" } NEED_SPEEX_OBJECTS && { - audiod_errlist_objs="$audiod_errlist_objs spxdec_filter spx_common" + audiod_objs="$audiod_objs spxdec_filter spx_common" audiod_audio_formats="$audiod_audio_formats spx" } NEED_OPUS_OBJECTS && { - audiod_errlist_objs="$audiod_errlist_objs opusdec_filter opus_common" + audiod_objs="$audiod_objs opusdec_filter opus_common" audiod_audio_formats="$audiod_audio_formats opus" } NEED_FLAC_OBJECTS && { - audiod_errlist_objs="$audiod_errlist_objs flacdec_filter" + audiod_objs="$audiod_objs flacdec_filter" audiod_audio_formats="$audiod_audio_formats flac" } if test $HAVE_FAAD = yes; then - audiod_errlist_objs="$audiod_errlist_objs aacdec_filter" + audiod_objs="$audiod_objs aacdec_filter" audiod_audio_formats="$audiod_audio_formats aac" fi if test $HAVE_MAD = yes; then audiod_audio_formats="$audiod_audio_formats mp3" - audiod_errlist_objs="$audiod_errlist_objs mp3dec_filter" + audiod_objs="$audiod_objs mp3dec_filter" fi if test $HAVE_OSS = yes; then - audiod_errlist_objs="$audiod_errlist_objs oss_write" + audiod_objs="$audiod_objs oss_write" fi if test $HAVE_ALSA = yes; then - audiod_errlist_objs="$audiod_errlist_objs alsa_write" + audiod_objs="$audiod_objs alsa_write" fi NEED_AO_OBJECTS && { - audiod_errlist_objs="$audiod_errlist_objs ao_write" + audiod_objs="$audiod_objs ao_write" } if test $HAVE_SAMPLERATE = yes; then - audiod_errlist_objs="$audiod_errlist_objs resample_filter check_wav" + audiod_objs="$audiod_objs resample_filter check_wav" fi - audiod_objs="$audiod_errlist_objs" AC_SUBST(audiod_objs, add_dot_o($audiod_objs)) - enum="$(for i in $audiod_audio_formats; do printf "AUDIO_FORMAT_${i}, " | tr '[a-z]' '[A-Z]'; done)" - AC_DEFINE_UNQUOTED(AUDIOD_AUDIO_FORMATS_ENUM, $enum NUM_AUDIO_FORMATS, - enum of audio formats supported by audiod) names="$(for i in $audiod_audio_formats; do printf \"$i\",' ' ; done)" AC_DEFINE_UNQUOTED(AUDIOD_AUDIO_FORMAT_ARRAY, $names, array of audio formats supported by audiod) else @@ -582,14 +583,13 @@ fi if test $HAVE_OSS = yes -o $HAVE_ALSA = yes; then build_mixer="yes" executables="$executables mixer" - mixer_errlist_objs="mixer exec string fd lsu version" + mixer_objs="mixer exec string fd time lsu version" if test $HAVE_OSS = yes; then - mixer_errlist_objs="$mixer_errlist_objs oss_mix" + mixer_objs="$mixer_objs oss_mix" fi if test $HAVE_ALSA = yes; then - mixer_errlist_objs="$mixer_errlist_objs alsa_mix" + mixer_objs="$mixer_objs alsa_mix" fi - mixer_objs="$mixer_errlist_objs" AC_SUBST(mixer_objs, add_dot_o($mixer_objs)) else build_mixer="no" @@ -599,7 +599,7 @@ fi if test $HAVE_CURSES = yes; then build_gui="yes" executables="$executables gui" - gui_errlist_objs=" + gui_objs=" exec signal string @@ -613,14 +613,13 @@ if test $HAVE_CURSES = yes; then sched version " - gui_objs="$gui_errlist_objs" AC_SUBST(gui_objs, add_dot_o($gui_objs)) else build_gui="no" AC_MSG_WARN([no curses lib, cannot build para_gui]) fi ######################################################################## filter -filter_errlist_objs=" +filter_objs=" filter_common wav_filter compress_filter @@ -645,24 +644,22 @@ filter_errlist_objs=" net sync_filter " -NEED_VORBIS_OBJECTS && filter_errlist_objs="$filter_errlist_objs oggdec_filter" -NEED_SPEEX_OBJECTS && filter_errlist_objs="$filter_errlist_objs spxdec_filter spx_common" -NEED_OPUS_OBJECTS && filter_errlist_objs="$filter_errlist_objs opusdec_filter opus_common" -NEED_FLAC_OBJECTS && filter_errlist_objs="$filter_errlist_objs flacdec_filter" +NEED_VORBIS_OBJECTS && filter_objs="$filter_objs oggdec_filter" +NEED_SPEEX_OBJECTS && filter_objs="$filter_objs spxdec_filter spx_common" +NEED_OPUS_OBJECTS && filter_objs="$filter_objs opusdec_filter opus_common" +NEED_FLAC_OBJECTS && filter_objs="$filter_objs flacdec_filter" if test $HAVE_FAAD = yes; then - filter_errlist_objs="$filter_errlist_objs aacdec_filter" + filter_objs="$filter_objs aacdec_filter" fi if test $HAVE_MAD = yes; then - filter_errlist_objs="$filter_errlist_objs mp3dec_filter" + filter_objs="$filter_objs mp3dec_filter" fi if test $HAVE_SAMPLERATE = yes; then - filter_errlist_objs="$filter_errlist_objs resample_filter check_wav" + filter_objs="$filter_objs resample_filter check_wav" fi -filter_objs="$filter_errlist_objs" - AC_SUBST(filter_objs, add_dot_o($filter_objs)) ########################################################################## recv -recv_errlist_objs=" +recv_objs=" http_recv recv_common recv @@ -682,20 +679,19 @@ recv_errlist_objs=" mp3_afh version " -NEED_OGG_OBJECTS && recv_errlist_objs="$recv_errlist_objs ogg_afh_common" -NEED_VORBIS_OBJECTS && recv_errlist_objs="$recv_errlist_objs ogg_afh" -NEED_SPEEX_OBJECTS && recv_errlist_objs="$recv_errlist_objs spx_afh spx_common" -NEED_OPUS_OBJECTS && recv_errlist_objs="$recv_errlist_objs opus_afh opus_common" -NEED_FLAC_OBJECTS && recv_errlist_objs="$recv_errlist_objs flac_afh" +NEED_OGG_OBJECTS && recv_objs="$recv_objs ogg_afh_common" +NEED_VORBIS_OBJECTS && recv_objs="$recv_objs ogg_afh" +NEED_SPEEX_OBJECTS && recv_objs="$recv_objs spx_afh spx_common" +NEED_OPUS_OBJECTS && recv_objs="$recv_objs opus_afh opus_common" +NEED_FLAC_OBJECTS && recv_objs="$recv_objs flac_afh" if test $HAVE_FAAD = yes; then - recv_errlist_objs="$recv_errlist_objs aac_afh" + recv_objs="$recv_objs aac_afh mp4" fi -recv_objs="$recv_errlist_objs" AC_SUBST(recv_objs, add_dot_o($recv_objs)) ########################################################################### afh audio_format_handlers="mp3 wma" -afh_errlist_objs=" +afh_objs=" afh string fd @@ -706,33 +702,30 @@ afh_errlist_objs=" wma_common version " -NEED_OGG_OBJECTS && afh_errlist_objs="$afh_errlist_objs ogg_afh_common" +NEED_OGG_OBJECTS && afh_objs="$afh_objs ogg_afh_common" NEED_VORBIS_OBJECTS && { - afh_errlist_objs="$afh_errlist_objs ogg_afh" + afh_objs="$afh_objs ogg_afh" audio_format_handlers="$audio_format_handlers ogg" } NEED_SPEEX_OBJECTS && { - afh_errlist_objs="$afh_errlist_objs spx_afh spx_common" + afh_objs="$afh_objs spx_afh spx_common" audio_format_handlers="$audio_format_handlers spx" } NEED_OPUS_OBJECTS && { - afh_errlist_objs="$afh_errlist_objs opus_afh opus_common" + afh_objs="$afh_objs opus_afh opus_common" audio_format_handlers="$audio_format_handlers opus" } NEED_FLAC_OBJECTS && { - afh_errlist_objs="$afh_errlist_objs flac_afh" + afh_objs="$afh_objs flac_afh" audio_format_handlers="$audio_format_handlers flac" } if test $HAVE_FAAD = yes; then - afh_errlist_objs="$afh_errlist_objs aac_afh" + afh_objs="$afh_objs aac_afh mp4" audio_format_handlers="$audio_format_handlers aac" fi - -afh_objs="$afh_errlist_objs" - AC_SUBST(afh_objs, add_dot_o($afh_objs)) ########################################################################## play -play_errlist_objs=" +play_objs=" play fd sched @@ -765,48 +758,46 @@ play_errlist_objs=" sync_filter lsu " -NEED_OGG_OBJECTS && play_errlist_objs="$play_errlist_objs ogg_afh_common" +NEED_OGG_OBJECTS && play_objs="$play_objs ogg_afh_common" NEED_VORBIS_OBJECTS && { - play_errlist_objs="$play_errlist_objs oggdec_filter ogg_afh" + play_objs="$play_objs oggdec_filter ogg_afh" } NEED_SPEEX_OBJECTS && { - play_errlist_objs="$play_errlist_objs spxdec_filter spx_afh spx_common" + play_objs="$play_objs spxdec_filter spx_afh spx_common" } NEED_OPUS_OBJECTS && - play_errlist_objs="$play_errlist_objs + play_objs="$play_objs opusdec_filter opus_afh opus_common " NEED_FLAC_OBJECTS && { - play_errlist_objs="$play_errlist_objs flacdec_filter flac_afh" + play_objs="$play_objs flacdec_filter flac_afh" } if test $HAVE_FAAD = yes; then - play_errlist_objs="$play_errlist_objs aac_afh aacdec_filter" + play_objs="$play_objs aac_afh aacdec_filter mp4" fi if test $HAVE_MAD = yes; then - play_errlist_objs="$play_errlist_objs mp3dec_filter" + play_objs="$play_objs mp3dec_filter" fi if test $HAVE_OSS = yes; then - play_errlist_objs="$play_errlist_objs oss_write" + play_objs="$play_objs oss_write" fi if test $HAVE_ALSA = yes; then - play_errlist_objs="$play_errlist_objs alsa_write" + play_objs="$play_objs alsa_write" fi NEED_AO_OBJECTS && { - play_errlist_objs="$play_errlist_objs ao_write" + play_objs="$play_objs ao_write" } if test $HAVE_READLINE = yes; then - play_errlist_objs="$play_errlist_objs interactive" + play_objs="$play_objs interactive" fi if test $HAVE_SAMPLERATE = yes; then - play_errlist_objs="$play_errlist_objs resample_filter check_wav" + play_objs="$play_objs resample_filter check_wav" fi - -play_objs="$play_errlist_objs" AC_SUBST(play_objs, add_dot_o($play_objs)) ######################################################################### write -write_errlist_objs=" +write_objs=" write write_common file_write @@ -821,34 +812,32 @@ write_errlist_objs=" " NEED_AO_OBJECTS && { - write_errlist_objs="$write_errlist_objs ao_write" + write_objs="$write_objs ao_write" } if test $HAVE_OSS = yes; then - write_errlist_objs="$write_errlist_objs oss_write" + write_objs="$write_objs oss_write" fi if test $HAVE_ALSA = yes; then - write_errlist_objs="$write_errlist_objs alsa_write" + write_objs="$write_objs alsa_write" fi -write_objs="$write_errlist_objs" AC_SUBST(write_objs, add_dot_o($write_objs)) ######################################################################## audioc -audioc_errlist_objs=" +audioc_objs=" audioc string lsu net fd + time version " if test $HAVE_READLINE = yes; then - audioc_errlist_objs="$audioc_errlist_objs + audioc_objs="$audioc_objs buffer_tree interactive sched - time " fi -audioc_objs="$audioc_errlist_objs" AC_SUBST(audioc_objs, add_dot_o($audioc_objs)) AC_DEFINE_UNQUOTED(AUDIO_FORMAT_HANDLERS, "$audio_format_handlers", @@ -860,7 +849,6 @@ AC_MSG_NOTICE([ paraslash configuration: ~~~~~~~~~~~~~~~~~~~~~~~~ crypto lib: ${CRYPTOLIB:-[none]} -unix socket credentials: $have_ucred readline (interactive CLIs): $HAVE_READLINE id3 version 2 support: $HAVE_ID3TAG faad: $HAVE_FAAD