-########################################################################### osx
-
-AC_MSG_CHECKING(for CoreAudio (MacOs))
-AC_TRY_LINK([
- #include <CoreAudio/CoreAudio.h>
-],[
- AudioDeviceID id;
-],[have_core_audio=yes],[have_core_audio=no])
-AC_MSG_RESULT($have_core_audio)
-if test ${have_core_audio} = yes; then
- f1="-framework CoreAudio"
- f2="-framework AudioToolbox"
- f3="-framework AudioUnit"
- 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"
-
- write_errlist_objs="$write_errlist_objs osx_write ipc"
- write_cmdline_objs="$write_cmdline_objs osx_write.cmdline"
- write_ldflags="$write_ldflags $f"
- writers="$writers osx"
- default_writer="OSX_WRITE"
- AC_DEFINE(HAVE_CORE_AUDIO, 1, define to 1 on Mac Os X)
-fi
-########################################################### ogg/vorbis/speex
-have_ogg="yes"
-OLD_CPPFLAGS="$CPPFLAGS"
-OLD_LD_FLAGS="$LDFLAGS"
-OLD_LIBS="$LIBS"
-AC_ARG_WITH(ogg_headers, [AC_HELP_STRING(--with-ogg-headers=dir,
- [look for ogg headers also in dir])])
-AC_ARG_WITH(ogg_libs, [AC_HELP_STRING(--with-ogg-libs=dir,
- [look for ogg libs also in dir])])
-AC_ARG_WITH(vorbis_headers, [AC_HELP_STRING(--with-vorbis-headers=dir,
- [look for vorbis headers also in dir])])
-AC_ARG_WITH(vorbis_libs, [AC_HELP_STRING(--with-vorbis-libs=dir,
- [look for vorbis libs also in dir])])
-AC_ARG_WITH(speex_headers, [AC_HELP_STRING(--with-speex-headers=dir,
- [look for speex headers also in dir])])
-AC_ARG_WITH(speex_libs, [AC_HELP_STRING(--with-speex-libs=dir,
- [look for speex libs also in dir])])
-
-if test -n "$with_ogg_headers"; then
- ogg_cppflags="-I$with_ogg_headers"
- CPPFLAGS="$CPPFLAGS $ogg_cppflags"
-fi
-if test -n "$with_ogg_libs"; then
- ogg_libs="-L$with_ogg_libs"
- LDFLAGS="$LDFLAGS $ogg_libs"
-fi
-AC_CHECK_HEADERS([ogg/ogg.h], [], [ have_ogg="no"; ])
-AC_CHECK_LIB([ogg], [ogg_stream_init], [], [ have_ogg="no" ])
-
-have_vorbis="yes"
-have_speex="yes"
-if test "$have_ogg" = "yes"; then
- # vorbis
- if test -n "$with_vorbis_headers"; then
- vorbis_cppflags="-I$with_vorbis_headers"
- CPPFLAGS="$CPPFLAGS $vorbis_cppflags"
+########################################################################### ogg
+STASH_FLAGS
+LIB_ARG_WITH([ogg], [-logg])
+HAVE_OGG=yes
+AC_CHECK_HEADERS([ogg/ogg.h], [], [HAVE_OGG=no])
+AC_CHECK_LIB([ogg], [ogg_stream_init], [], [HAVE_OGG=no])
+AC_CHECK_LIB([ogg], [ogg_stream_flush_fill], [
+ AC_DEFINE(HAVE_OGG_STREAM_FLUSH_FILL, 1, [libogg >= 1.3.0])])
+LIB_SUBST_FLAGS(ogg)
+UNSTASH_FLAGS
+######################################################################### vorbis
+STASH_FLAGS
+LIB_ARG_WITH([vorbis], [-lvorbis -lvorbisfile])
+HAVE_VORBIS=yes
+AC_CHECK_HEADERS([vorbis/codec.h], [], [HAVE_VORBIS=no])
+AC_CHECK_LIB([vorbis], [vorbis_info_init], [], [HAVE_VORBIS=no])
+LIB_SUBST_FLAGS(vorbis)
+UNSTASH_FLAGS
+######################################################################### speex
+STASH_FLAGS
+LIB_ARG_WITH([speex], [-lspeex])
+HAVE_SPEEX=yes
+AC_CHECK_HEADERS([speex/speex.h], [], [HAVE_SPEEX=no])
+AC_CHECK_LIB([speex], [speex_decoder_init], [], [HAVE_SPEEX=no])
+LIB_SUBST_FLAGS(speex)
+UNSTASH_FLAGS
+######################################################################### opus
+STASH_FLAGS
+LIB_ARG_WITH([opus], [-lopus])
+HAVE_OPUS=yes
+AC_CHECK_HEADERS([opus/opus.h], [], [HAVE_OPUS=no])
+AC_CHECK_LIB([opus], [opus_multistream_decode], [], [HAVE_OPUS=no])
+LIB_SUBST_FLAGS(opus)
+UNSTASH_FLAGS
+########################################################################### flac
+STASH_FLAGS
+LIB_ARG_WITH([flac], [-lFLAC -lm])
+HAVE_FLAC=yes
+AC_CHECK_HEADER(FLAC/stream_decoder.h, [], HAVE_FLAC=no)
+AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], HAVE_FLAC=no)
+LIB_SUBST_FLAGS(flac)
+UNSTASH_FLAGS
+
+# some helper functions for codecs which use the ogg container format
+AC_DEFUN([NEED_OGG_OBJECTS], [{
+ test "$HAVE_OGG" = 'yes' -a \( \
+ "$HAVE_VORBIS" = 'yes' \
+ -o "$HAVE_SPEEX" = 'yes' \
+ -o "$HAVE_OPUS" = 'yes' \
+ -o "$HAVE_FLAC" = 'yes' \
+ \)
+}])
+AC_DEFUN([NEED_VORBIS_OBJECTS], [{
+ test "$HAVE_OGG" = 'yes' -a "$HAVE_VORBIS" = 'yes'
+}])
+AC_DEFUN([NEED_SPEEX_OBJECTS], [{
+ test "$HAVE_OGG" = 'yes' -a "$HAVE_SPEEX" = 'yes'
+}])
+AC_DEFUN([NEED_OPUS_OBJECTS], [{
+ test "$HAVE_OGG" = 'yes' -a "$HAVE_OPUS" = 'yes'
+}])
+AC_DEFUN([NEED_FLAC_OBJECTS], [{
+ test "$HAVE_OGG" = 'yes' -a "$HAVE_FLAC" = 'yes'
+}])
+########################################################################### faad
+STASH_FLAGS
+LIB_ARG_WITH([faad], [-lfaad -lmp4ff])
+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
+STASH_FLAGS
+LIB_ARG_WITH([mad], [-lmad])
+HAVE_MAD=yes
+AC_CHECK_HEADER(mad.h, [], HAVE_MAD=no)
+AC_CHECK_LIB([mad], [mad_stream_init], [], HAVE_MAD=no)
+LIB_SUBST_FLAGS(mad)
+UNSTASH_FLAGS
+###################################################################### libid3tag
+STASH_FLAGS
+LIB_ARG_WITH([id3tag], [-lid3tag -lz])
+HAVE_ID3TAG=yes
+AC_CHECK_HEADER(id3tag.h, [], HAVE_ID3TAG=no)
+AC_CHECK_LIB([id3tag], [id3_file_fdopen], [], HAVE_ID3TAG=no)
+LIB_SUBST_FLAGS(id3tag)
+UNSTASH_FLAGS
+########################################################################### oss
+STASH_FLAGS
+LIB_ARG_WITH([oss], [])
+AC_CHECK_HEADER(sys/soundcard.h, [HAVE_OSS=yes], [HAVE_OSS=no])
+AC_CHECK_LIB(ossaudio, _oss_ioctl, [oss_ldflags="$oss_ldflags -lossaudio"], [])
+LIB_SUBST_FLAGS(oss)
+UNSTASH_FLAGS
+########################################################################### alsa
+STASH_FLAGS
+LIB_ARG_WITH([alsa], [-lasound])
+HAVE_ALSA=yes
+AC_CHECK_HEADER(alsa/asoundlib.h, [], HAVE_ALSA=no)
+AC_CHECK_LIB([asound], [snd_pcm_open], [], HAVE_ALSA=no)
+LIB_SUBST_FLAGS(alsa)
+UNSTASH_FLAGS
+######################################################################### pthread
+STASH_FLAGS
+LIB_ARG_WITH([pthread], [-lpthread])
+HAVE_PTHREAD=yes
+AC_CHECK_HEADER(pthread.h, [], HAVE_PTHREAD=no)
+AC_CHECK_LIB([pthread], [pthread_create], [], HAVE_PTHREAD=no)
+LIB_SUBST_FLAGS(pthread)
+UNSTASH_FLAGS
+########################################################################### libao
+STASH_FLAGS
+LIB_ARG_WITH([ao], [-lao])
+HAVE_AO=yes
+AC_CHECK_HEADER(ao/ao.h, [], HAVE_AO=no)
+AC_CHECK_LIB([ao], [ao_initialize], [], HAVE_AO=no)
+LIB_SUBST_FLAGS(ao)
+UNSTASH_FLAGS
+AC_DEFUN([NEED_AO_OBJECTS], [{ test $HAVE_AO = yes -a $HAVE_PTHREAD = yes; }])
+######################################################################## readline
+STASH_FLAGS
+AC_SEARCH_LIBS([tgetent], [tinfo curses terminfo termcap])
+LIB_ARG_WITH([readline], [-lreadline $LIBS])
+HAVE_READLINE=yes
+AC_CHECK_HEADER([readline/readline.h], [], [HAVE_READLINE=no])
+AC_CHECK_LIB([readline], [rl_free_keymap], [], HAVE_READLINE=no)
+AC_CHECK_DECL(
+ [rl_free_keymap],
+ [AC_DEFINE(RL_FREE_KEYMAP_DECLARED, 1, readline >= 6.3)],
+ [],
+ [
+ #include <stdio.h>
+ #include <readline/readline.h>
+ ]
+)
+LIB_SUBST_FLAGS(readline)
+UNSTASH_FLAGS
+############################################################# libsamplerate
+STASH_FLAGS
+LIB_ARG_WITH([samplerate], [-lsamplerate])
+HAVE_SAMPLERATE=yes
+AC_CHECK_HEADER(samplerate.h, [], HAVE_SAMPLERATE=no)
+AC_CHECK_LIB([samplerate], [src_process], [], HAVE_SAMPLERATE=no)
+LIB_SUBST_FLAGS(samplerate)
+UNSTASH_FLAGS
+######################################################################### server
+if test -n "$CRYPTOLIB" && test $HAVE_OSL = yes; then
+ build_server="yes"
+ executables="$executables server"
+ server_errlist_objs="
+ server
+ afh_common
+ mp3_afh
+ vss
+ command
+ net
+ string
+ signal
+ time
+ daemon
+ http_send
+ close_on_fork
+ mm
+ crypt_common
+ base64
+ ipc
+ dccp_send
+ fd
+ user_list
+ chunk_queue
+ afs
+ aft
+ mood
+ score
+ attribute
+ blob
+ playlist
+ sched
+ acl
+ send_common
+ udp_send
+ color
+ fec
+ wma_afh
+ wma_common
+ sideband
+ version
+ "
+ if test "$CRYPTOLIB" = openssl; then
+ server_errlist_objs="$server_errlist_objs crypt"
+ else
+ server_errlist_objs="$server_errlist_objs gcrypt"