2 # Process this file with autoconf to produce a configure script.
6 AC_INIT([paraslash], [m4_esyscmd_s(./GIT-VERSION-GEN)],
7 [maan@tuebingen.mpg.de], [], [http://people.tuebingen.mpg.de/maan/paraslash/])
8 AC_CONFIG_HEADERS([config.h])
10 AC_CONFIG_FILES([Makefile])
11 AC_DEFUN([add_dot_o],[$(for i in $@; do printf "$i.o "; done)])
12 AC_DEFUN([add_cmdline],[$(for i in $@; do printf "${i}.cmdline "; done)])
13 AC_DEFUN([make_errlist_defines], \
15 printf "DEFINE_ERRLIST($(echo $i | tr 'a-z' 'A-Z'));"; \
18 AC_DEFUN([make_para_errlists], \
20 printf "PARA_ERRLIST($(echo $i | tr 'a-z' 'A-Z')), "; \
23 AC_DEFUN([objlist_to_errlist],[ \
24 make_errlist_defines($@) \
25 [const char **para_errlist[[]]] = {make_para_errlists($@)} \
27 AC_DEFUN([LIB_ARG_WITH], [
28 AC_ARG_WITH($1-headers, [AS_HELP_STRING(--with-$1-headers=dir,
29 [look for $1 headers in dir])])
30 AC_ARG_WITH($1-libs, [AS_HELP_STRING(--with-$1-libs=dir,
31 [look for $1 libraries in dir])])
32 if test -n "$with_$1_headers"; then
33 $1_cppflags="-I$with_$1_headers"
34 CPPFLAGS="$CPPFLAGS $$1_cppflags"
36 if test -n "$with_$1_libs"; then
37 $1_ldflags="-L$with_$1_libs $2"
41 LDFLAGS="$LDFLAGS $$1_ldflags"
44 AC_DEFUN([STASH_FLAGS], [
45 OLD_CPPFLAGS="$CPPFLAGS"
46 OLD_LDFLAGS="$LDFLAGS"
50 AC_DEFUN([UNSTASH_FLAGS], [
51 CPPFLAGS="$OLD_CPPFLAGS"
52 LDFLAGS="$OLD_LDFLAGS"
55 AC_DEFUN([LIB_SUBST_FLAGS], [
56 if test "$HAVE_[]m4_toupper([$1])" == 'yes'; then
57 AC_DEFINE(HAVE_[]m4_toupper([$1]), 1,
58 define to 1 to turn on $1 support)
63 AC_SUBST(HAVE_[]m4_toupper([$1]))
68 AC_PATH_PROG(UNAMEPATH, uname, no)
69 if test "$UNAMEPATH" = "no"; then
70 AC_MSG_ERROR(unable to determine system type)
72 AC_MSG_CHECKING(os type)
73 OSTYPE="`$UNAMEPATH -s`"
74 AC_MSG_RESULT("$OSTYPE")
76 if test "$OSTYPE" = "SunOS"; then
77 # needed on SunOS for socket magic
78 arch_cppflags="-D_XOPEN_SOURCE=500 -D__EXTENSIONS__"
79 AC_SUBST(arch_cppflags)
84 AC_PATH_PROG([gengetopt], [gengetopt])
85 test -z "$gengetopt" && AC_MSG_ERROR(
86 [gengetopt is required to build this package])
88 AC_PATH_PROG([help2man], [help2man])
89 test -z "$help2man" && AC_MSG_ERROR(
90 [help2man is required to build this package])
92 AC_PATH_PROG([install], [install])
93 test -z "$install" && AC_MSG_ERROR(
94 [The install program is required to build this package])
99 executables="recv filter audioc write afh play"
100 ################################################################## clock_gettime
102 AC_CHECK_LIB([c], [clock_gettime], [clock_gettime_lib=c], [
103 AC_CHECK_LIB([rt], [clock_gettime], [clock_gettime_lib=rt], [], [])
105 if test -n "$clock_gettime_lib"; then
106 AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [
107 define to 1 if clock_gettime() is supported])
109 if test "$clock_gettime_lib" = "rt"; then
110 AC_SUBST(clock_gettime_ldflags, -lrt)
113 ########################################################################### osl
115 LIB_ARG_WITH([osl], [-losl])
117 AC_CHECK_HEADER(osl.h, [], [HAVE_OSL=no])
118 AC_CHECK_LIB([osl], [osl_open_table], [], [HAVE_OSL=no])
121 ########################################################################### crypto
122 AC_ARG_ENABLE(cryptolib, [AS_HELP_STRING(--enable-cryptolib=lib, [
123 Force using crypto library "lib". This package requires either
124 openssl or libgcrypt being installed. Possible values for "lib"
125 are thus "openssl" and "gcrypt". If this option is not given,
126 openssl is tried first. If openssl was not found, gcrypt is
129 case "$enable_cryptolib" in
130 "openssl") check_openssl="yes"; check_gcrypt="no";;
131 "gcrypt") check_openssl="no"; check_gcrypt="yes";;
132 "") check_openssl="yes"; check_gcrypt="yes";;
133 *) AC_MSG_ERROR([invalid value "$enable_cryptolib" for --enable-cryptolib]);;
135 ###################################################################### openssl
136 if test "$check_openssl" = "yes"; then
137 OLD_CPPFLAGS="$CPPFLAGS"
138 OLD_LDFLAGS="$LDFLAGS"
141 AC_ARG_WITH(openssl_headers, [AS_HELP_STRING(--with-openssl-headers=dir,
142 [look for openssl headers also in dir])])
143 if test -n "$with_openssl_headers"; then
144 openssl_cppflags="-I$with_openssl_headers"
145 CPPFLAGS="$CPPFLAGS $openssl_cppflags"
147 AC_ARG_WITH(openssl_libs, [AS_HELP_STRING(--with-openssl-libs=dir,
148 [look for openssl libraries also in dir])])
149 if test -n "$with_openssl_libs"; then
150 openssl_libs="-L$with_openssl_libs"
151 LDFLAGS="$LDFLAGS $openssl_libs"
153 AC_CHECK_HEADER(openssl/ssl.h, [], [have_openssl="no"])
154 AC_CHECK_LIB([crypto], [RAND_bytes], [], [have_openssl="no"])
155 if test "$have_openssl" = "no" -a -z "$with_openssl_headers$with_openssl_libs"; then
156 # try harder: openssl is sometimes installed in /usr/local/ssl
157 openssl_cppflags="-I/usr/local/ssl/include"
158 CPPFLAGS="$CPPFLAGS $openssl_cppflags"
159 openssl_libs="-L/usr/local/ssl/lib"
160 LDFLAGS="$LDFLAGS $openssl_libs"
162 unset ac_cv_header_openssl_ssl_h 2> /dev/null
163 unset ac_cv_lib_crypto_RAND_bytes 2> /dev/null
164 AC_CHECK_HEADER(openssl/ssl.h, [have_openssl="yes"], [])
165 if test "$have_openssl" = "yes"; then
166 AC_CHECK_LIB([crypto], [RAND_bytes], [], [have_openssl="no"])
169 if test "$have_openssl" = "yes"; then
170 AC_DEFINE(HAVE_OPENSSL, 1, [define to 1 to turn on openssl support])
171 AC_SUBST(openssl_cppflags)
172 openssl_ldflags="$openssl_libs -lssl -lcrypto"
173 AC_SUBST(openssl_ldflags)
177 AC_MSG_WARN([openssl libraries not found])
179 CPPFLAGS="$OLD_CPPFLAGS"
180 LDFLAGS="$OLD_LDFLAGS"
185 ########################################################################### gcrypt
186 if test "$check_gcrypt" = "yes"; then
187 OLD_CPPFLAGS="$CPPFLAGS"
188 OLD_LDFLAGS="$LDFLAGS"
191 AC_ARG_WITH(gcrypt_headers, [AS_HELP_STRING(--with-gcrypt-headers=dir,
192 [look for gcrypt headers also in dir])])
193 if test -n "$with_gcrypt_headers"; then
194 gcrypt_cppflags="-I$with_gcrypt_headers"
195 CPPFLAGS="$CPPFLAGS $gcrypt_cppflags"
197 AC_ARG_WITH(gcrypt_libs, [AS_HELP_STRING(--with-gcrypt-libs=dir,
198 [look for libgcrypt also in dir])])
199 if test -n "$with_gcrypt_libs"; then
200 gcrypt_libs="-L$with_gcrypt_libs"
201 LDFLAGS="$LDFLAGS $gcrypt_libs"
203 AC_CHECK_HEADER(gcrypt.h, [], [have_gcrypt="no"])
204 AC_CHECK_LIB([gcrypt], [gcry_randomize], [], [have_gcrypt="no"])
205 if test "$have_gcrypt" = "yes"; then
206 AC_DEFINE(HAVE_GCRYPT, 1, [define to 1 to turn on gcrypt support])
207 AC_SUBST(gcrypt_cppflags)
208 gcrypt_ldflags="$gcrypt_libs -lgcrypt"
209 AC_SUBST(gcrypt_ldflags)
211 AC_MSG_WARN([gcrypt library not found])
213 CPPFLAGS="$OLD_CPPFLAGS"
214 LDFLAGS="$OLD_LDFLAGS"
219 ########################################################################### libsocket
220 AC_CHECK_LIB([c], [socket],
222 [socket_ldflags="-lsocket"]
224 AC_SUBST(socket_ldflags)
225 ########################################################################### libnsl
226 AC_CHECK_LIB([c], [gethostbyname],
228 [nsl_ldflags="-lnsl"]
230 AC_SUBST(nsl_ldflags)
231 ########################################################################### ucred
232 AC_MSG_CHECKING(for struct ucred)
233 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
235 #include <sys/types.h>
236 #include <sys/socket.h>
238 struct ucred sucred; sucred.pid=0;
239 ]])],[have_ucred=yes],[have_ucred=no])
240 AC_MSG_RESULT($have_ucred)
241 if test ${have_ucred} = yes; then
242 AC_DEFINE(HAVE_UCRED, 1, define to 1 you have struct ucred)
244 ########################################################################### gengetopt
245 echo 'option "z" z "" flag off' | $gengetopt --file-name conftest-ggo &&
247 [gengetopt_args_info_description],
248 [ggo_descriptions_declared=yes],
249 [ggo_descriptions_declared=no],
250 [#include "conftest-ggo.h"]
252 AC_SUBST(ggo_descriptions_declared)
253 ########################################################################### curses
255 OLD_CPPFLAGS="$CPPFLAGS"
256 OLD_LDFLAGS="$LDFLAGS"
258 AC_ARG_WITH(curses_headers, [AS_HELP_STRING(--with-curses-headers=dir,
259 [look for curses.h also in dir])])
260 if test -n "$with_curses_headers"; then
261 curses_cppflags="-I$with_curses_headers"
262 CPPFLAGS="$CPPFLAGS $curses_cppflags"
264 AC_ARG_WITH(curses_libs, [AS_HELP_STRING(--with-curses-libs=dir,
265 [look for libcurses also in dir])])
266 if test -n "$with_curses_libs"; then
267 curses_libs="-L$with_curses_libs"
268 LDFLAGS="$LDFLAGS $curses_libs"
270 AC_CHECK_HEADER(curses.h, [], [
273 curses_ldflags="$curses_libs"
274 AC_CHECK_LIB([ncursesw], [initscr],
275 [curses_ldflags="$curses_libs -lncursesw"], [
276 AC_CHECK_LIB([curses], [initscr],
277 [curses_ldflags="$curses_libs -lcurses"],
282 AC_SUBST(curses_cppflags)
283 AC_SUBST(curses_ldflags)
284 CPPFLAGS="$OLD_CPPFLAGS"
285 LDFLAGS="$OLD_LDFLAGS"
287 ########################################################################### ip_mreqn
288 AC_MSG_CHECKING(for struct ip_mreqn (UDPv4 multicast))
289 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
295 ]])],[have_ip_mreqn=yes],[have_ip_mreqn=no])
296 AC_MSG_RESULT($have_ip_mreqn)
297 if test ${have_ip_mreqn} = yes; then
298 AC_DEFINE(HAVE_IP_MREQN, 1, define to 1 you have struct ip_mreqn)
300 ########################################################################### osx
302 AC_MSG_CHECKING(for CoreAudio (MacOs))
303 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
304 #include <CoreAudio/CoreAudio.h>
307 ]])],[have_core_audio=yes],[have_core_audio=no])
308 AC_MSG_RESULT($have_core_audio)
309 if test ${have_core_audio} = yes; then
310 f1="-framework CoreAudio"
311 f2="-framework AudioToolbox"
312 f3="-framework AudioUnit"
313 f4="-framework CoreServices"
314 core_audio_ldflags="$f1 $f2 $f3 $f4"
315 AC_SUBST(core_audio_ldflags)
316 AC_DEFINE(HAVE_CORE_AUDIO, 1, define to 1 on Mac Os X)
318 ########################################################################### ogg
320 LIB_ARG_WITH([ogg], [-logg])
322 AC_CHECK_HEADERS([ogg/ogg.h], [], [HAVE_OGG=no])
323 AC_CHECK_LIB([ogg], [ogg_stream_init], [], [HAVE_OGG=no])
326 ######################################################################### vorbis
328 LIB_ARG_WITH([vorbis], [-lvorbis -lvorbisfile])
330 AC_CHECK_HEADERS([vorbis/codec.h], [], [HAVE_VORBIS=no])
331 AC_CHECK_LIB([vorbis], [vorbis_info_init], [], [HAVE_VORBIS=no])
332 LIB_SUBST_FLAGS(vorbis)
334 ######################################################################### speex
336 LIB_ARG_WITH([speex], [-lspeex])
338 AC_CHECK_HEADERS([speex/speex.h], [], [HAVE_SPEEX=no])
339 AC_CHECK_LIB([speex], [speex_decoder_init], [], [HAVE_SPEEX=no])
340 LIB_SUBST_FLAGS(speex)
342 ######################################################################### opus
344 LIB_ARG_WITH([opus], [-lopus])
346 AC_CHECK_HEADERS([opus/opus.h], [], [HAVE_OPUS=no])
347 AC_CHECK_LIB([opus], [opus_multistream_decode], [], [HAVE_OPUS=no])
348 LIB_SUBST_FLAGS(opus)
351 # some helper functions for codecs which use the ogg container format
352 AC_DEFUN([NEED_OGG_OBJECTS], [{
353 test "$HAVE_OGG" = 'yes' -a \( \
354 "$HAVE_VORBIS" = 'yes' \
355 -o "$HAVE_SPEEX" = 'yes' \
356 -o "$HAVE_OPUS" = 'yes' \
359 AC_DEFUN([NEED_VORBIS_OBJECTS], [{
360 test "$HAVE_OGG" = 'yes' -a "$HAVE_VORBIS" = 'yes'
362 AC_DEFUN([NEED_SPEEX_OBJECTS], [{
363 test "$HAVE_OGG" = 'yes' -a "$HAVE_SPEEX" = 'yes'
365 AC_DEFUN([NEED_OPUS_OBJECTS], [{
366 test "$HAVE_OGG" = 'yes' -a "$HAVE_OPUS" = 'yes'
368 ########################################################################### faad
370 OLD_CPPFLAGS="$CPPFLAGS"
371 OLD_LDFLAGS="$LDFLAGS"
373 AC_ARG_WITH(faad_headers, [AS_HELP_STRING(--with-faad-headers=dir,
374 [look for neaacdec.h also in dir])])
375 if test -n "$with_faad_headers"; then
376 faad_cppflags="-I$with_faad_headers"
377 CPPFLAGS="$CPPFLAGS $faad_cppflags"
379 AC_ARG_WITH(faad_libs, [AS_HELP_STRING(--with-faad-libs=dir,
380 [look for libfaad also in dir])])
381 if test -n "$with_faad_libs"; then
382 faad_libs="-L$with_faad_libs"
383 LDFLAGS="$LDFLAGS $faad_libs"
385 AC_CHECK_HEADER(neaacdec.h, [], have_faad=no)
386 AC_CHECK_LIB([faad], [NeAACDecOpen], [], have_faad=no)
387 if test "$have_faad" = "yes"; then
388 AC_DEFINE(HAVE_FAAD, 1, define to 1 if you want to build the aacdec filter)
389 AC_SUBST(faad_cppflags)
390 faad_ldflags="$faad_libs -lfaad"
391 AC_SUBST(faad_ldflags)
393 CPPFLAGS="$OLD_CPPFLAGS"
394 LDFLAGS="$OLD_LDFLAGS"
396 ########################################################################### mad
398 OLD_CPPFLAGS="$CPPFLAGS"
399 OLD_LDFLAGS="$LDFLAGS"
402 AC_ARG_WITH(mad_headers, [AS_HELP_STRING(--with-mad-headers=dir,
403 [look for mad.h also in dir])])
404 if test -n "$with_mad_headers"; then
405 mad_cppflags="-I$with_mad_headers"
406 CPPFLAGS="$CPPFLAGS $mad_cppflags"
408 AC_ARG_WITH(mad_libs, [AS_HELP_STRING(--with-mad-libs=dir,
409 [look for libmad also in dir])])
410 if test -n "$with_mad_libs"; then
411 mad_libs="-L$with_mad_libs"
412 LDFLAGS="$LDFLAGS $mad_libs"
414 AC_CHECK_HEADERS([mad.h], [], [
417 AC_CHECK_LIB([mad], [mad_stream_init], [], [
420 if test "$have_mad" = "yes"; then
421 AC_DEFINE(HAVE_MAD, 1, define to 1 if you want to build the mp3dec filter)
422 AC_SUBST(mad_cppflags)
423 mad_ldflags="$mad_libs -lmad"
424 AC_SUBST(mad_ldflags)
426 AC_MSG_WARN([no mp3dec support in para_audiod/para_filter])
428 CPPFLAGS="$OLD_CPPFLAGS"
429 LDFLAGS="$OLD_LDFLAGS"
431 ###################################################################### libid3tag
432 OLD_CPPFLAGS="$CPPFLAGS"
433 OLD_LDFLAGS="$LDFLAGS"
437 AC_ARG_WITH(id3tag_headers, [AS_HELP_STRING(--with-id3tag-headers=dir,
438 [look for id3tag header files also in dir])])
439 if test -n "$with_id3tag_headers"; then
440 id3tag_cppflags="-I$with_id3tag_headers"
441 CPPFLAGS="$CPPFLAGS $id3tag_cppflags"
443 AC_ARG_WITH(id3tag_libs, [AS_HELP_STRING(--with-id3tag-libs=dir,
444 [look for id3tag libs also in dir])])
445 if test -n "$with_id3tag_libs"; then
446 id3tag_libs="-L$with_id3tag_libs"
447 LDFLAGS="$LDFLAGS $id3tag_libs"
450 AC_MSG_CHECKING(for libid3tag)
451 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
454 struct id3_tag t = {.flags = 0};
455 ]])],[],[have_libid3tag=no])
456 AC_MSG_RESULT($have_libid3tag)
458 if test ${have_libid3tag} = yes; then
459 AC_DEFINE(HAVE_LIBID3TAG, 1, define to 1 you have libid3tag)
460 AC_SUBST(id3tag_cppflags)
461 AC_SUBST(id3tag_ldflags, "$id3tag_libs -lid3tag -lz")
463 CPPFLAGS="$OLD_CPPFLAGS"
464 LDFLAGS="$OLD_LDFLAGS"
466 ########################################################################### flac
467 OLD_CPPFLAGS="$CPPFLAGS"
468 OLD_LDFLAGS="$LDFLAGS"
472 AC_ARG_WITH(flac_headers, [AS_HELP_STRING(--with-flac-headers=dir,
473 [look for flac headers also in dir])])
474 if test -n "$with_flac_headers"; then
475 flac_cppflags="-I$with_flac_headers"
476 CPPFLAGS="$CPPFLAGS $flac_cppflags"
478 AC_ARG_WITH(flac_libs, [AS_HELP_STRING(--with-flac-libs=dir,
479 [look for flac libs also in dir])])
480 if test -n "$with_flac_libs"; then
481 flac_libs="-L$with_flac_libs"
482 LDFLAGS="$LDFLAGS $flac_libs"
484 AC_CHECK_HEADER(FLAC/stream_decoder.h, [], have_flac=no)
485 AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [], [
486 # nope, try again with -logg
487 AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_init_file], [],
488 have_flac=no, -lm -logg)
490 if test "$have_flac" = "yes"; then
491 AC_DEFINE(HAVE_FLAC, 1, define to 1 if you want to build the flacdec filter)
492 AC_SUBST(flac_cppflags)
493 flac_ldflags="$flac_libs -lFLAC"
494 AC_SUBST(flac_ldflags)
496 AC_MSG_WARN([no flac support in para_audiod/para_filter/para_afh/para_server])
498 CPPFLAGS="$OLD_CPPFLAGS"
499 LDFLAGS="$OLD_LDFLAGS"
501 ########################################################################### oss
502 OLD_CPPFLAGS="$CPPFLAGS"
503 OLD_LDFLAGS="$LDFLAGS"
507 msg="=> will not build oss writer"
509 AC_CHECK_HEADER(sys/soundcard.h, [
510 AC_CHECK_LIB(ossaudio, _oss_ioctl, [
511 oss_ldflags="-lossaudio"
512 AC_SUBST(oss_ldflags)
518 AC_MSG_WARN([no sys/soundcard.h $msg])
521 CPPFLAGS="$OLD_CPPFLAGS"
522 LDFLAGS="$OLD_LDFLAGS"
525 ########################################################################### alsa
526 OLD_CPPFLAGS="$CPPFLAGS"
527 OLD_LDFLAGS="$LDFLAGS"
530 msg="=> no alsa support for para_audiod/para_write"
531 if test "$OSTYPE" != "Linux"; then
536 if test "$have_alsa" = "yes"; then
537 AC_CHECK_HEADERS([alsa/asoundlib.h], [], [
539 AC_MSG_WARN([no alsa/asoundlib $msg])
543 if test "$have_alsa" = "yes"; then
544 AC_CHECK_LIB([asound], [snd_pcm_open], [], [
546 AC_MSG_WARN([no libasound $msg])
550 if test "$have_alsa" = "yes"; then
551 alsa_ldflags="-lasound"
552 AC_SUBST(alsa_ldflags)
555 CPPFLAGS="$OLD_CPPFLAGS"
556 LDFLAGS="$OLD_LDFLAGS"
558 ########################################################################### libao
559 OLD_CPPFLAGS="$CPPFLAGS"
560 OLD_LDFLAGS="$LDFLAGS"
564 AC_ARG_WITH(ao_headers, [AS_HELP_STRING(--with-ao-headers=dir,
565 [look for ao/ao.h also in dir])])
566 if test -n "$with_ao_headers"; then
567 ao_cppflags="-I$with_ao_headers"
568 CPPFLAGS="$CPPFLAGS $ao_cppflags"
570 AC_ARG_WITH(ao_libs, [AS_HELP_STRING(--with-ao-libs=dir,
571 [look for libao also in dir])])
572 if test -n "$with_ao_libs"; then
573 ao_libs="-L$with_ao_libs"
574 LDFLAGS="$LDFLAGS $ao_libs"
576 msg="no libao support for para_audiod/para_write"
577 AC_CHECK_HEADERS([ao/ao.h], [
580 AC_MSG_WARN([ao.h not found, $msg])
582 if test "$have_ao" = "yes"; then
583 AC_CHECK_LIB([ao], [ao_initialize], [], [
585 AC_MSG_WARN([ao lib not found or not working, $msg])
588 if test "$have_ao" = "yes"; then
589 AC_CHECK_HEADERS([pthread.h], [
592 AC_MSG_WARN([pthread.h not found, $msg])
595 if test "$have_ao" = "yes"; then
596 AC_CHECK_LIB([pthread], [pthread_create], [], [
598 AC_MSG_WARN([pthread lib not found or not working, $msg])
601 if test "$have_ao" = "yes"; then
602 AC_SUBST(ao_cppflags)
603 ao_ldflags="$ao_libs -lao -lpthread"
607 CPPFLAGS="$OLD_CPPFLAGS"
608 LDFLAGS="$OLD_LDFLAGS"
610 ############################################################# readline
611 OLD_CPPFLAGS="$CPPFLAGS"
612 OLD_LDFLAGS="$LDFLAGS"
616 AC_ARG_WITH(readline_headers, [AS_HELP_STRING(--with-readline-headers=dir,
617 [look for libreadline header files also in dir])])
618 if test -n "$with_readline_headers"; then
619 readline_cppflags="-I$with_readline_headers"
620 CPPFLAGS="$CPPFLAGS $readline_cppflags"
623 AC_ARG_WITH(readline_libs, [AS_HELP_STRING(--with-readline-libs=dir,
624 [look for readline library also in dir])])
625 if test -n "$with_readline_libs"; then
626 readline_libs="-L$with_readline_libs"
627 LDFLAGS="$LDFLAGS $readline_libs"
629 msg="no interactive cli support"
630 AC_CHECK_HEADERS([readline/readline.h], [
633 AC_MSG_WARN([readline/readline.h not found, $msg])
636 if test "$have_readline" = "yes"; then
637 readline_ldflags="$readline_libs"
638 AC_SEARCH_LIBS([rl_free_keymap], [readline], [
639 readline_ldflags="$readline_ldflags -lreadline"
640 ], [have_readline="no"])
641 if test "$have_readline" = "no"; then # try with -lcurses
643 AC_MSG_NOTICE([trying again with -lcurses])
644 unset ac_cv_search_rl_free_keymap 2> /dev/null
645 AC_SEARCH_LIBS([rl_free_keymap], [readline], [
647 readline_ldflags="$readline_ldflags -lreadline -lcurses"
650 if test "$have_readline" = "no"; then # try with -ltermcap
652 AC_MSG_NOTICE([trying again with -ltermcap])
653 unset ac_cv_search_rl_free_keymap 2> /dev/null
654 AC_SEARCH_LIBS([rl_free_keymap], [readline], [
656 readline_ldflags="$readline_ldflags -lreadline -ltermcap"
661 if test "$have_readline" = "yes"; then
664 [AC_DEFINE(RL_FREE_KEYMAP_DECLARED, 1, readline >= 6.3)],
668 #include <readline/readline.h>
671 AC_SUBST(readline_cppflags)
672 AC_SUBST(readline_ldflags)
673 AC_DEFINE(HAVE_READLINE, 1, define to 1 to turn on readline support)
675 AC_MSG_WARN([libreadline not found or unusable])
677 CPPFLAGS="$OLD_CPPFLAGS"
678 LDFLAGS="$OLD_LDFLAGS"
680 ############################################################# libsamplerate
681 OLD_CPPFLAGS="$CPPFLAGS"
682 OLD_LDFLAGS="$LDFLAGS"
685 have_samplerate="yes"
686 AC_ARG_WITH(samplerate_headers, [AS_HELP_STRING(--with-samplerate-headers=dir,
687 [look for samplerate headers also in dir])])
688 if test -n "$with_samplerate_headers"; then
689 samplerate_cppflags="-I$with_samplerate_headers"
690 CPPFLAGS="$CPPFLAGS $samplerate_cppflags"
692 AC_ARG_WITH(samplerate_libs, [AS_HELP_STRING(--with-samplerate-libs=dir,
693 [look for samplerate libs also in dir])])
694 if test -n "$with_samplerate_libs"; then
695 samplerate_libs="-L$with_samplerate_libs"
696 LDFLAGS="$LDFLAGS $samplerate_libs"
699 AC_CHECK_HEADER(samplerate.h, [], have_samplerate=no)
700 AC_CHECK_LIB([samplerate], [src_process], [], have_samplerate=no, [])
702 if test "$have_samplerate" = "yes"; then
703 AC_SUBST(samplerate_cppflags)
704 samplerate_ldflags="$samplerate_libs -lsamplerate"
705 AC_SUBST(samplerate_ldflags)
707 AC_MSG_WARN([no resample support in para_audiod/para_filter])
709 CPPFLAGS="$OLD_CPPFLAGS"
710 LDFLAGS="$OLD_LDFLAGS"
712 ######################################################################### server
713 if test \( "$have_openssl" = "yes" -o "$have_gcrypt" = "yes" \) \
714 -a "$HAVE_OSL" = "yes" ; then
717 executables="$executables server"
718 server_cmdline_objs="server"
719 server_errlist_objs="
758 if test "$have_openssl" = "yes"; then
759 server_errlist_objs="$server_errlist_objs crypt"
761 if test "$have_gcrypt" = "yes"; then
762 server_errlist_objs="$server_errlist_objs gcrypt"
764 NEED_OGG_OBJECTS() && server_errlist_objs="$server_errlist_objs ogg_afh_common"
765 NEED_VORBIS_OBJECTS() && server_errlist_objs="$server_errlist_objs ogg_afh"
766 NEED_SPEEX_OBJECTS() && server_errlist_objs="$server_errlist_objs spx_afh spx_common"
767 NEED_OPUS_OBJECTS() && server_errlist_objs="$server_errlist_objs opus_afh opus_common"
768 if test "$have_faad" = "yes"; then
769 server_errlist_objs="$server_errlist_objs aac_afh aac_common"
771 if test "$have_flac" = "yes"; then
772 server_errlist_objs="$server_errlist_objs flac_afh"
774 server_objs="add_cmdline($server_cmdline_objs) $server_errlist_objs"
775 AC_SUBST(server_objs, add_dot_o($server_objs))
776 AC_DEFINE_UNQUOTED(INIT_SERVER_ERRLISTS,
777 objlist_to_errlist($server_errlist_objs), errors used by para_server)
781 ############################################################# client
782 if test "$have_openssl" = "yes" -o "$have_gcrypt" = "yes"; then
784 executables="$executables client"
785 client_cmdline_objs="client"
786 client_errlist_objs="
802 if test "$have_openssl" = "yes"; then
803 client_errlist_objs="$client_errlist_objs crypt"
805 if test "$have_gcrypt" = "yes"; then
806 client_errlist_objs="$client_errlist_objs gcrypt"
808 if test "$have_readline" = "yes"; then
809 client_errlist_objs="$client_errlist_objs interactive"
811 client_objs="add_cmdline($client_cmdline_objs) $client_errlist_objs"
812 AC_SUBST(client_objs, add_dot_o($client_objs))
813 AC_DEFINE_UNQUOTED(INIT_CLIENT_ERRLISTS,
814 objlist_to_errlist($client_errlist_objs), errors used by para_client)
818 ############################################################# audiod
819 if test "$have_openssl" = "yes" -o "$have_gcrypt" = "yes"; then
821 executables="$executables audiod"
822 audiod_audio_formats="wma"
823 audiod_cmdline_objs="$audiod_cmdline_objs
835 audiod_errlist_objs="$audiod_errlist_objs
873 if test "$have_openssl" = "yes"; then
874 audiod_errlist_objs="$audiod_errlist_objs crypt"
876 if test "$have_gcrypt" = "yes"; then
877 audiod_errlist_objs="$audiod_errlist_objs gcrypt"
879 if test "$have_core_audio" = "yes"; then
880 audiod_errlist_objs="$audiod_errlist_objs osx_write ipc"
881 audiod_cmdline_objs="$audiod_cmdline_objs osx_write"
883 NEED_VORBIS_OBJECTS && {
884 audiod_errlist_objs="$audiod_errlist_objs oggdec_filter"
885 audiod_audio_formats="$audiod_audio_formats ogg"
887 NEED_SPEEX_OBJECTS && {
888 audiod_errlist_objs="$audiod_errlist_objs spxdec_filter spx_common"
889 audiod_audio_formats="$audiod_audio_formats spx"
891 NEED_OPUS_OBJECTS && {
892 audiod_errlist_objs="$audiod_errlist_objs opusdec_filter opus_common"
893 audiod_audio_formats="$audiod_audio_formats opus"
895 if test "$have_faad" = "yes"; then
896 audiod_errlist_objs="$audiod_errlist_objs aacdec_filter aac_common"
897 audiod_audio_formats="$audiod_audio_formats aac"
899 if test "$have_mad" = "yes"; then
900 audiod_audio_formats="$audiod_audio_formats mp3"
901 audiod_cmdline_objs="$audiod_cmdline_objs mp3dec_filter"
902 audiod_errlist_objs="$audiod_errlist_objs mp3dec_filter"
904 if test "$have_flac" = "yes"; then
905 audiod_errlist_objs="$audiod_errlist_objs flacdec_filter"
906 audiod_audio_formats="$audiod_audio_formats flac"
908 if test "$have_oss" = "yes"; then
909 audiod_errlist_objs="$audiod_errlist_objs oss_write"
910 audiod_cmdline_objs="$audiod_cmdline_objs oss_write"
912 if test "$have_alsa" = "yes"; then
913 audiod_errlist_objs="$audiod_errlist_objs alsa_write"
914 audiod_cmdline_objs="$audiod_cmdline_objs alsa_write"
916 if test "$have_ao" = "yes"; then
917 audiod_errlist_objs="$audiod_errlist_objs ao_write"
918 audiod_cmdline_objs="$audiod_cmdline_objs ao_write"
920 if test "$have_samplerate" = "yes"; then
921 audiod_errlist_objs="$audiod_errlist_objs resample_filter check_wav"
922 audiod_cmdline_objs="$audiod_cmdline_objs resample_filter"
924 audiod_objs="add_cmdline($audiod_cmdline_objs) $audiod_errlist_objs"
925 AC_SUBST(audiod_objs, add_dot_o($audiod_objs))
926 AC_DEFINE_UNQUOTED(INIT_AUDIOD_ERRLISTS, objlist_to_errlist($audiod_errlist_objs),
927 errors used by para_audiod)
929 enum="$(for i in $audiod_audio_formats; do printf "AUDIO_FORMAT_${i}, " | tr '[a-z]' '[A-Z]'; done)"
930 AC_DEFINE_UNQUOTED(AUDIOD_AUDIO_FORMATS_ENUM, $enum NUM_AUDIO_FORMATS,
931 enum of audio formats supported by audiod)
932 names="$(for i in $audiod_audio_formats; do printf \"$i\",' ' ; done)"
933 AC_DEFINE_UNQUOTED(AUDIOD_AUDIO_FORMAT_ARRAY, $names, array of audio formats supported by audiod)
937 ########################################################################### fade
938 if test "$have_oss" = "yes" -o "$have_alsa" = "yes"; then
940 executables="$executables fade"
941 fade_cmdline_objs="fade"
942 fade_errlist_objs="fade exec string fd version ggo"
943 if test "$have_oss" = "yes"; then
944 fade_errlist_objs="$fade_errlist_objs oss_mix"
945 mixers="${mixers}oss "
946 default_mixer="OSS_MIX"
948 if test "$have_alsa" = "yes"; then
949 fade_errlist_objs="$fade_errlist_objs alsa_mix"
950 mixers="${mixers}alsa "
951 default_mixer="ALSA_MIX"
953 fade_objs="add_cmdline($fade_cmdline_objs) $fade_errlist_objs"
954 AC_SUBST(fade_objs, add_dot_o($fade_objs))
955 AC_DEFINE_UNQUOTED(INIT_FADE_ERRLISTS,
956 objlist_to_errlist($fade_errlist_objs),
957 errors used by para_fade)
960 printf "${i}_MIX, " | tr '[a-z]' '[A-Z]'
963 AC_DEFINE_UNQUOTED(MIXER_ENUM, $enum NUM_SUPPORTED_MIXERS,
964 enum of supported mixers)
965 AC_DEFINE_UNQUOTED(DEFAULT_MIXER, $default_mixer,
966 use this mixer if none was specified)
967 names="$(for i in $mixers; do printf \"$i\",' ' ; done)"
968 AC_DEFINE_UNQUOTED(MIXER_NAMES, $names, supported mixer names)
971 printf 'extern void '$i'_mix_init(struct mixer *); '
974 AC_DEFINE_UNQUOTED(DECLARE_MIXER_INITS, $inits,
975 init functions of the supported mixers)
976 array="$(for i in $mixers; do printf '{.init = '$i'_mix_init},'; done)"
977 AC_DEFINE_UNQUOTED(MIXER_ARRAY, $array, array of supported mixers)
980 AC_MSG_WARN([no mixer support])
982 ########################################################################### gui
983 if test "$have_curses" = "yes"; then
985 executables="$executables gui"
986 gui_cmdline_objs="gui"
1001 gui_objs="add_cmdline($gui_cmdline_objs) $gui_errlist_objs"
1002 AC_SUBST(gui_objs, add_dot_o($gui_objs))
1003 AC_DEFINE_UNQUOTED(INIT_GUI_ERRLISTS,
1004 objlist_to_errlist($gui_errlist_objs), errors used by para_gui)
1007 AC_MSG_WARN([no curses lib, cannot build para_gui])
1009 ######################################################################## filter
1019 filter_errlist_objs="
1044 filter_cmdline_objs="
1051 NEED_VORBIS_OBJECTS && {
1052 filters="$filters oggdec"
1053 filter_errlist_objs="$filter_errlist_objs oggdec_filter"
1055 NEED_SPEEX_OBJECTS && {
1056 filters="$filters spxdec"
1057 filter_errlist_objs="$filter_errlist_objs spxdec_filter spx_common"
1059 NEED_OPUS_OBJECTS && {
1060 filters="$filters opusdec"
1061 filter_errlist_objs="$filter_errlist_objs opusdec_filter opus_common"
1063 if test "$have_faad" = "yes"; then
1064 filter_errlist_objs="$filter_errlist_objs aacdec_filter aac_common"
1065 filters="$filters aacdec"
1067 if test "$have_mad" = "yes"; then
1068 filter_cmdline_objs="$filter_cmdline_objs mp3dec_filter"
1069 filter_errlist_objs="$filter_errlist_objs mp3dec_filter"
1070 filters="$filters mp3dec"
1072 if test "$have_flac" = "yes"; then
1073 filter_errlist_objs="$filter_errlist_objs flacdec_filter"
1074 filters="$filters flacdec"
1076 if test "$have_samplerate" = "yes"; then
1077 filter_errlist_objs="$filter_errlist_objs resample_filter check_wav"
1078 filter_cmdline_objs="$filter_cmdline_objs resample_filter"
1079 filters="$filters resample"
1081 filters="$(echo $filters)"
1083 filter_objs="add_cmdline($filter_cmdline_objs) $filter_errlist_objs"
1085 AC_SUBST(filter_objs, add_dot_o($filter_objs))
1086 AC_DEFINE_UNQUOTED(INIT_FILTER_ERRLISTS,
1087 objlist_to_errlist($filter_errlist_objs), errors used by para_filter)
1089 enum="$(for i in $filters; do printf "${i}_FILTER, " | tr '[a-z]' '[A-Z]'; done)"
1090 AC_DEFINE_UNQUOTED(FILTER_ENUM, $enum NUM_SUPPORTED_FILTERS,
1091 enum of supported filters)
1092 inits="$(for i in $filters; do printf 'extern void '$i'_filter_init(struct filter *f); '; done)"
1093 AC_DEFINE_UNQUOTED(DECLARE_FILTER_INITS, $inits, init functions of the supported filters)
1094 array="$(for i in $filters; do printf '{.name = "'$i'", .init = '$i'_filter_init},'; done)"
1095 AC_DEFINE_UNQUOTED(FILTER_ARRAY, $array, array of supported filters)
1096 ########################################################################## recv
1126 NEED_OGG_OBJECTS && recv_errlist_objs="$recv_errlist_objs ogg_afh_common"
1127 NEED_VORBIS_OBJECTS && recv_errlist_objs="$recv_errlist_objs ogg_afh"
1128 NEED_SPEEX_OBJECTS && recv_errlist_objs="$recv_errlist_objs spx_afh spx_common"
1129 NEED_OPUS_OBJECTS && recv_errlist_objs="$recv_errlist_objs opus_afh opus_common"
1131 if test "$have_faad" = "yes"; then
1132 recv_errlist_objs="$recv_errlist_objs aac_afh aac_common"
1134 if test "$have_flac" = "yes"; then
1135 recv_errlist_objs="$recv_errlist_objs flac_afh"
1137 recv_objs="add_cmdline($recv_cmdline_objs) $recv_errlist_objs"
1138 AC_SUBST(receivers, "http dccp udp afh")
1139 AC_SUBST(recv_objs, add_dot_o($recv_objs))
1140 AC_DEFINE_UNQUOTED(INIT_RECV_ERRLISTS, objlist_to_errlist($recv_errlist_objs),
1141 errors used by para_recv)
1142 ########################################################################### afh
1143 audio_format_handlers="mp3 wma"
1144 afh_cmdline_objs="afh"
1157 NEED_OGG_OBJECTS && afh_errlist_objs="$afh_errlist_objs ogg_afh_common"
1158 NEED_VORBIS_OBJECTS && {
1159 afh_errlist_objs="$afh_errlist_objs ogg_afh"
1160 audio_format_handlers="$audio_format_handlers ogg"
1162 NEED_SPEEX_OBJECTS && {
1163 afh_errlist_objs="$afh_errlist_objs spx_afh spx_common"
1164 audio_format_handlers="$audio_format_handlers spx"
1166 NEED_OPUS_OBJECTS && {
1167 afh_errlist_objs="$afh_errlist_objs opus_afh opus_common"
1168 audio_format_handlers="$audio_format_handlers opus"
1170 if test "$have_faad" = "yes"; then
1171 afh_errlist_objs="$afh_errlist_objs aac_common aac_afh"
1172 audio_format_handlers="$audio_format_handlers aac"
1174 if test "$have_flac" = "yes"; then
1175 afh_errlist_objs="$afh_errlist_objs flac_afh"
1176 audio_format_handlers="$audio_format_handlers flac"
1179 afh_objs="add_cmdline($afh_cmdline_objs) $afh_errlist_objs"
1181 AC_SUBST(afh_objs, add_dot_o($afh_objs))
1182 AC_DEFINE_UNQUOTED(INIT_AFH_ERRLISTS,
1183 objlist_to_errlist($afh_errlist_objs), errors used by para_afh)
1184 ########################################################################## play
1230 if test "$have_core_audio" = "yes"; then
1231 play_errlist_objs="$play_errlist_objs osx_write ipc"
1232 play_cmdline_objs="$play_cmdline_objs osx_write"
1234 NEED_OGG_OBJECTS && play_errlist_objs="$play_errlist_objs ogg_afh_common"
1235 NEED_VORBIS_OBJECTS && {
1236 play_errlist_objs="$play_errlist_objs oggdec_filter ogg_afh"
1238 NEED_SPEEX_OBJECTS && {
1239 play_errlist_objs="$play_errlist_objs spxdec_filter spx_afh spx_common"
1241 NEED_OPUS_OBJECTS &&
1242 play_errlist_objs="$play_errlist_objs
1247 if test "$have_faad" = "yes"; then
1248 play_errlist_objs="$play_errlist_objs aacdec_filter aac_afh aac_common"
1250 if test "$have_mad" = "yes"; then
1251 play_cmdline_objs="$play_cmdline_objs mp3dec_filter"
1252 play_errlist_objs="$play_errlist_objs mp3dec_filter"
1254 if test "$have_flac" = "yes"; then
1255 play_errlist_objs="$play_errlist_objs flacdec_filter flac_afh"
1257 if test "$have_oss" = "yes"; then
1258 play_errlist_objs="$play_errlist_objs oss_write"
1259 play_cmdline_objs="$play_cmdline_objs oss_write"
1261 if test "$have_alsa" = "yes"; then
1262 play_errlist_objs="$play_errlist_objs alsa_write"
1263 play_cmdline_objs="$play_cmdline_objs alsa_write"
1265 if test "$have_ao" = "yes"; then
1266 play_errlist_objs="$play_errlist_objs ao_write"
1267 play_cmdline_objs="$play_cmdline_objs ao_write"
1269 if test "$have_readline" = "yes"; then
1270 play_errlist_objs="$play_errlist_objs interactive"
1272 if test "$have_samplerate" = "yes"; then
1273 play_errlist_objs="$play_errlist_objs resample_filter check_wav"
1274 play_cmdline_objs="$play_cmdline_objs resample_filter"
1277 play_objs="add_cmdline($play_cmdline_objs) $play_errlist_objs"
1278 AC_SUBST(play_objs, add_dot_o($play_objs))
1279 AC_DEFINE_UNQUOTED(INIT_PLAY_ERRLISTS,
1280 objlist_to_errlist($play_errlist_objs), errors used by para_play)
1281 ######################################################################### write
1282 write_cmdline_objs="
1286 write_errlist_objs="
1301 default_writer="FILE_WRITE"
1303 if test "$have_core_audio" = "yes"; then
1304 write_errlist_objs="$write_errlist_objs osx_write ipc"
1305 write_cmdline_objs="$write_cmdline_objs osx_write"
1306 writers="$writers osx"
1307 default_writer="OSX_WRITE"
1309 if test "$have_ao" = "yes"; then
1310 write_errlist_objs="$write_errlist_objs ao_write"
1311 write_cmdline_objs="$write_cmdline_objs ao_write"
1312 writers="$writers ao"
1313 default_writer="AO_WRITE"
1315 if test "$have_oss" = "yes"; then
1316 write_errlist_objs="$write_errlist_objs oss_write"
1317 write_cmdline_objs="$write_cmdline_objs oss_write"
1318 writers="$writers oss"
1319 default_writer="OSS_WRITE"
1321 if test "$have_alsa" = "yes"; then
1322 write_errlist_objs="$write_errlist_objs alsa_write"
1323 write_cmdline_objs="$write_cmdline_objs alsa_write"
1324 writers="$writers alsa"
1325 default_writer="ALSA_WRITE"
1328 write_objs="add_cmdline($write_cmdline_objs) $write_errlist_objs"
1329 AC_SUBST(write_objs, add_dot_o($write_objs))
1330 AC_DEFINE_UNQUOTED(INIT_WRITE_ERRLISTS,
1331 objlist_to_errlist($write_errlist_objs), errors used by para_write)
1332 enum="$(for i in $writers; do printf "${i}_WRITE, " | tr '[a-z]' '[A-Z]'; done)"
1333 AC_DEFINE_UNQUOTED(WRITER_ENUM, $enum NUM_SUPPORTED_WRITERS,
1334 enum of supported writers)
1335 AC_DEFINE_UNQUOTED(DEFAULT_WRITER, $default_writer, use this writer if none was specified)
1336 names="$(for i in $writers; do printf \"$i\",' ' ; done)"
1337 AC_DEFINE_UNQUOTED(WRITER_NAMES, $names, supported writer names)
1338 inits="$(for i in $writers; do printf 'extern void '$i'_write_init(struct writer *); '; done)"
1339 AC_DEFINE_UNQUOTED(DECLARE_WRITER_INITS, $inits, init functions of the supported writers)
1340 array="$(for i in $writers; do printf '{.init = '$i'_write_init},'; done)"
1341 AC_DEFINE_UNQUOTED(WRITER_ARRAY, $array, array of supported writers)
1342 ######################################################################## audioc
1343 audioc_cmdline_objs="audioc"
1344 audioc_errlist_objs="
1352 if test "$have_readline" = "yes"; then
1353 audioc_errlist_objs="$audioc_errlist_objs
1360 audioc_objs="add_cmdline($audioc_cmdline_objs) $audioc_errlist_objs"
1361 AC_SUBST(audioc_objs, add_dot_o($audioc_objs))
1362 AC_DEFINE_UNQUOTED(INIT_AUDIOC_ERRLISTS,
1363 objlist_to_errlist($audioc_errlist_objs), errors used by para_audioc)
1364 ############################################################# error2.h
1365 # these are always built
1368 $filter_errlist_objs
1369 $audioc_errlist_objs
1375 # optional executables
1376 if test "$build_server" = "yes"; then
1377 all_errlist_objs="$all_errlist_objs $server_errlist_objs"
1379 if test "$build_gui" = "yes"; then
1380 all_errlist_objs="$all_errlist_objs $gui_errlist_objs"
1382 if test "$build_fade" = "yes"; then
1383 all_errlist_objs="$all_errlist_objs $fade_errlist_objs"
1385 if test "$build_client" = "yes"; then
1386 all_errlist_objs="$all_errlist_objs $client_errlist_objs"
1388 if test "$build_audiod" = "yes"; then
1389 all_errlist_objs="$all_errlist_objs $audiod_errlist_objs"
1392 all_errlist_objs="$(echo $all_errlist_objs | tr ' ' '\n' | sort | uniq)"
1394 object_executable_matrix=
1395 for i in $executables; do
1396 eval objs=\$${i}_errlist_objs
1397 object_executable_matrix="$object_executable_matrix $i: $objs"
1399 # use echo to replace newlines by space
1400 AC_SUBST(object_executable_matrix, $(echo $object_executable_matrix))
1402 SS=$(for obj in $all_errlist_objs; do
1403 printf '%s' " SS_$obj,"; done | tr 'a-z' 'A-Z')
1404 AC_DEFINE_UNQUOTED(DEFINE_ERRLIST_OBJECT_ENUM,
1405 [enum {$SS NUM_SS}],
1406 [list of all objects that use the paraslash error facility]
1408 ################################################################## status items
1410 status_items="basename status num_played mtime bitrate frequency file_size
1411 status_flags format score techinfo afs_mode
1412 attributes_txt decoder_flags audiod_status play_time attributes_bitmap
1413 offset seconds_total stream_start current_time audiod_uptime image_id
1414 lyrics_id duration directory lyrics_name image_name path hash channels
1415 last_played num_chunks chunk_time amplification artist title year album
1419 for i in $status_items; do
1420 result="$result SI_$(echo $i | tr 'a-z' 'A-Z'), "
1422 AC_DEFINE_UNQUOTED(STATUS_ITEM_ENUM, [$result],
1423 [enum of all status items])
1426 for i in $status_items; do
1427 result="$result \"$i\", "
1429 AC_DEFINE_UNQUOTED(STATUS_ITEM_ARRAY, [$result],
1430 [char * array of all status items])
1432 AC_DEFINE_UNQUOTED(AUDIO_FORMAT_HANDLERS, "$audio_format_handlers",
1433 [formats supported by para_server and para_afh])
1435 AC_SUBST(executables)
1439 paraslash configuration:
1440 ~~~~~~~~~~~~~~~~~~~~~~~~
1441 unix socket credentials: $have_ucred
1442 readline (interactive CLIs): $have_readline
1443 audio formats handlers: $audio_format_handlers
1444 id3 version2 support: $have_libid3tag
1448 para_fade: $build_fade
1449 para_server: $build_server
1450 para_gui: $build_gui
1451 para_fade: $build_fade
1452 para_client: $build_client
1453 para_audiod: $build_audiod