build: Compute $all_errlist_objs.
[paraslash.git] / configure.ac
index 47817e8..46fb18c 100644 (file)
@@ -92,16 +92,6 @@ AC_CHECK_FUNCS([atexit dup2 memchr memmove memset \
 AC_DEFUN([add_cmdline],[$(for i in $@; do printf "${i}.cmdline "; done)])
 
 
 AC_DEFUN([add_cmdline],[$(for i in $@; do printf "${i}.cmdline "; done)])
 
 
-all_errlist_objs="mp3_afh afh_common net string signal time daemon
-       stat afh amp_filter fd ringbuffer sched audiod
-       grab_client filter_common wav_filter compress_filter http_recv
-       dccp_recv recv_common write_common file_write audiod_command
-       client_common recv stdout filter stdin audioc write client
-       exec send_common ggo udp_recv color fec fecdec_filter
-       prebuffer_filter bitstream imdct check_wav
-       wma_afh wma_common wmadec_filter buffer_tree crypt_common
-       gui gui_theme sideband afh_recv play version"
-
 executables="recv filter audioc write client afh audiod play"
 
 recv_cmdline_objs="add_cmdline(recv http_recv dccp_recv udp_recv afh_recv)"
 executables="recv filter audioc write client afh audiod play"
 
 recv_cmdline_objs="add_cmdline(recv http_recv dccp_recv udp_recv afh_recv)"
@@ -280,11 +270,6 @@ else
                version
                ggo
        "
                version
                ggo
        "
-       all_errlist_objs="$all_errlist_objs server vss command
-               http_send close_on_fork mm ipc dccp_send user_list
-               chunk_queue afs aft mood score attribute blob playlist
-               acl udp_send"
-
        server_ldflags=""
        audio_format_handlers="mp3 wma"
        AC_SUBST(osl_cppflags)
        server_ldflags=""
        audio_format_handlers="mp3 wma"
        AC_SUBST(osl_cppflags)
@@ -349,7 +334,6 @@ if test "$check_openssl" = "yes"; then
                client_ldflags="$client_ldflags $openssl_libs"
                audiod_ldflags="$audiod_ldflags $openssl_libs"
 
                client_ldflags="$client_ldflags $openssl_libs"
                audiod_ldflags="$audiod_ldflags $openssl_libs"
 
-               all_errlist_objs="$all_errlist_objs crypt"
                server_errlist_objs="$server_errlist_objs crypt"
                client_errlist_objs="$client_errlist_objs crypt"
                audiod_errlist_objs="$audiod_errlist_objs crypt"
                server_errlist_objs="$server_errlist_objs crypt"
                client_errlist_objs="$client_errlist_objs crypt"
                audiod_errlist_objs="$audiod_errlist_objs crypt"
@@ -392,7 +376,6 @@ if test "$check_gcrypt" = "yes"; then
                client_ldflags="$client_ldflags $gcrypt_libs"
                audiod_ldflags="$audiod_ldflags $gcrypt_libs"
 
                client_ldflags="$client_ldflags $gcrypt_libs"
                audiod_ldflags="$audiod_ldflags $gcrypt_libs"
 
-               all_errlist_objs="$all_errlist_objs gcrypt"
                server_errlist_objs="$server_errlist_objs gcrypt"
                client_errlist_objs="$client_errlist_objs gcrypt"
                audiod_errlist_objs="$audiod_errlist_objs gcrypt"
                server_errlist_objs="$server_errlist_objs gcrypt"
                client_errlist_objs="$client_errlist_objs gcrypt"
                audiod_errlist_objs="$audiod_errlist_objs gcrypt"
@@ -526,13 +509,6 @@ if test ${have_core_audio} = yes; then
        f4="-framework CoreServices"
        f="$f1 $f2 $f3 $f4"
 
        f4="-framework CoreServices"
        f="$f1 $f2 $f3 $f4"
 
-       all_errlist_objs="$all_errlist_objs osx_write"
-       # ipc is linked into para_server server and into the osx writer. If osl
-       # was not found, para_server will not be built and ipc has not yet been
-       # added to the list of all objects, so we must add it here.
-       if test "$have_osl" = "no"; then
-               all_errlist_objs="$all_errlist_objs ipc"
-       fi
        audiod_errlist_objs="$audiod_errlist_objs osx_write ipc"
        audiod_cmdline_objs="$audiod_cmdline_objs osx_write.cmdline"
        audiod_ldflags="$audiod_ldflags $f"
        audiod_errlist_objs="$audiod_errlist_objs osx_write ipc"
        audiod_cmdline_objs="$audiod_cmdline_objs osx_write.cmdline"
        audiod_ldflags="$audiod_ldflags $f"
@@ -642,14 +618,12 @@ if test "$have_vorbis" = "yes" || \
        play_ldflags="$play_ldflags $ogg_libs"
        afh_ldflags="$afh_ldflags $ogg_libs"
        recv_ldflags="$recv_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"
        play_errlist_objs="$play_errlist_objs ogg_afh_common"
 fi
 if test "$have_vorbis" = "yes"; then
        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"
        AC_DEFINE(HAVE_OGGVORBIS, 1, define to 1 to turn on ogg/vorbis support)
        filters="$filters oggdec"
        vorbis_libs="-lvorbis -lvorbisfile"
        AC_DEFINE(HAVE_OGGVORBIS, 1, define to 1 to turn on ogg/vorbis support)
        filters="$filters oggdec"
        vorbis_libs="-lvorbis -lvorbisfile"
@@ -673,7 +647,6 @@ else
        AC_MSG_WARN([no ogg/vorbis $msg])
 fi
 if test "$have_speex" = "yes"; then
        AC_MSG_WARN([no ogg/vorbis $msg])
 fi
 if test "$have_speex" = "yes"; then
-       all_errlist_objs="$all_errlist_objs spxdec_filter spx_afh spx_common"
        AC_DEFINE(HAVE_SPEEX, 1, define to 1 to turn on ogg/speex support)
        filters="$filters spxdec"
        speex_libs="-lspeex"
        AC_DEFINE(HAVE_SPEEX, 1, define to 1 to turn on ogg/speex support)
        filters="$filters spxdec"
        speex_libs="-lspeex"
@@ -697,7 +670,6 @@ else
        AC_MSG_WARN([no ogg/speex $msg])
 fi
 if test "$have_opus" = "yes"; then
        AC_MSG_WARN([no ogg/speex $msg])
 fi
 if test "$have_opus" = "yes"; then
-       all_errlist_objs="$all_errlist_objs opusdec_filter opus_afh opus_common"
        AC_DEFINE(HAVE_OPUS, 1, define to 1 to turn on ogg/opus support)
        filters="$filters opusdec"
        opus_libs="-lopus"
        AC_DEFINE(HAVE_OPUS, 1, define to 1 to turn on ogg/opus support)
        filters="$filters opusdec"
        opus_libs="-lopus"
@@ -744,7 +716,6 @@ AC_CHECK_HEADER(neaacdec.h, [], have_faad=no)
 AC_CHECK_LIB([faad], [NeAACDecOpen], [], have_faad=no)
 if test "$have_faad" = "yes"; then
        AC_DEFINE(HAVE_FAAD, 1, define to 1 if you want to build the aacdec filter)
 AC_CHECK_LIB([faad], [NeAACDecOpen], [], have_faad=no)
 if test "$have_faad" = "yes"; then
        AC_DEFINE(HAVE_FAAD, 1, define to 1 if you want to build the aacdec filter)
-       all_errlist_objs="$all_errlist_objs aac_common aacdec_filter aac_afh"
        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"
@@ -798,7 +769,6 @@ if test "$have_mad" = "yes"; then
        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)"
        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"
        play_errlist_objs="$play_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"
@@ -877,7 +847,6 @@ AC_CHECK_HEADER(FLAC/stream_decoder.h, [], have_flac=no)
 AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], have_flac=no, -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_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], have_flac=no, -logg -lm)
 if test "$have_flac" = "yes"; then
        AC_DEFINE(HAVE_FLAC, 1, define to 1 if you want to build the 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"
        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"
@@ -917,7 +886,6 @@ AC_CHECK_HEADER(sys/soundcard.h, [
        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"
-       all_errlist_objs="$all_errlist_objs oss_write oss_mix"
 
        writers="$writers oss"
        default_writer="OSS_WRITE"
 
        writers="$writers oss"
        default_writer="OSS_WRITE"
@@ -979,7 +947,6 @@ if test "$have_alsa" = "yes"; then
        write_ldflags="$write_ldflags -lasound"
        fade_errlist_objs="$fade_errlist_objs alsa_mix"
        fade_ldflags="$fade_ldflags -lasound"
        write_ldflags="$write_ldflags -lasound"
        fade_errlist_objs="$fade_errlist_objs alsa_mix"
        fade_ldflags="$fade_ldflags -lasound"
-       all_errlist_objs="$all_errlist_objs alsa_write alsa_mix"
 
        writers="$writers alsa"
        default_writer="ALSA_WRITE"
 
        writers="$writers alsa"
        default_writer="ALSA_WRITE"
@@ -994,7 +961,6 @@ LIBS="$OLD_LIBS"
 if test -n "$mixers"; then
        build_fade="yes"
        executables="$executables fade"
 if test -n "$mixers"; then
        build_fade="yes"
        executables="$executables fade"
-       all_errlist_objs="$all_errlist_objs fade"
        fade_errlist_objs="$fade_errlist_objs fade exec string fd version ggo"
        fade_cmdline_objs="add_cmdline(fade)"
        fade_objs="$fade_cmdline_objs $fade_errlist_objs"
        fade_errlist_objs="$fade_errlist_objs fade exec string fd version ggo"
        fade_cmdline_objs="add_cmdline(fade)"
        fade_objs="$fade_cmdline_objs $fade_errlist_objs"
@@ -1073,7 +1039,6 @@ if test "$have_ao" = "yes"; then
        ])
 fi
 if test "$have_ao" = "yes"; then
        ])
 fi
 if test "$have_ao" = "yes"; then
-       all_errlist_objs="$all_errlist_objs ao_write"
        audiod_errlist_objs="$audiod_errlist_objs ao_write"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(ao_write)"
        audiod_ldflags="$audiod_ldflags -lao -lpthread"
        audiod_errlist_objs="$audiod_errlist_objs ao_write"
        audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(ao_write)"
        audiod_ldflags="$audiod_ldflags -lao -lpthread"
@@ -1148,7 +1113,6 @@ if test "$have_readline" = "yes"; then
 fi
 
 if test "$have_readline" = "yes"; then
 fi
 
 if test "$have_readline" = "yes"; then
-       all_errlist_objs="$all_errlist_objs interactive"
        client_errlist_objs="$client_errlist_objs interactive"
        client_ldflags="$client_ldflags $readline_libs"
        audioc_errlist_objs="$audioc_errlist_objs buffer_tree interactive sched time"
        client_errlist_objs="$client_errlist_objs interactive"
        client_ldflags="$client_ldflags $readline_libs"
        audioc_errlist_objs="$audioc_errlist_objs buffer_tree interactive sched time"
@@ -1186,7 +1150,6 @@ AC_CHECK_HEADER(samplerate.h, [], have_samplerate=no)
 AC_CHECK_LIB([samplerate], [src_process], [], have_samplerate=no, [])
 
 if test "$have_samplerate" = "yes"; then
 AC_CHECK_LIB([samplerate], [src_process], [], have_samplerate=no, [])
 
 if test "$have_samplerate" = "yes"; then
-       all_errlist_objs="$all_errlist_objs resample_filter"
        filter_errlist_objs="$filter_errlist_objs resample_filter check_wav"
        filter_cmdline_objs="$filter_cmdline_objs add_cmdline(resample_filter)"
        audiod_errlist_objs="$audiod_errlist_objs resample_filter check_wav"
        filter_errlist_objs="$filter_errlist_objs resample_filter check_wav"
        filter_cmdline_objs="$filter_cmdline_objs add_cmdline(resample_filter)"
        audiod_errlist_objs="$audiod_errlist_objs resample_filter check_wav"
@@ -1206,6 +1169,32 @@ LDFLAGS="$OLD_LDFLAGS"
 LIBS="$OLD_LIBS"
 ############################################################# error2.h
 AC_MSG_NOTICE(creating error2.h)
 LIBS="$OLD_LIBS"
 ############################################################# error2.h
 AC_MSG_NOTICE(creating error2.h)
+
+# these are always built
+all_errlist_objs="
+       $recv_errlist_objs
+       $filter_errlist_objs
+       $audioc_errlist_objs
+       $write_errlist_objs
+       $client_errlist_objs
+       $afh_errlist_objs
+       $audiod_errlist_objs
+       $play_errlist_objs
+"
+
+# optional executables
+if test "$build_server" = "yes"; then
+       all_errlist_objs="$all_errlist_objs $server_errlist_objs"
+fi
+if test "$build_gui" = "yes"; then
+       all_errlist_objs="$all_errlist_objs $gui_errlist_objs"
+fi
+if test "$build_fade" = "yes"; then
+       all_errlist_objs="$all_errlist_objs $fade_errlist_objs"
+fi
+
+all_errlist_objs="$(echo $all_errlist_objs | tr ' ' '\n' | sort | uniq)"
+
 for i in $executables; do
        echo "$i: "
        eval echo \$${i}_errlist_objs
 for i in $executables; do
        echo "$i: "
        eval echo \$${i}_errlist_objs