X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=configure.ac;h=6f8878a3e09c5b8b30f4f42f4a43825000b3c7a9;hp=dd95590930852275bf863fde7f976edac7a3d6eb;hb=c685233a75d7c592ce0574382bc876d88def2a5b;hpb=e926e86ad7125728be2a28c6f3d5ec8683342466;ds=sidebyside diff --git a/configure.ac b/configure.ac index dd955909..6f8878a3 100644 --- a/configure.ac +++ b/configure.ac @@ -3,13 +3,27 @@ AC_PREREQ([2.61]) -AC_INIT([paraslash],[git],[maan@systemlinux.org]) -AC_CONFIG_HEADER([config.h]) +AC_INIT([paraslash],[git],[maan@tuebingen.mpg.de]) +AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([Makefile]) AC_DEFUN([add_dot_o],[$(for i in $@; do printf "$i.o "; done)]) AC_DEFUN([add_cmdline],[$(for i in $@; do printf "${i}.cmdline "; done)]) -AC_DEFUN([objlist_to_errlist],[$(for i in $@; do printf "DEFINE_ERRLIST($(echo $i| tr 'a-z' 'A-Z'));"; done) [const char **para_errlist[[]]] = {$(for i in $@; do printf "PARA_ERRLIST($(echo $i | tr 'a-z' 'A-Z')), "; done) }]) +AC_DEFUN([make_errlist_defines], \ + $(for i in $@; do \ + printf "DEFINE_ERRLIST($(echo $i | tr 'a-z' 'A-Z'));"; \ + done) \ +) +AC_DEFUN([make_para_errlists], \ + $(for i in $@; do \ + printf "PARA_ERRLIST($(echo $i | tr 'a-z' 'A-Z')), "; \ + done) \ +) +AC_DEFUN([objlist_to_errlist],[ \ + make_errlist_defines($@) \ + [const char **para_errlist[[]]] = {make_para_errlists($@)} \ +]) + AC_PATH_PROG(UNAMEPATH, uname, no) if test "$UNAMEPATH" = "no"; then AC_MSG_ERROR(unable to determine system type) @@ -90,8 +104,6 @@ AC_CHECK_FUNCS([atexit dup2 memchr memmove memset \ [AC_MSG_ERROR([function not found, cannot live without it])]) executables="recv filter audioc write afh play" -audio_format_handlers="mp3 wma" - ################################################################## clock_gettime clock_gettime_lib= AC_CHECK_LIB([c], [clock_gettime], [clock_gettime_lib=c], [ @@ -131,7 +143,7 @@ if test "$have_osl" = "yes"; then else AC_MSG_WARN([libosl not found, can not build para_server. Download libosl at - http://systemlinux.org/~maan/osl + http://people.tuebingen.mpg.de/maan/osl/ or execute git clone git://git.tuebingen.mpg.de/osl ]) @@ -368,11 +380,17 @@ if test -n "$with_ogg_libs"; then fi AC_CHECK_HEADERS([ogg/ogg.h], [], [ have_ogg="no"; ]) AC_CHECK_LIB([ogg], [ogg_stream_init], [], [ have_ogg="no" ]) +CPPFLAGS="$OLD_CPPFLAGS" +LDFLAGS="$OLD_LDFLAGS" +LIBS="$OLD_LIBS" have_vorbis="yes" have_speex="yes" have_opus="yes" if test "$have_ogg" = "yes"; then + OLD_CPPFLAGS="$CPPFLAGS" + OLD_LDFLAGS="$LDFLAGS" + OLD_LIBS="$LIBS" # vorbis if test -n "$with_vorbis_headers"; then vorbis_cppflags="-I$with_vorbis_headers" @@ -384,8 +402,14 @@ if test "$have_ogg" = "yes"; then fi AC_CHECK_HEADERS([vorbis/codec.h], [], [ have_vorbis="no" ]) AC_CHECK_LIB([vorbis], [vorbis_info_init], [], [ have_vorbis="no" ]) + CPPFLAGS="$OLD_CPPFLAGS" + LDFLAGS="$OLD_LDFLAGS" + LIBS="$OLD_LIBS" # speex + OLD_CPPFLAGS="$CPPFLAGS" + OLD_LDFLAGS="$LDFLAGS" + OLD_LIBS="$LIBS" if test -n "$with_speex_headers"; then speex_cppflags="-I$with_speex_headers" CPPFLAGS="$CPPFLAGS $speex_cppflags" @@ -396,8 +420,14 @@ if test "$have_ogg" = "yes"; then fi AC_CHECK_LIB([speex], [speex_decoder_init], [], [ have_speex="no" ]) AC_CHECK_HEADERS([speex/speex.h], [], [ have_speex="no" ]) + CPPFLAGS="$OLD_CPPFLAGS" + LDFLAGS="$OLD_LDFLAGS" + LIBS="$OLD_LIBS" # opus + OLD_CPPFLAGS="$CPPFLAGS" + OLD_LDFLAGS="$LDFLAGS" + OLD_LIBS="$LIBS" if test -n "$with_opus_headers"; then opus_cppflags="-I$with_opus_headers" CPPFLAGS="$CPPFLAGS $opus_cppflags" @@ -408,6 +438,9 @@ if test "$have_ogg" = "yes"; then fi AC_CHECK_LIB([opus], [opus_multistream_decode], [], [ have_opus="no" ]) AC_CHECK_HEADERS([opus/opus.h], [], [ have_opus="no" ]) + CPPFLAGS="$OLD_CPPFLAGS" + LDFLAGS="$OLD_LDFLAGS" + LIBS="$OLD_LIBS" else AC_MSG_WARN([vorbis/speex/opus depend on libogg, which was not detected]) have_vorbis="no" @@ -428,16 +461,15 @@ if test "$have_vorbis" = "yes" || \ fi if test "$have_vorbis" = "yes"; then AC_DEFINE(HAVE_OGGVORBIS, 1, define to 1 to turn on ogg/vorbis support) + AC_SUBST(vorbis_cppflags) vorbis_ldflags="$vorbis_libs -lvorbis -lvorbisfile" AC_SUBST(vorbis_ldflags) - audio_format_handlers="$audio_format_handlers ogg" fi if test "$have_speex" = "yes"; then AC_DEFINE(HAVE_SPEEX, 1, define to 1 to turn on ogg/speex support) AC_SUBST(speex_cppflags) speex_ldflags="$speex_libs -lspeex" AC_SUBST(speex_ldflags) - audio_format_handlers="$audio_format_handlers spx" else AC_MSG_WARN([no ogg/speex $msg]) fi @@ -450,9 +482,6 @@ if test "$have_opus" = "yes"; then else AC_MSG_WARN([no ogg/opus $msg]) fi -CPPFLAGS="$OLD_CPPFLAGS" -LDFLAGS="$OLD_LDFLAGS" -LIBS="$OLD_LIBS" ########################################################################### faad have_faad=yes OLD_CPPFLAGS="$CPPFLAGS" @@ -477,8 +506,6 @@ if test "$have_faad" = "yes"; then AC_SUBST(faad_cppflags) faad_ldflags="$faad_libs -lfaad" AC_SUBST(faad_ldflags) - - audio_format_handlers="$audio_format_handlers aac" fi CPPFLAGS="$OLD_CPPFLAGS" LDFLAGS="$OLD_LDFLAGS" @@ -572,13 +599,16 @@ if test -n "$with_flac_libs"; then LDFLAGS="$LDFLAGS $flac_libs" fi AC_CHECK_HEADER(FLAC/stream_decoder.h, [], have_flac=no) -AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], have_flac=no, -logg -lm) +AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], [ + # nope, try again with -logg + AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], + have_flac=no, -lm -logg) + ], -lm) if test "$have_flac" = "yes"; then AC_DEFINE(HAVE_FLAC, 1, define to 1 if you want to build the flacdec filter) AC_SUBST(flac_cppflags) flac_ldflags="$flac_libs -lFLAC" AC_SUBST(flac_ldflags) - audio_format_handlers="$audio_format_handlers flac" else AC_MSG_WARN([no flac support in para_audiod/para_filter/para_afh/para_server]) fi @@ -720,22 +750,18 @@ AC_CHECK_HEADERS([readline/readline.h], [ AC_MSG_WARN([readline/readline.h not found, $msg]) ]) -if test "$have_curses" != "yes"; then - have_readline="no" - AC_MSG_WARN([interactive cli support depends on curses,]) - AC_MSG_WARN([but no curses lib was detected, $msg]) -fi - if test "$have_readline" = "yes"; then - readline_ldflags="$readline_libs -lreadline" - AC_SEARCH_LIBS([rl_free_keymap], [readline], [], [have_readline="no"]) + readline_ldflags="$readline_libs" + AC_SEARCH_LIBS([rl_free_keymap], [readline], [ + readline_ldflags="$readline_ldflags -lreadline" + ], [have_readline="no"]) if test "$have_readline" = "no"; then # try with -lcurses # clear cache AC_MSG_NOTICE([trying again with -lcurses]) unset ac_cv_search_rl_free_keymap 2> /dev/null AC_SEARCH_LIBS([rl_free_keymap], [readline], [ have_readline=yes - readline_ldflags="$readline_ldflags -lcurses" + readline_ldflags="$readline_ldflags -lreadline -lcurses" ], [], [-lcurses]) fi if test "$have_readline" = "no"; then # try with -ltermcap @@ -744,13 +770,21 @@ if test "$have_readline" = "yes"; then unset ac_cv_search_rl_free_keymap 2> /dev/null AC_SEARCH_LIBS([rl_free_keymap], [readline], [ have_readline=yes - readline_ldflags="$readline_ldflags -ltermcap" + readline_ldflags="$readline_ldflags -lreadline -ltermcap" ], [], [-ltermcap]) fi fi if test "$have_readline" = "yes"; then - : + AC_CHECK_DECL( + [rl_free_keymap], + [AC_DEFINE(RL_FREE_KEYMAP_DECLARED, 1, readline >= 6.3)], + [], + [ + #include + #include + ] + ) AC_SUBST(readline_cppflags) AC_SUBST(readline_ldflags) AC_DEFINE(HAVE_READLINE, 1, define to 1 to turn on readline support) @@ -923,6 +957,7 @@ if test "$have_openssl" = "yes" -o "$have_gcrypt" = "yes"; then amp_filter udp_recv prebuffer_filter + sync_filter " audiod_errlist_objs="$audiod_errlist_objs audiod @@ -960,6 +995,7 @@ if test "$have_openssl" = "yes" -o "$have_gcrypt" = "yes"; then wma_common wmadec_filter buffer_tree + sync_filter " if test "$have_openssl" = "yes"; then audiod_errlist_objs="$audiod_errlist_objs crypt" @@ -969,7 +1005,7 @@ if test "$have_openssl" = "yes" -o "$have_gcrypt" = "yes"; then fi if test "$have_core_audio" = "yes"; then audiod_errlist_objs="$audiod_errlist_objs osx_write ipc" - audiod_cmdline_objs="$audiod_cmdline_objs osx_write.cmdline" + audiod_cmdline_objs="$audiod_cmdline_objs osx_write" fi if test "$have_vorbis" = "yes"; then audiod_errlist_objs="$audiod_errlist_objs oggdec_filter" @@ -1085,6 +1121,7 @@ if test "$have_curses" = "yes"; then gui gui_theme time + sched version ggo " @@ -1104,6 +1141,7 @@ filters=" fecdec wmadec prebuffer + sync " filter_errlist_objs=" filter_common @@ -1128,12 +1166,14 @@ filter_errlist_objs=" wmadec_filter buffer_tree net + sync_filter " filter_cmdline_objs=" filter compress_filter amp_filter prebuffer_filter + sync_filter " if test "$have_vorbis" = "yes"; then @@ -1166,6 +1206,8 @@ if test "$have_samplerate" = "yes"; then filter_cmdline_objs="$filter_cmdline_objs resample_filter" filters="$filters resample" fi +filters="$(echo $filters)" +AC_SUBST(filters) filter_objs="add_cmdline($filter_cmdline_objs) $filter_errlist_objs" AC_SUBST(filter_objs, add_dot_o($filter_objs)) @@ -1230,10 +1272,12 @@ if test "$have_flac" = "yes"; then recv_errlist_objs="$recv_errlist_objs flac_afh" fi recv_objs="add_cmdline($recv_cmdline_objs) $recv_errlist_objs" +AC_SUBST(receivers, "http dccp udp afh") AC_SUBST(recv_objs, add_dot_o($recv_objs)) AC_DEFINE_UNQUOTED(INIT_RECV_ERRLISTS, objlist_to_errlist($recv_errlist_objs), errors used by para_recv) ########################################################################### afh +audio_format_handlers="mp3 wma" afh_cmdline_objs="afh" afh_errlist_objs=" afh @@ -1254,18 +1298,23 @@ if test "$have_vorbis" = "yes" || \ fi if test "$have_vorbis" = "yes"; then afh_errlist_objs="$afh_errlist_objs ogg_afh" + audio_format_handlers="$audio_format_handlers ogg" fi if test "$have_speex" = "yes"; then afh_errlist_objs="$afh_errlist_objs spx_afh spx_common" + audio_format_handlers="$audio_format_handlers spx" fi if test "$have_opus" = "yes"; then afh_errlist_objs="$afh_errlist_objs opus_afh opus_common" + audio_format_handlers="$audio_format_handlers opus" fi if test "$have_faad" = "yes"; then afh_errlist_objs="$afh_errlist_objs aac_common aac_afh" + audio_format_handlers="$audio_format_handlers aac" fi if test "$have_flac" = "yes"; then afh_errlist_objs="$afh_errlist_objs flac_afh" + audio_format_handlers="$audio_format_handlers flac" fi afh_objs="add_cmdline($afh_cmdline_objs) $afh_errlist_objs" @@ -1305,6 +1354,7 @@ play_errlist_objs=" write_common file_write version + sync_filter " play_cmdline_objs=" http_recv @@ -1316,10 +1366,11 @@ play_cmdline_objs=" prebuffer_filter file_write play + sync_filter " if test "$have_core_audio" = "yes"; then play_errlist_objs="$play_errlist_objs osx_write ipc" - play_cmdline_objs="$play_cmdline_objs osx_write.cmdline" + play_cmdline_objs="$play_cmdline_objs osx_write" fi if test "$have_vorbis" = "yes" || \ test "$have_speex" = "yes" || \ @@ -1393,7 +1444,7 @@ default_writer="FILE_WRITE" if test "$have_core_audio" = "yes"; then write_errlist_objs="$write_errlist_objs osx_write ipc" - write_cmdline_objs="$write_cmdline_objs osx_write.cmdline" + write_cmdline_objs="$write_cmdline_objs osx_write" writers="$writers osx" default_writer="OSX_WRITE" fi @@ -1415,6 +1466,7 @@ if test "$have_alsa" = "yes"; then writers="$writers alsa" default_writer="ALSA_WRITE" fi +AC_SUBST(writers) write_objs="add_cmdline($write_cmdline_objs) $write_errlist_objs" AC_SUBST(write_objs, add_dot_o($write_objs)) AC_DEFINE_UNQUOTED(INIT_WRITE_ERRLISTS, @@ -1533,7 +1585,7 @@ unix socket credentials: $have_ucred readline (interactive CLIs): $have_readline audio formats handlers: $audio_format_handlers id3 version2 support: $have_libid3tag -filters: $(echo $filters) +filters: $filters writers: $writers para_fade: $build_fade