para_play, infrastructure.
[paraslash.git] / configure.ac
index 2df7339658518f5bc3b732b9b640bbc5d2fe84b3..661081cf702fe1c610dcbe7db4b3674a9d64a797 100644 (file)
@@ -102,8 +102,9 @@ all_errlist_objs="mp3_afh afh_common net string signal time daemon
        exec send_common ggo udp_recv color fec fecdec_filter
        prebuffer_filter bitstream imdct
        wma_afh wma_common wmadec_filter buffer_tree crypt_common
        exec send_common ggo udp_recv color fec fecdec_filter
        prebuffer_filter bitstream imdct
        wma_afh wma_common wmadec_filter buffer_tree crypt_common
-       gui gui_theme sideband afh_recv"
-executables="recv filter audioc write client afh audiod"
+       gui gui_theme sideband afh_recv play"
+
+executables="recv filter audioc write client afh audiod play"
 
 recv_cmdline_objs="add_cmdline(recv http_recv dccp_recv udp_recv afh_recv)"
 
 
 recv_cmdline_objs="add_cmdline(recv http_recv dccp_recv udp_recv afh_recv)"
 
@@ -154,6 +155,17 @@ client_ldflags=""
 gui_cmdline_objs="add_cmdline(gui)"
 gui_errlist_objs="exec signal string stat ringbuffer fd gui gui_theme"
 gui_objs="$gui_cmdline_objs $gui_errlist_objs"
 gui_cmdline_objs="add_cmdline(gui)"
 gui_errlist_objs="exec signal string stat ringbuffer fd gui gui_theme"
 gui_objs="$gui_cmdline_objs $gui_errlist_objs"
+play_errlist_objs="play fd sched ggo buffer_tree time string net
+       afh_recv afh_common
+       wma_afh wma_common mp3_afh
+       recv_common udp_recv http_recv dccp_recv
+       filter_common fec bitstream imdct
+       wav_filter compress_filter amp_filter prebuffer_filter fecdec_filter
+               wmadec_filter
+       write_common file_write
+"
+play_cmdline_objs="add_cmdline(http_recv dccp_recv udp_recv afh_recv compress_filter amp_filter prebuffer_filter file_write play)"
+play_ldflags="-lm"
 ########################################################################### snprintf
 # ===========================================================================
 #        http://www.nongnu.org/autoconf-archive/ax_func_snprintf.html
 ########################################################################### snprintf
 # ===========================================================================
 #        http://www.nongnu.org/autoconf-archive/ax_func_snprintf.html
@@ -514,6 +526,10 @@ if test ${have_core_audio} = yes; then
        audiod_cmdline_objs="$audiod_cmdline_objs osx_write.cmdline"
        audiod_ldflags="$audiod_ldflags $f"
 
        audiod_cmdline_objs="$audiod_cmdline_objs osx_write.cmdline"
        audiod_ldflags="$audiod_ldflags $f"
 
+       play_errlist_objs="$play_errlist_objs osx_write ipc"
+       play_cmdline_objs="$play_cmdline_objs osx_write.cmdline"
+       play_ldflags="$play_ldflags $f"
+
        write_errlist_objs="$write_errlist_objs osx_write ipc"
        write_cmdline_objs="$write_cmdline_objs osx_write.cmdline"
        write_ldflags="$write_ldflags $f"
        write_errlist_objs="$write_errlist_objs osx_write ipc"
        write_cmdline_objs="$write_cmdline_objs osx_write.cmdline"
        write_ldflags="$write_ldflags $f"
@@ -592,12 +608,14 @@ if test "$have_vorbis" = "yes" || test "$have_speex" = "yes"; then
        server_ldflags="$server_ldflags $ogg_libs"
        filter_ldflags="$filter_ldflags $ogg_libs"
        audiod_ldflags="$audiod_ldflags $ogg_libs"
        server_ldflags="$server_ldflags $ogg_libs"
        filter_ldflags="$filter_ldflags $ogg_libs"
        audiod_ldflags="$audiod_ldflags $ogg_libs"
+       play_ldflags="$play_ldflags $ogg_libs"
        afh_ldflags="$afh_ldflags $ogg_libs"
        recv_ldflags="$recv_ldflags $ogg_libs"
        all_errlist_objs="$all_errlist_objs ogg_afh_common"
        afh_errlist_objs="$afh_errlist_objs ogg_afh_common"
        recv_errlist_objs="$recv_errlist_objs ogg_afh_common"
        server_errlist_objs="$server_errlist_objs ogg_afh_common"
        afh_ldflags="$afh_ldflags $ogg_libs"
        recv_ldflags="$recv_ldflags $ogg_libs"
        all_errlist_objs="$all_errlist_objs ogg_afh_common"
        afh_errlist_objs="$afh_errlist_objs ogg_afh_common"
        recv_errlist_objs="$recv_errlist_objs ogg_afh_common"
        server_errlist_objs="$server_errlist_objs ogg_afh_common"
+       play_errlist_objs="$play_errlist_objs ogg_afh_common"
 fi
 if test "$have_vorbis" = "yes"; then
        all_errlist_objs="$all_errlist_objs oggdec_filter ogg_afh"
 fi
 if test "$have_vorbis" = "yes"; then
        all_errlist_objs="$all_errlist_objs oggdec_filter ogg_afh"
@@ -607,12 +625,14 @@ if test "$have_vorbis" = "yes"; then
        server_ldflags="$server_ldflags $vorbis_libs"
        filter_ldflags="$filter_ldflags $vorbis_libs"
        audiod_ldflags="$audiod_ldflags $vorbis_libs"
        server_ldflags="$server_ldflags $vorbis_libs"
        filter_ldflags="$filter_ldflags $vorbis_libs"
        audiod_ldflags="$audiod_ldflags $vorbis_libs"
+       play_ldflags="$play_ldflags $vorbis_libs"
        afh_ldflags="$afh_ldflags $vorbis_libs"
        recv_ldflags="$recv_ldflags $vorbis_libs"
 
        server_errlist_objs="$server_errlist_objs ogg_afh"
        filter_errlist_objs="$filter_errlist_objs oggdec_filter"
        audiod_errlist_objs="$audiod_errlist_objs oggdec_filter"
        afh_ldflags="$afh_ldflags $vorbis_libs"
        recv_ldflags="$recv_ldflags $vorbis_libs"
 
        server_errlist_objs="$server_errlist_objs ogg_afh"
        filter_errlist_objs="$filter_errlist_objs oggdec_filter"
        audiod_errlist_objs="$audiod_errlist_objs oggdec_filter"
+       play_errlist_objs="$play_errlist_objs oggdec_filter ogg_afh"
        afh_errlist_objs="$afh_errlist_objs ogg_afh"
        recv_errlist_objs="$recv_errlist_objs ogg_afh"
 
        afh_errlist_objs="$afh_errlist_objs ogg_afh"
        recv_errlist_objs="$recv_errlist_objs ogg_afh"
 
@@ -629,12 +649,14 @@ if test "$have_speex" = "yes"; then
        server_ldflags="$server_ldflags $speex_libs"
        filter_ldflags="$filter_ldflags $speex_libs"
        audiod_ldflags="$audiod_ldflags $speex_libs"
        server_ldflags="$server_ldflags $speex_libs"
        filter_ldflags="$filter_ldflags $speex_libs"
        audiod_ldflags="$audiod_ldflags $speex_libs"
+       play_ldflags="$play_ldflags $speex_libs"
        afh_ldflags="$afh_ldflags $speex_libs"
        recv_ldflags="$recv_ldflags $speex_libs"
 
        server_errlist_objs="$server_errlist_objs spx_afh spx_common"
        filter_errlist_objs="$filter_errlist_objs spxdec_filter spx_common"
        audiod_errlist_objs="$audiod_errlist_objs spxdec_filter spx_common"
        afh_ldflags="$afh_ldflags $speex_libs"
        recv_ldflags="$recv_ldflags $speex_libs"
 
        server_errlist_objs="$server_errlist_objs spx_afh spx_common"
        filter_errlist_objs="$filter_errlist_objs spxdec_filter spx_common"
        audiod_errlist_objs="$audiod_errlist_objs spxdec_filter spx_common"
+       play_errlist_objs="$play_errlist_objs spxdec_filter spx_afh spx_common"
        afh_errlist_objs="$afh_errlist_objs spx_afh spx_common"
        recv_errlist_objs="$recv_errlist_objs spx_afh spx_common"
 
        afh_errlist_objs="$afh_errlist_objs spx_afh spx_common"
        recv_errlist_objs="$recv_errlist_objs spx_afh spx_common"
 
@@ -671,12 +693,14 @@ if test "$have_faad" = "yes"; then
        filter_errlist_objs="$filter_errlist_objs aacdec_filter aac_common"
        afh_errlist_objs="$afh_errlist_objs aac_common aac_afh"
        audiod_errlist_objs="$audiod_errlist_objs aacdec_filter aac_common"
        filter_errlist_objs="$filter_errlist_objs aacdec_filter aac_common"
        afh_errlist_objs="$afh_errlist_objs aac_common aac_afh"
        audiod_errlist_objs="$audiod_errlist_objs aacdec_filter aac_common"
+       play_errlist_objs="$play_errlist_objs aacdec_filter aac_afh aac_common"
        server_errlist_objs="$server_errlist_objs aac_afh aac_common"
        recv_errlist_objs="$recv_errlist_objs aac_afh aac_common"
 
        server_ldflags="$server_ldflags $faad_libs -lfaad"
        filter_ldflags="$filter_ldflags $faad_libs -lfaad"
        audiod_ldflags="$audiod_ldflags $faad_libs -lfaad"
        server_errlist_objs="$server_errlist_objs aac_afh aac_common"
        recv_errlist_objs="$recv_errlist_objs aac_afh aac_common"
 
        server_ldflags="$server_ldflags $faad_libs -lfaad"
        filter_ldflags="$filter_ldflags $faad_libs -lfaad"
        audiod_ldflags="$audiod_ldflags $faad_libs -lfaad"
+       play_ldflags="$play_ldflags $faad_libs -lfaad"
        afh_ldflags="$afh_ldflags $faad_libs -lfaad"
        recv_ldflags="$afh_ldflags $faad_libs -lfaad"
 
        afh_ldflags="$afh_ldflags $faad_libs -lfaad"
        recv_ldflags="$afh_ldflags $faad_libs -lfaad"
 
@@ -718,11 +742,14 @@ if test "$have_mad" = "yes"; then
        AC_DEFINE(HAVE_MAD, 1, define to 1 if you want to build the mp3dec filter)
        filter_cmdline_objs="$filter_cmdline_objs add_cmdline(mp3dec_filter)"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(mp3dec_filter)"
        AC_DEFINE(HAVE_MAD, 1, define to 1 if you want to build the mp3dec filter)
        filter_cmdline_objs="$filter_cmdline_objs add_cmdline(mp3dec_filter)"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(mp3dec_filter)"
+       play_cmdline_objs="$play_cmdline_objs add_cmdline(mp3dec_filter)"
        all_errlist_objs="$all_errlist_objs mp3dec_filter"
        filter_errlist_objs="$filter_errlist_objs mp3dec_filter"
        audiod_errlist_objs="$audiod_errlist_objs mp3dec_filter"
        all_errlist_objs="$all_errlist_objs mp3dec_filter"
        filter_errlist_objs="$filter_errlist_objs mp3dec_filter"
        audiod_errlist_objs="$audiod_errlist_objs mp3dec_filter"
+       play_errlist_objs="$play_errlist_objs mp3dec_filter"
        filter_ldflags="$filter_ldflags $mad_libs -lmad"
        audiod_ldflags="$audiod_ldflags $mad_libs -lmad"
        filter_ldflags="$filter_ldflags $mad_libs -lmad"
        audiod_ldflags="$audiod_ldflags $mad_libs -lmad"
+       play_ldflags="$play_ldflags $mad_libs -lmad"
        audiod_audio_formats="$audiod_audio_formats mp3"
        filters="$filters mp3dec"
        AC_SUBST(mad_cppflags)
        audiod_audio_formats="$audiod_audio_formats mp3"
        filters="$filters mp3dec"
        AC_SUBST(mad_cppflags)
@@ -763,7 +790,9 @@ if test ${have_libid3tag} = yes; then
        AC_DEFINE(HAVE_LIBID3TAG, 1, define to 1 you have libid3tag)
        server_ldflags="$server_ldflags $id3tag_libs -lid3tag -lz"
        afh_ldflags="$afh_ldflags $id3tag_libs -lid3tag -lz"
        AC_DEFINE(HAVE_LIBID3TAG, 1, define to 1 you have libid3tag)
        server_ldflags="$server_ldflags $id3tag_libs -lid3tag -lz"
        afh_ldflags="$afh_ldflags $id3tag_libs -lid3tag -lz"
+       play_ldflags="$play_ldflags -lz"
        recv_ldflags="$recv_ldflags $id3tag_libs -lid3tag"
        recv_ldflags="$recv_ldflags $id3tag_libs -lid3tag"
+       play_ldflags="$play_ldflags $id3tag_libs -lid3tag"
        AC_SUBST(id3tag_cppflags)
 else
        AC_MSG_WARN([no support for id3v2 tags])
        AC_SUBST(id3tag_cppflags)
 else
        AC_MSG_WARN([no support for id3v2 tags])
@@ -796,11 +825,13 @@ if test "$have_flac" = "yes"; then
        all_errlist_objs="$all_errlist_objs flacdec_filter flac_afh"
        filter_errlist_objs="$filter_errlist_objs flacdec_filter"
        audiod_errlist_objs="$audiod_errlist_objs flacdec_filter"
        all_errlist_objs="$all_errlist_objs flacdec_filter flac_afh"
        filter_errlist_objs="$filter_errlist_objs flacdec_filter"
        audiod_errlist_objs="$audiod_errlist_objs flacdec_filter"
+       play_errlist_objs="$play_errlist_objs flacdec_filter flac_afh"
        afh_errlist_objs="$afh_errlist_objs flac_afh"
        server_errlist_objs="$server_errlist_objs flac_afh"
        recv_errlist_objs="$recv_errlist_objs flac_afh"
        filter_ldflags="$filter_ldflags $flac_libs -lFLAC"
        audiod_ldflags="$audiod_ldflags $flac_libs -lFLAC"
        afh_errlist_objs="$afh_errlist_objs flac_afh"
        server_errlist_objs="$server_errlist_objs flac_afh"
        recv_errlist_objs="$recv_errlist_objs flac_afh"
        filter_ldflags="$filter_ldflags $flac_libs -lFLAC"
        audiod_ldflags="$audiod_ldflags $flac_libs -lFLAC"
+       play_ldflags="$play_ldflags $flac_libs -lFLAC"
        server_ldflags="$server_ldflags $flac_libs -lFLAC"
        afh_ldflags="$afh_ldflags $flac_libs -lFLAC"
        recv_ldflags="$afh_ldflags $flac_libs -lFLAC"
        server_ldflags="$server_ldflags $flac_libs -lFLAC"
        afh_ldflags="$afh_ldflags $flac_libs -lFLAC"
        recv_ldflags="$afh_ldflags $flac_libs -lFLAC"
@@ -824,7 +855,10 @@ msg="=> will not build oss writer"
 
 AC_CHECK_HEADER(sys/soundcard.h, [
        audiod_errlist_objs="$audiod_errlist_objs oss_write"
 
 AC_CHECK_HEADER(sys/soundcard.h, [
        audiod_errlist_objs="$audiod_errlist_objs oss_write"
+       play_errlist_objs="$play_errlist_objs oss_write"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(oss_write)"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(oss_write)"
+       play_cmdline_objs="$play_cmdline_objs add_cmdline(oss_write)"
+
        write_errlist_objs="$write_errlist_objs oss_write"
        write_cmdline_objs="$write_cmdline_objs add_cmdline(oss_write)"
        fade_errlist_objs="$fade_errlist_objs oss_mix"
        write_errlist_objs="$write_errlist_objs oss_write"
        write_cmdline_objs="$write_cmdline_objs add_cmdline(oss_write)"
        fade_errlist_objs="$fade_errlist_objs oss_mix"
@@ -837,6 +871,7 @@ AC_CHECK_HEADER(sys/soundcard.h, [
 
        AC_CHECK_LIB(ossaudio, _oss_ioctl, [
                        audiod_ldflags="$audiod_ldflags -lossaudio"
 
        AC_CHECK_LIB(ossaudio, _oss_ioctl, [
                        audiod_ldflags="$audiod_ldflags -lossaudio"
+                       play_ldflags="$play_ldflags -lossaudio"
                        write_ldflags="$write_ldflags -lossaudio"
                        fade_ldflags="$fade_ldflags -lossaudio"
                ]
                        write_ldflags="$write_ldflags -lossaudio"
                        fade_ldflags="$fade_ldflags -lossaudio"
                ]
@@ -880,6 +915,10 @@ if test "$have_alsa" = "yes"; then
        audiod_errlist_objs="$audiod_errlist_objs alsa_write"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(alsa_write)"
        audiod_ldflags="$audiod_ldflags -lasound"
        audiod_errlist_objs="$audiod_errlist_objs alsa_write"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(alsa_write)"
        audiod_ldflags="$audiod_ldflags -lasound"
+       play_errlist_objs="$play_errlist_objs alsa_write"
+       play_cmdline_objs="$play_cmdline_objs add_cmdline(alsa_write)"
+       play_ldflags="$play_ldflags -lasound"
+
        write_errlist_objs="$write_errlist_objs alsa_write"
        write_cmdline_objs="$write_cmdline_objs add_cmdline(alsa_write)"
        write_ldflags="$write_ldflags -lasound"
        write_errlist_objs="$write_errlist_objs alsa_write"
        write_cmdline_objs="$write_cmdline_objs add_cmdline(alsa_write)"
        write_ldflags="$write_ldflags -lasound"
@@ -983,6 +1022,10 @@ if test "$have_ao" = "yes"; then
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(ao_write)"
        audiod_ldflags="$audiod_ldflags -lao -lpthread"
 
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(ao_write)"
        audiod_ldflags="$audiod_ldflags -lao -lpthread"
 
+       play_errlist_objs="$play_errlist_objs ao_write"
+       play_cmdline_objs="$play_cmdline_objs add_cmdline(ao_write)"
+       play_ldflags="$play_ldflags -lao -lpthread"
+
        write_errlist_objs="$write_errlist_objs ao_write"
        write_cmdline_objs="$write_cmdline_objs add_cmdline(ao_write)"
        write_ldflags="$write_ldflags $ao_libs -lao -lpthread"
        write_errlist_objs="$write_errlist_objs ao_write"
        write_cmdline_objs="$write_cmdline_objs add_cmdline(ao_write)"
        write_ldflags="$write_ldflags $ao_libs -lao -lpthread"
@@ -1020,12 +1063,12 @@ AC_CHECK_HEADERS([readline/readline.h], [
 ])
 if test "$have_readline" = "yes"; then
        readline_libs="$readline_libs -lreadline"
 ])
 if test "$have_readline" = "yes"; then
        readline_libs="$readline_libs -lreadline"
-       AC_SEARCH_LIBS([rl_replace_line], [readline], [], [have_readline="no"])
+       AC_SEARCH_LIBS([rl_free_keymap], [readline], [], [have_readline="no"])
        if test "$have_readline" = "no"; then # try with -lcurses
                 # clear cache
                AC_MSG_NOTICE([trying again with -lcurses])
        if test "$have_readline" = "no"; then # try with -lcurses
                 # clear cache
                AC_MSG_NOTICE([trying again with -lcurses])
-                unset ac_cv_search_rl_replace_line 2> /dev/null
-               AC_SEARCH_LIBS([rl_replace_line], [readline], [
+                unset ac_cv_search_rl_free_keymap 2> /dev/null
+               AC_SEARCH_LIBS([rl_free_keymap], [readline], [
                        have_readline=yes
                        readline_libs="$readline_libs -lcurses"
                ], [], [-lcurses])
                        have_readline=yes
                        readline_libs="$readline_libs -lcurses"
                ], [], [-lcurses])
@@ -1033,8 +1076,8 @@ if test "$have_readline" = "yes"; then
        if test "$have_readline" = "no"; then # try with -ltermcap
                 # clear cache
                AC_MSG_NOTICE([trying again with -ltermcap])
        if test "$have_readline" = "no"; then # try with -ltermcap
                 # clear cache
                AC_MSG_NOTICE([trying again with -ltermcap])
-                unset ac_cv_search_rl_replace_line 2> /dev/null
-               AC_SEARCH_LIBS([rl_replace_line], [readline], [
+                unset ac_cv_search_rl_free_keymap 2> /dev/null
+               AC_SEARCH_LIBS([rl_free_keymap], [readline], [
                        have_readline=yes
                        readline_libs="$readline_libs -ltermcap"
                ], [], [-ltermcap])
                        have_readline=yes
                        readline_libs="$readline_libs -ltermcap"
                ], [], [-ltermcap])
@@ -1047,6 +1090,8 @@ if test "$have_readline" = "yes"; then
        client_ldflags="$client_ldflags $readline_libs"
        audioc_errlist_objs="$audioc_errlist_objs buffer_tree interactive sched time"
        audioc_ldflags="$audioc_ldflags $readline_libs"
        client_ldflags="$client_ldflags $readline_libs"
        audioc_errlist_objs="$audioc_errlist_objs buffer_tree interactive sched time"
        audioc_ldflags="$audioc_ldflags $readline_libs"
+       play_errlist_objs="$play_errlist_objs interactive"
+       play_ldflags="$play_ldflags $readline_libs"
        AC_SUBST(readline_cppflags)
        AC_DEFINE(HAVE_READLINE, 1, define to 1 to turn on readline support)
 else
        AC_SUBST(readline_cppflags)
        AC_DEFINE(HAVE_READLINE, 1, define to 1 to turn on readline support)
 else
@@ -1106,6 +1151,8 @@ write_objs="$write_cmdline_objs $write_errlist_objs"
 client_objs="$client_cmdline_objs $client_errlist_objs"
 audioc_objs="$audioc_cmdline_objs $audioc_errlist_objs"
 afh_objs="$afh_cmdline_objs $afh_errlist_objs"
 client_objs="$client_cmdline_objs $client_errlist_objs"
 audioc_objs="$audioc_cmdline_objs $audioc_errlist_objs"
 afh_objs="$afh_cmdline_objs $afh_errlist_objs"
+play_objs="$play_cmdline_objs $play_errlist_objs"
+
 
 AC_SUBST(recv_objs, add_dot_o($recv_objs))
 AC_SUBST(recv_ldflags, $recv_ldflags)
 
 AC_SUBST(recv_objs, add_dot_o($recv_objs))
 AC_SUBST(recv_ldflags, $recv_ldflags)
@@ -1151,6 +1198,13 @@ AC_SUBST(gui_objs, add_dot_o($gui_objs))
 AC_DEFINE_UNQUOTED(INIT_GUI_ERRLISTS,
        objlist_to_errlist($gui_errlist_objs), errors used by para_gui)
 
 AC_DEFINE_UNQUOTED(INIT_GUI_ERRLISTS,
        objlist_to_errlist($gui_errlist_objs), errors used by para_gui)
 
+AC_SUBST(play_objs, add_dot_o($play_objs))
+AC_SUBST(play_ldflags, $play_ldflags)
+AC_DEFINE_UNQUOTED(INIT_PLAY_ERRLISTS,
+       objlist_to_errlist($play_errlist_objs), errors used by para_play)
+
+AC_MSG_NOTICE(play objs: $play_objs)
+
 enum="$(for i in $filters; do printf "${i}_FILTER, " | tr '[a-z]' '[A-Z]'; done)"
 AC_DEFINE_UNQUOTED(FILTER_ENUM, $enum NUM_SUPPORTED_FILTERS,
        enum of supported filters)
 enum="$(for i in $filters; do printf "${i}_FILTER, " | tr '[a-z]' '[A-Z]'; done)"
 AC_DEFINE_UNQUOTED(FILTER_ENUM, $enum NUM_SUPPORTED_FILTERS,
        enum of supported filters)