filter-apply: Make housekeeping optional
[profile/ivi/pulseaudio.git] / configure.ac
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 # This file is part of PulseAudio.
5 #
6 # Copyright 2004-2008 Lennart Poettering
7 # Copyright 2006-2007 Pierre Ossman <ossman@cendio.se> for Cendio AB
8 #
9 # PulseAudio is free software; you can redistribute it and/or modify it
10 # under the terms of the GNU Lesser General Public License as published by
11 # the Free Software Foundation; either version 2 of the License, or
12 # (at your option) any later version.
13 #
14 # PulseAudio is distributed in the hope that it will be useful, but
15 # WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 # General Public License for more details.
18 #
19 # You should have received a copy of the GNU Lesser General Public License
20 # along with PulseAudio; if not, write to the Free Software Foundation,
21 # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
22
23 AC_PREREQ(2.63)
24
25 AC_INIT([pulseaudio],[m4_esyscmd(./git-version-gen .tarball-version)],[mzchyfrnhqvb (at) 0pointer (dot) net])
26 AC_CONFIG_SRCDIR([src/daemon/main.c])
27 AC_CONFIG_MACRO_DIR([m4])
28 AC_CONFIG_HEADERS([config.h])
29 AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability silent-rules tar-pax])
30
31 m4_define(pa_major, `echo $VERSION | cut -d. -f1 | cut -d- -f1`)
32 m4_define(pa_minor, `echo $VERSION | cut -d. -f2 | cut -d- -f1`)
33
34 AC_SUBST(PA_MAJOR, pa_major)
35 AC_SUBST(PA_MINOR, pa_minor)
36 AC_SUBST(PA_MAJORMINOR, pa_major.pa_minor)
37 AC_SUBST(PACKAGE_URL, [http://pulseaudio.org/])
38
39 AC_SUBST(PA_API_VERSION, 12)
40 AC_SUBST(PA_PROTOCOL_VERSION, 20)
41
42 # The stable ABI for client applications, for the version info x:y:z
43 # always will hold y=z
44 AC_SUBST(LIBPULSE_VERSION_INFO, [12:3:12])
45
46 # A simplified, synchronous, ABI-stable interface for client
47 # applications, for the version info x:y:z always will hold y=z
48 AC_SUBST(LIBPULSE_SIMPLE_VERSION_INFO, [0:3:0])
49
50 # The ABI-stable network browsing interface for client applications,
51 # for the version info x:y:z always will hold y=z
52 AC_SUBST(LIBPULSE_BROWSE_VERSION_INFO, [1:1:1])
53
54 # The ABI-stable GLib adapter for client applications, for the version
55 # info x:y:z always will hold y=z
56 AC_SUBST(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO, [0:4:0])
57
58 AC_CANONICAL_HOST
59 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
60
61 AC_CHECK_PROG([STOW], [stow], [yes], [no])
62
63 AS_IF([test "x$STOW" = "xyes" && test -d /usr/local/stow], [
64    AC_MSG_NOTICE([*** Found /usr/local/stow: default install prefix set to /usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION} ***])
65    ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}"
66 ])
67
68 AM_SILENT_RULES([yes])
69
70 #### Checks for programs. ####
71
72 # mkdir -p
73
74 AC_PROG_MKDIR_P
75
76 # CC
77
78 AC_PROG_CC
79 AC_PROG_CC_C99
80 AM_PROG_CC_C_O
81 AC_PROG_GCC_TRADITIONAL
82 AC_USE_SYSTEM_EXTENSIONS
83
84 #### Platform hacks ####
85
86 case $host in
87    *-*-solaris* )
88       AC_DEFINE(_XOPEN_SOURCE,        600, Needed to get declarations for msg_control and msg_controllen on Solaris)
89       AC_DEFINE(__EXTENSIONS__,         1, Needed to get declarations for msg_control and msg_controllen on Solaris)
90       ;;
91    *-*-darwin* )
92       AC_DEFINE([_POSIX_C_SOURCE], [200112L], [Needed to get clock_gettime on Mac OS X])
93       AC_DEFINE([_DARWIN_C_SOURCE], [200112L], [Needed to get NSIG on Mac OS X])
94       ;;
95 esac
96
97 # M4
98
99 AC_CHECK_PROGS([M4], gm4 m4, no)
100 if test "x$M4" = xno ; then
101    AC_MSG_ERROR([m4 missing])
102 fi
103
104 dnl Compiler flags
105
106 # Some compilers (e.g. clang) default to a warning on an unkown command line option.
107 # Change that temporarily to an error, for the CC_CHECK_CFLAGS_APPEND macro to work.
108 save_CC="$CC"
109 CC="$CC -Werror"
110 CC_CHECK_CFLAGS_APPEND([-Wall -W -Wextra -pipe -Wno-long-long -Wvla -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wold-style-definition -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option])
111 CC="$save_CC"
112
113 dnl Linker flags.
114 dnl Check whether the linker supports the -version-script option.
115
116 dnl This variable is used to make sure ${srcdir} is expanded and not
117 dnl passed to the CC_CHECK_LDFLAGS macro as a name.
118 tmp_ldflag="-Wl,-version-script=${srcdir}/src/map-file"
119
120 CC_CHECK_LDFLAGS([${tmp_ldflag}],
121     [VERSIONING_LDFLAGS='-Wl,-version-script=$(srcdir)/map-file'])
122 AC_SUBST([VERSIONING_LDFLAGS])
123
124 dnl Use immediate (now) bindings; avoids the funky re-call in itself
125 dnl  the -z now syntax is lifted from Sun's linker and works with GNU's too
126 dnl  other linkes might be added later
127 CC_CHECK_LDFLAGS([-Wl,-z,now], [IMMEDIATE_LDFLAGS="-Wl,-z,now"])
128 AC_SUBST([IMMEDIATE_LDFLAGS])
129
130 dnl On ELF systems we don't want the libraries to be unloaded since we
131 dnl don't clean them up properly, so we request the nodelete flag to be
132 dnl enabled.
133 dnl
134 dnl On other systems, we don't really know how to do that, but it's
135 dnl welcome if somebody can tell.
136 CC_CHECK_LDFLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS="-Wl,-z,nodelete"])
137 AC_SUBST([NODELETE_LDFLAGS])
138
139 dnl Check for the proper way to build libraries that have no undefined
140 dnl symbols; on some hosts this needs to be avoided but the macro
141 dnl takes care of it.
142 CC_NOUNDEFINED
143
144 dnl Check whether to build tests by default (as compile-test) or not
145 AC_ARG_ENABLE([default-build-tests],
146     AS_HELP_STRING([--disable-default-build-tests], [Build test programs only during make check]))
147
148 AM_CONDITIONAL([BUILD_TESTS_DEFAULT], [test "x$enable_default_build_tests" != "xno"])
149
150 # Native atomic operation support
151 AC_ARG_ENABLE([atomic-arm-linux-helpers],
152     AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]),
153         [
154             case "${enableval}" in
155                 yes) atomic_arm_linux_helpers=yes ;;
156                 no) atomic_arm_linux_helpers=no ;;
157                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
158             esac
159         ],
160         [atomic_arm_linux_helpers=auto])
161
162 AC_ARG_ENABLE([atomic-arm-memory-barrier],
163     AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]),
164         [
165             case "${enableval}" in
166                 yes) AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers]) ;;
167                 no) ;;
168                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
169             esac
170         ],)
171
172 AC_ARG_ENABLE(mac-universal,
173     AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries]),
174                 enable_mac_universal=$enableval, enable_mac_universal="no")
175
176
177 AC_MSG_CHECKING([target operating system])
178 case $host in
179         *-*-linux*)
180             AC_MSG_RESULT([linux])
181             pulse_target_os=linux
182         ;;
183         *-*-darwin*)
184             AC_MSG_RESULT([darwin])
185             pulse_target_os=darwin
186
187             if test "x$enable_mac_universal" = "xyes" ; then
188                 mac_version_min="-mmacosx-version-min=10.5"
189                 mac_arches="-arch i386 -arch x86_64"
190                 mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.5.sdk"
191                 LDFLAGS="$LDFLAGS $mac_arches $mac_sysroot $mac_version_min"
192                 CFLAGS="$CFLAGS $CFLAGS $mac_arches $mac_sysroot $mac_version_min"
193             fi
194         ;;
195         *)
196             AC_MSG_RESULT([unknown])
197             pulse_target_os=unknown
198         ;;
199 esac
200
201 # If everything else fails use libatomic_ops
202 need_libatomic_ops=yes
203
204 AC_CACHE_CHECK([whether $CC knows __sync_bool_compare_and_swap()],
205   pulseaudio_cv_sync_bool_compare_and_swap,
206   [AC_LINK_IFELSE(
207      AC_LANG_PROGRAM([], [[int a = 4; __sync_bool_compare_and_swap(&a, 4, 5);]]),
208      [pulseaudio_cv_sync_bool_compare_and_swap=yes],
209      [pulseaudio_cv_sync_bool_compare_and_swap=no])
210   ])
211
212 if test "$pulseaudio_cv_sync_bool_compare_and_swap" = "yes" ; then
213     AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
214     need_libatomic_ops=no
215 else
216     # HW specific atomic ops stuff
217     AC_MSG_CHECKING([architecture for native atomic operations])
218     case $host in
219         arm*)
220             AC_MSG_RESULT([arm])
221             AC_MSG_CHECKING([whether we can use Linux kernel helpers])
222             # The Linux kernel helper functions have been there since 2.6.16. However
223             # compile time checking for kernel version in cross compile environment
224             # (which is usually the case for arm cpu) is tricky (or impossible).
225             if test "x$pulse_target_os" = "xlinux" && test "x$atomic_arm_linux_helpers" != "xno"; then
226                 AC_MSG_RESULT([yes])
227                 AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
228                 need_libatomic_ops=no
229             else
230                AC_MSG_RESULT([no])
231                AC_CACHE_CHECK([compiler support for arm inline asm atomic operations],
232                  pulseaudio_cv_support_arm_atomic_ops,
233                  [AC_COMPILE_IFELSE(
234                     AC_LANG_PROGRAM([],
235                       [[volatile int a=0;
236                         int o=0, n=1, r;
237                         asm volatile ("ldrex    %0, [%1]\n"
238                                          "subs  %0, %0, %2\n"
239                                          "strexeq %0, %3, [%1]\n"
240                                          : "=&r" (r)
241                                          : "r" (&a), "Ir" (o), "r" (n)
242                                          : "cc");
243                         return (a==1 ? 0 : -1);
244                       ]]),
245                     [pulseaudio_cv_support_arm_atomic_ops=yes],
246                     [pulseaudio_cv_support_arm_atomic_ops=no])
247                  ])
248                AS_IF([test "$pulseaudio_cv_support_arm_atomic_ops" = "yes"], [
249                    AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARM atomic instructions.])
250                    need_libatomic_ops=no
251                  ])
252            fi
253         ;;
254         *-netbsdelf5*)
255             AC_MSG_RESULT([yes])
256             need_libatomic_ops=no
257         ;;
258         *-freebsd*)
259             AC_MSG_RESULT([yes])
260             need_libatomic_ops=no
261         ;;
262         *)
263             AC_MSG_RESULT([unknown])
264         ;;
265     esac
266 fi
267
268 # If we're on ARM, check for the ARMV6 instructions we need */
269 case $host in
270   arm*)
271     AC_CACHE_CHECK([support for required armv6 instructions],
272       pulseaudio_cv_support_armv6,
273       [AC_COMPILE_IFELSE(
274          AC_LANG_PROGRAM([],
275            [[volatile int a = -60000, b = 0xaaaabbbb, c = 0xccccdddd;
276              asm volatile ("ldr r0, %2 \n"
277                            "ldr r2, %3 \n"
278                            "ldr r3, %4 \n"
279                            "ssat r1, #8, r0 \n"
280                            "str r1, %0 \n"
281                            "pkhbt r1, r3, r2, LSL #8 \n"
282                            "str r1, %1 \n"
283                            : "=m" (a), "=m" (b)
284                            : "m" (a), "m" (b), "m" (c)
285                            : "r0", "r1", "r2", "r3", "cc");
286              return (a == -128 && b == 0xaabbdddd) ? 0 : -1;
287            ]]),
288          [pulseaudio_cv_support_armv6=yes],
289          [pulseaudio_cv_support_armv6=no])
290       ])
291     AS_IF([test "$pulseaudio_cv_support_armv6" = "yes"], [
292         AC_DEFINE([HAVE_ARMV6], 1, [Have ARMv6 instructions.])
293       ])
294   ;;
295   *)
296   ;;
297 esac
298
299 CC_CHECK_TLS
300
301 AC_CACHE_CHECK([whether $CC knows _Bool],
302   pulseaudio_cv__Bool,
303   [AC_COMPILE_IFELSE(
304      AC_LANG_PROGRAM([], [[_Bool b;]]),
305      [pulseaudio_cv__Bool=yes],
306      [pulseaudio_cv__Bool=no])
307   ])
308
309 AS_IF([test "$pulseaudio_cv__Bool" = "yes"], [
310     AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.])
311   ])
312
313 #### libtool stuff ####
314 LT_PREREQ(2.2)
315 LT_INIT([dlopen win32-dll disable-static])
316
317 dnl Unfortunately, even up to libtool 2.2.6a there is no way to know
318 dnl exactly which version of libltdl is present in the system, so we
319 dnl just assume that it's a working version as long as we have the
320 dnl library and the header files.
321 dnl
322 dnl As an extra safety device, check for lt_dladvise_init() which is
323 dnl only implemented in libtool 2.x, and refine as we go if we have
324 dnl refined requirements.
325 dnl
326 dnl Check the header files first since the system may have a
327 dnl libltdl.so for runtime, but no headers, and we want to bail out as
328 dnl soon as possible.
329 dnl
330 dnl We don't need any special variable for this though, since the user
331 dnl can give the proper place to find libltdl through the standard
332 dnl variables like LDFLAGS and CPPFLAGS.
333
334 AC_CHECK_HEADER([ltdl.h],
335     [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])],
336     [LIBLTDL=])
337
338 AS_IF([test "x$LIBLTDL" = "x"],
339     [AC_MSG_ERROR([Unable to find libltdl version 2. Makes sure you have libtool 2.2 or later installed.])])
340 AC_SUBST([LIBLTDL])
341
342 #### Determine build environment ####
343
344 os_is_win32=0
345 os_is_darwin=0
346
347 case "$host_os" in
348         mingw*)
349         AC_DEFINE([OS_IS_WIN32], 1, [Build target is Windows.])
350         os_is_win32=1
351                 ;;
352         darwin*)
353         AC_DEFINE([OS_IS_DARWIN], 1, [Build target is Darwin.])
354         os_is_darwin=1
355                 ;;
356         esac
357
358 AM_CONDITIONAL(OS_IS_WIN32, test "x$os_is_win32" = "x1")
359 AM_CONDITIONAL(OS_IS_DARWIN, test "x$os_is_darwin" = "x1")
360
361 ###################################
362 #   Basic environment checks      #
363 ###################################
364
365 #### Checks for header files. ####
366
367 # ISO
368 AC_HEADER_STDC
369
370 # POSIX
371 AC_CHECK_HEADERS_ONCE([arpa/inet.h glob.h grp.h netdb.h netinet/in.h \
372     netinet/in_systm.h netinet/tcp.h poll.h pwd.h sched.h \
373     sys/mman.h sys/resource.h sys/select.h sys/socket.h sys/wait.h \
374     sys/uio.h syslog.h sys/dl.h dlfcn.h linux/sockios.h])
375 AC_CHECK_HEADERS([netinet/ip.h], [], [],
376                  [#include <sys/types.h>
377                   #if HAVE_NETINET_IN_H
378                   # include <netinet/in.h>
379                   #endif
380                   #if HAVE_NETINET_IN_SYSTM_H
381                   # include <netinet/in_systm.h>
382                   #endif
383                  ])
384 AC_CHECK_HEADERS([sys/un.h], [HAVE_AF_UNIX=1], [HAVE_AF_UNIX=0])
385 AM_CONDITIONAL(HAVE_AF_UNIX, test "x$HAVE_AF_UNIX" = "x1")
386
387 # Linux
388 AC_CHECK_HEADERS([linux/input.h], [HAVE_EVDEV=1], [HAVE_EVDEV=0])
389
390 AM_CONDITIONAL([HAVE_EVDEV], [test "x$HAVE_EVDEV" = "x1"])
391
392 AC_CHECK_HEADERS_ONCE([sys/prctl.h])
393
394 # Solaris
395 AC_CHECK_HEADERS_ONCE([sys/filio.h])
396
397 # Windows
398 AC_CHECK_HEADERS_ONCE([windows.h winsock2.h ws2tcpip.h])
399
400 # NetBSD
401 AC_CHECK_HEADERS_ONCE([sys/atomic.h])
402
403 # Other
404 AC_CHECK_HEADERS_ONCE([sys/ioctl.h])
405 AC_CHECK_HEADERS_ONCE([byteswap.h])
406 AC_CHECK_HEADERS_ONCE([sys/syscall.h])
407 AC_CHECK_HEADERS_ONCE([sys/eventfd.h])
408 AC_CHECK_HEADERS_ONCE([execinfo.h])
409 AC_CHECK_HEADERS_ONCE([langinfo.h])
410 AC_CHECK_HEADERS_ONCE([regex.h pcreposix.h])
411
412 #### Typdefs, structures, etc. ####
413
414 AC_C_CONST
415 AC_C_BIGENDIAN
416 AC_TYPE_PID_T
417 AC_TYPE_SIZE_T
418 AC_CHECK_TYPES(ssize_t, , [AC_DEFINE([ssize_t], [signed long],
419     [Define ssize_t if it is not done by the standard libs.])])
420 AC_TYPE_OFF_T
421
422 AC_TYPE_UID_T
423 AC_CHECK_DECLS(environ)
424
425 AC_CHECK_DEFINE([SIGXCPU], [signal.h], [
426 HAVE_SIGXCPU=1
427 AC_DEFINE([HAVE_SIGXCPU], 1, [Have SIGXCPU?])
428 ], [HAVE_SIGXCPU=0])
429 AM_CONDITIONAL(HAVE_SIGXCPU, test "x$HAVE_SIGXCPU" = "x1")
430
431 # Solaris lacks this
432 AC_CHECK_DEFINE([INADDR_NONE], [netinet/in.h], [],
433     [AC_CHECK_DEFINE([INADDR_NONE], [winsock2.h], [],
434         [AC_DEFINE([INADDR_NONE],  [0xffffffff], [Define INADDR_NONE if not found in <netinet/in.h>])])])
435
436 #### POSIX threads ####
437
438 ACX_PTHREAD
439
440 #### Check for libs ####
441
442 # ISO
443 AC_SEARCH_LIBS([pow], [m])
444
445 # POSIX
446 AC_SEARCH_LIBS([sched_setscheduler], [rt])
447 AC_SEARCH_LIBS([dlopen], [dl])
448 AC_SEARCH_LIBS([shm_open], [rt])
449 AC_SEARCH_LIBS([inet_ntop], [nsl])
450 AC_SEARCH_LIBS([timer_create], [rt])
451 AC_SEARCH_LIBS([pthread_setaffinity_np], [pthread])
452
453 # BSD
454 AC_SEARCH_LIBS([connect], [socket])
455 AC_SEARCH_LIBS([backtrace], [execinfo])
456
457 # Non-standard
458
459 # This magic is needed so we do not needlessly add static libs to the win32
460 # build, disabling its ability to make dlls.
461 AC_CHECK_FUNCS([getopt_long], [], [AC_CHECK_LIB([iberty], [getopt_long])])
462
463 # Darwin/OS X
464 if test "x$os_is_darwin" = "x1" ; then
465     AC_MSG_CHECKING([looking for Apple CoreService Framework])
466     # How do I check a framework "library" - AC_CHECK_LIB prob. won't work??, just assign LIBS & hope
467     AC_CHECK_HEADER([/Developer/Headers/FlatCarbon/CoreServices.h],
468     [LIBS="$LIBS -framework CoreServices"],
469     [AC_MSG_ERROR([CoreServices.h header file not found]) ])
470
471     AC_MSG_RESULT([ok])
472     AC_DEFINE([HAVE_CLOCK_GETTIME], 1, [Using clock_gettime() replacement])
473     HAVE_BONJOUR=1
474 fi
475
476 AC_SUBST(HAVE_BONJOUR)
477 AM_CONDITIONAL([HAVE_BONJOUR], [test "x$HAVE_BONJOUR" = x1])
478
479 AC_SEARCH_LIBS([regexec], [pcreposix])
480
481 #### Check for functions ####
482
483 # ISO
484 AC_CHECK_FUNCS_ONCE([lrintf strtof])
485
486 # POSIX
487 AC_FUNC_FORK
488 AC_FUNC_GETGROUPS
489 AC_FUNC_SELECT_ARGTYPES
490 AC_CHECK_FUNCS_ONCE([chmod chown fstat fchown fchmod clock_gettime getaddrinfo getgrgid_r getgrnam_r \
491     getpwnam_r getpwuid_r gettimeofday getuid mlock nanosleep \
492     pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
493     sigaction sleep symlink sysconf uname pthread_setaffinity_np])
494 AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
495
496 AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
497
498 # X/OPEN
499 AC_CHECK_FUNCS_ONCE([readlink])
500
501 # SUSv2
502 AC_CHECK_FUNCS_ONCE([ctime_r usleep])
503
504 # SUSv3
505 AC_CHECK_FUNCS_ONCE([strerror_r])
506
507 # BSD
508 AC_CHECK_FUNCS_ONCE([lstat])
509
510 # Non-standard
511
512 AC_CHECK_FUNCS_ONCE([setresuid setresgid setreuid setregid seteuid setegid ppoll strsignal sig2str strtof_l pipe2 accept4])
513
514 AC_FUNC_ALLOCA
515
516 AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
517   pulseaudio_cv_PTHREAD_PRIO_INHERIT,
518   [save_CC=$CC; CC=$PTHREAD_CC
519    save_CFLAGS=$CFLAGS; CFLAGS=$PTHREAD_CFLAGS
520    save_LIBS=$LIBS; LIBS=$PTHREAD_LIBS
521    AC_LINK_IFELSE(
522      AC_LANG_PROGRAM(
523        [[
524          #include <pthread.h>
525        ]],
526        [[int i = PTHREAD_PRIO_INHERIT;]]),
527      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=yes],
528      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=no])
529    CC=$save_CC
530    CFLAGS=$save_CFLAGS
531    LIBS=$save_LIBS
532   ])
533
534 AS_IF([test "$pulseaudio_cv_PTHREAD_PRIO_INHERIT" = "yes"], [
535     AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])
536   ])
537
538 AC_DEFINE_UNQUOTED(PA_CFLAGS,"$CFLAGS", [The CFLAGS used during compilation])
539
540 AC_CHECK_FUNCS([regexec], [HAVE_REGEX=1], [HAVE_REGEX=0])
541 AM_CONDITIONAL(HAVE_REGEX, [test "x$HAVE_REGEX" = "x1"])
542
543 #### Large File-Support (LFS) ####
544
545 AC_SYS_LARGEFILE
546
547 # Check for open64 to know if the current system does have open64() and similar functions
548 AC_CHECK_FUNCS_ONCE([open64])
549
550 #### [lib]iconv ####
551
552 AM_ICONV
553
554 IT_PROG_INTLTOOL([0.35.0])
555 GETTEXT_PACKAGE=pulseaudio
556 AC_SUBST([GETTEXT_PACKAGE])
557 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
558 AM_GLIB_GNU_GETTEXT
559
560 pulselocaledir='${prefix}/${DATADIRNAME}/locale'
561 AC_SUBST(pulselocaledir)
562
563 ###################################
564 #      External libraries         #
565 ###################################
566
567 #### pkg-config ####
568
569 PKG_PROG_PKG_CONFIG
570
571 #### X11 (optional) ####
572
573 AC_ARG_ENABLE([x11],
574     AS_HELP_STRING([--disable-x11],[Disable optional X11 support]),
575         [
576             case "${enableval}" in
577                 yes) x11=yes ;;
578                 no) x11=no ;;
579                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-x11) ;;
580             esac
581         ],
582         [x11=auto])
583
584 if test "x${x11}" != xno ; then
585     PKG_CHECK_MODULES(X11, [ x11-xcb ice sm xtst xcb-atom ],
586         HAVE_X11=1,
587         [
588             HAVE_X11=0
589             if test "x$x11" = xyes ; then
590                 AC_MSG_ERROR([*** X11 not found])
591             fi
592         ])
593 else
594     HAVE_X11=0
595 fi
596
597 if test "x${HAVE_X11}" = x1 ; then
598    AC_DEFINE([HAVE_X11], 1, [Have X11?])
599 fi
600
601 AC_SUBST(X11_CFLAGS)
602 AC_SUBST(X11_LIBS)
603 AC_SUBST(HAVE_X11)
604 AM_CONDITIONAL([HAVE_X11], [test "x$HAVE_X11" = x1])
605
606 #### Capabilities (optional) ####
607
608 CAP_LIBS=''
609
610 AC_ARG_WITH(
611         [caps],
612         AS_HELP_STRING([--without-caps],[Omit support for POSIX capabilities.]))
613
614 if test "x${with_caps}" != "xno"; then
615     AC_SEARCH_LIBS([cap_init], [cap], [], [
616                     if test "x${with_caps}" = "xyes" ; then
617                         AC_MSG_ERROR([*** POSIX caps libraries not found])
618                     fi])
619     AC_CHECK_HEADERS([sys/capability.h], [], [
620                     if test "x${with_caps}" = "xyes" ; then
621                         AC_MSG_ERROR([*** POSIX caps headers not found])
622                     fi])
623 fi
624
625 #### Valgrind (optional) ####
626
627 AC_CHECK_HEADERS_ONCE([valgrind/memcheck.h])
628
629 #### Sound file ####
630
631 PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.20 ])
632 AC_SUBST(LIBSNDFILE_CFLAGS)
633 AC_SUBST(LIBSNDFILE_LIBS)
634
635 PKG_CHECK_MODULES(LIBSPEEX, [ speexdsp >= 1.2 ])
636 AC_SUBST(LIBSPEEX_CFLAGS)
637 AC_SUBST(LIBSPEEX_LIBS)
638
639 #### atomic-ops ###
640
641 AC_MSG_CHECKING([whether we need libatomic_ops])
642 if test "x$need_libatomic_ops" = "xyes"; then
643    AC_MSG_RESULT([yes])
644    AC_CHECK_HEADERS([atomic_ops.h], [], [
645    AC_MSG_ERROR([*** libatomic-ops headers not found])
646    ])
647
648    # Win32 does not need the lib and breaks horribly if we try to include it
649    if test "x$os_is_win32" != "x1" ; then
650        LIBS="$LIBS -latomic_ops"
651    fi
652 else
653    AC_MSG_RESULT([no])
654 fi
655
656 #### Libsamplerate support (optional) ####
657
658 AC_ARG_ENABLE([samplerate],
659     AS_HELP_STRING([--disable-samplerate],[Disable optional libsamplerate support]),
660         [
661             case "${enableval}" in
662                 yes) samplerate=yes ;;
663                 no) samplerate=no ;;
664                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-samplerate) ;;
665             esac
666         ],
667         [samplerate=auto])
668
669 if test "x${samplerate}" != xno ; then
670     PKG_CHECK_MODULES(LIBSAMPLERATE, [ samplerate >= 0.1.0 ],
671         HAVE_LIBSAMPLERATE=1,
672         [
673             HAVE_LIBSAMPLERATE=0
674             if test "x$samplerate" = xyes ; then
675                 AC_MSG_ERROR([*** Libsamplerate not found])
676             fi
677         ])
678 else
679     HAVE_LIBSAMPLERATE=0
680 fi
681
682 if test "x${HAVE_LIBSAMPLERATE}" = x1 ; then
683    AC_DEFINE([HAVE_LIBSAMPLERATE], 1, [Have libsamplerate?])
684 fi
685
686 AC_SUBST(LIBSAMPLERATE_CFLAGS)
687 AC_SUBST(LIBSAMPLERATE_LIBS)
688 AC_SUBST(HAVE_LIBSAMPLERATE)
689 AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
690
691 #### Database support ####
692
693 HAVE_TDB=0
694 HAVE_GDBM=0
695 HAVE_SIMPLEDB=0
696
697 AC_ARG_WITH(
698         [database],
699         AS_HELP_STRING([--with-database=auto|tdb|gdbm|simple],[Choose database backend.]),[],[with_database=auto])
700
701 if test "x${with_database}" = "xauto" -o "x${with_database}" = "xtdb" ; then
702     PKG_CHECK_MODULES(TDB, [ tdb ],
703         [
704             HAVE_TDB=1
705             with_database=tdb
706         ], [
707             if test "x${with_database}" = "xtdb" ; then
708                 AC_MSG_ERROR([*** tdb not found])
709             fi
710         ])
711 fi
712
713 if test "x${with_database}" = "xauto" -o "x${with_database}" = "xgdbm" ; then
714    have_gdbm=yes
715
716    AC_CHECK_LIB(gdbm, gdbm_open, [], [have_gdbm=no])
717    AC_CHECK_HEADERS(gdbm.h, [], [have_gdbm=no])
718
719    if test "x${have_gdbm}" = "xyes" ; then
720        HAVE_GDBM=1
721        GDBM_CFLAGS=
722        GDBM_LIBS=-lgdbm
723        with_database=gdbm
724    elif test "x${with_database}" = "xgdbm"; then
725        AC_MSG_ERROR([*** gdbm not found])
726    fi
727 fi
728
729 if test "x${with_database}" = "xauto" -o "x${with_database}" = "xsimple" ; then
730     HAVE_SIMPLEDB=1
731     with_database=simple
732 fi
733
734 if test "x${HAVE_TDB}" != x1 -a "x${HAVE_GDBM}" != x1 -a "x${HAVE_SIMPLEDB}" != x1; then
735    AC_MSG_ERROR([*** missing database backend])
736 fi
737
738 if test "x${HAVE_TDB}" = x1 ; then
739    AC_DEFINE([HAVE_TDB], 1, [Have tdb?])
740 fi
741
742 if test "x${HAVE_GDBM}" = x1 ; then
743    AC_DEFINE([HAVE_GDBM], 1, [Have gdbm?])
744 fi
745
746 if test "x${HAVE_SIMPLEDB}" = x1 ; then
747     AC_DEFINE([HAVE_SIMPLEDB], 1, [Have simple?])
748 fi
749
750 AC_SUBST(TDB_CFLAGS)
751 AC_SUBST(TDB_LIBS)
752 AC_SUBST(HAVE_TDB)
753 AM_CONDITIONAL([HAVE_TDB], [test "x$HAVE_TDB" = x1])
754
755 AC_SUBST(GDBM_CFLAGS)
756 AC_SUBST(GDBM_LIBS)
757 AC_SUBST(HAVE_GDBM)
758 AM_CONDITIONAL([HAVE_GDBM], [test "x$HAVE_GDBM" = x1])
759
760 AC_SUBST(HAVE_SIMPLEDB)
761 AM_CONDITIONAL([HAVE_SIMPLEDB], [test "x$HAVE_SIMPLEDB" = x1])
762
763 #### OSS support (optional) ####
764
765 AC_ARG_ENABLE([oss-output],
766     AS_HELP_STRING([--disable-oss-output],[Disable optional OSS output support]),
767         [
768             case "${enableval}" in
769                 yes) oss_output=yes ;;
770                 no) oss_output=no ;;
771                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss-output) ;;
772             esac
773         ],
774         [oss_output=auto])
775
776 AC_ARG_ENABLE([oss-wrapper],
777     AS_HELP_STRING([--disable-oss-wrapper],[Disable optional OSS wrapper support]),
778         [
779             case "${enableval}" in
780                 yes) oss_wrapper=yes ;;
781                 no) oss_wrapper=no ;;
782                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss-wrapper) ;;
783             esac
784         ],
785         [oss_wrapper=auto])
786
787 if test "x${oss_output}" != xno || test "x${oss_wrapper}" != "xno"; then
788     AC_CHECK_HEADERS([sys/soundcard.h],
789         [
790             if test "x${oss_output}" != "xno"; then
791                 AC_DEFINE([HAVE_OSS_OUTPUT], 1, [Have OSS output?])
792             fi
793             if test "x${oss_wrapper}" != "xno"; then
794                 AC_DEFINE([HAVE_OSS_WRAPPER], 1, [Have OSS wrapper (padsp)?])
795             fi
796             HAVE_OSS=1
797         ],
798         [
799             HAVE_OSS=0
800             if test "x$oss_output" = xyes || test "x$oss_wrapper" = "xyes"; then
801                 AC_MSG_ERROR([*** OSS support not found])
802             fi
803         ])
804 else
805     HAVE_OSS=0
806 fi
807
808 AC_SUBST(HAVE_OSS)
809 AM_CONDITIONAL([HAVE_OSS_OUTPUT], [test "x$HAVE_OSS" = x1 && test "x${oss_output}" != "xno"])
810 AM_CONDITIONAL([HAVE_OSS_WRAPPER], [test "x$HAVE_OSS" = x1 && test "x${oss_wrapper}" != "xno"])
811
812 #### CoreAudio support (optional) ####
813
814 AC_ARG_ENABLE([coreaudio-output],
815     AS_HELP_STRING([--disable-coreaudio-output],[Disable optional CoreAudio output support]),
816         [
817             case "${enableval}" in
818                 yes) coreaudio_enabled=yes ;;
819                 no) coreaudio_enabled=no ;;
820                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-coreaudio-output) ;;
821             esac
822         ],
823         [coreaudio_enabled=auto])
824
825 if test "x${coreaudio_enabled}" != xno ; then
826     AC_CHECK_HEADERS([CoreAudio/CoreAudio.h], HAVE_COREAUDIO=1)
827 else
828     HAVE_COREAUDIO=0
829 fi
830
831 AC_SUBST(HAVE_COREAUDIO)
832 AM_CONDITIONAL([HAVE_COREAUDIO], [test "x$HAVE_COREAUDIO" = x1 && test "x${coreaudio_enabled}" != "xno"])
833
834 #### ALSA support (optional) ####
835
836 AC_ARG_ENABLE([alsa],
837     AS_HELP_STRING([--disable-alsa],[Disable optional ALSA support]),
838         [
839             case "${enableval}" in
840                 yes) alsa=yes ;;
841                 no) alsa=no ;;
842                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-alsa) ;;
843             esac
844         ],
845         [alsa=auto])
846
847 if test "x${alsa}" != xno ; then
848     PKG_CHECK_MODULES(ASOUNDLIB, [ alsa >= 1.0.19 ],
849         [
850             HAVE_ALSA=1
851             AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?])
852         ],
853         [
854             HAVE_ALSA=0
855             if test "x$alsa" = xyes ; then
856                 AC_MSG_ERROR([*** Needed alsa >= 1.0.19 support not found])
857             fi
858         ])
859 else
860     HAVE_ALSA=0
861 fi
862
863 AC_SUBST(ASOUNDLIB_CFLAGS)
864 AC_SUBST(ASOUNDLIB_LIBS)
865 AC_SUBST(HAVE_ALSA)
866 AM_CONDITIONAL([HAVE_ALSA], [test "x$HAVE_ALSA" = x1])
867
868 #### Solaris audio support (optional) ####
869
870 AC_ARG_ENABLE([solaris],
871     AS_HELP_STRING([--disable-solaris],[Disable optional Solaris audio support]),
872         [
873             case "${enableval}" in
874                 yes) solaris=yes ;;
875                 no) solaris=no ;;
876                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-solaris) ;;
877             esac
878         ],
879         [solaris=auto])
880
881 if test "x${solaris}" != xno ; then
882     AC_CHECK_HEADERS([sys/audio.h],
883         [
884             HAVE_SOLARIS=1
885             AC_DEFINE([HAVE_SOLARIS], 1, [Have Solaris audio?])
886         ],
887         [
888             HAVE_SOLARIS=0
889             if test "x$solaris" = xyes ; then
890                 AC_MSG_ERROR([*** Solaris audio support not found])
891             fi
892         ])
893 else
894     HAVE_SOLARIS=0
895 fi
896
897 AC_SUBST(HAVE_SOLARIS)
898 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$HAVE_SOLARIS" = x1])
899
900 #### WaveOut audio support (optional) ####
901
902 AC_ARG_ENABLE([waveout],
903     AS_HELP_STRING([--disable-waveout],[Disable optional WaveOut audio support]),
904         [
905             case "${enableval}" in
906                 yes) waveout=yes ;;
907                 no) waveout=no ;;
908                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-waveout) ;;
909             esac
910         ],
911         [waveout=auto])
912
913 if test "x${waveout}" != xno ; then
914     AC_CHECK_HEADERS([mmsystem.h],
915         [
916             HAVE_WAVEOUT=1
917             AC_DEFINE([HAVE_WAVEOUT], 1, [Have WaveOut audio?])
918         ],
919         [
920             HAVE_WAVEOUT=0
921             if test "x$waveout" = xyes ; then
922                 AC_MSG_ERROR([*** WaveOut audio support not found])
923             fi
924         ],
925         [#include <windows.h>])
926 else
927     HAVE_WAVEOUT=0
928 fi
929
930 AC_SUBST(HAVE_WAVEOUT)
931 AM_CONDITIONAL([HAVE_WAVEOUT], [test "x$HAVE_WAVEOUT" = x1])
932
933 #### GLib 2 support (optional) ####
934
935 AC_ARG_ENABLE([glib2],
936     AS_HELP_STRING([--disable-glib2],[Disable optional GLib 2 support]),
937         [
938             case "${enableval}" in
939                 yes) glib2=yes ;;
940                 no) glib2=no ;;
941                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-glib2) ;;
942             esac
943         ],
944         [glib2=auto])
945
946 if test "x${glib2}" != xno ; then
947     PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ],
948         HAVE_GLIB20=1,
949         [
950             HAVE_GLIB20=0
951             if test "x$glib2" = xyes ; then
952                 AC_MSG_ERROR([*** GLib 2 support not found])
953             fi
954         ])
955 else
956     HAVE_GLIB20=0
957 fi
958
959 AC_SUBST(GLIB20_CFLAGS)
960 AC_SUBST(GLIB20_LIBS)
961 AC_SUBST(HAVE_GLIB20)
962 AM_CONDITIONAL([HAVE_GLIB20], [test "x$HAVE_GLIB20" = x1])
963
964 if test "x$HAVE_GLIB20" = x1 ; then
965    AC_DEFINE([HAVE_GLIB], 1, [Have GLIB?])
966 fi
967
968 #### GTK2 support (optional) ####
969
970 AC_ARG_ENABLE([gtk2],
971     AS_HELP_STRING([--disable-gtk2],[Disable optional Gtk+ 2 support]),
972         [
973             case "${enableval}" in
974                 yes) gtk2=yes ;;
975                 no) gtk2=no ;;
976                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gtk2) ;;
977             esac
978         ],
979         [gtk2=auto])
980
981 if test "x${gtk2}" != xno ; then
982     PKG_CHECK_MODULES(GTK20, [ gtk+-2.0 >= 2.4.0 ],
983         HAVE_GTK20=1,
984         [
985             HAVE_GTK20=0
986             if test "x$gtk2" = xyes ; then
987                 AC_MSG_ERROR([*** Gtk+ 2 support not found])
988             fi
989         ])
990 else
991     HAVE_GTK20=0
992 fi
993
994 AC_SUBST(GTK20_CFLAGS)
995 AC_SUBST(GTK20_LIBS)
996 AC_SUBST(HAVE_GTK20)
997 AM_CONDITIONAL([HAVE_GTK20], [test "x$HAVE_GTK20" = x1])
998
999 if test "x$HAVE_GTK20" = x1 ; then
1000    AC_DEFINE([HAVE_GTK], 1, [Have GTK?])
1001 fi
1002
1003 #### GConf support (optional) ####
1004
1005 AC_ARG_ENABLE([gconf],
1006     AS_HELP_STRING([--disable-gconf],[Disable optional GConf support]),
1007         [
1008             case "${enableval}" in
1009                 yes) gconf=yes ;;
1010                 no) gconf=no ;;
1011                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gconf) ;;
1012             esac
1013         ],
1014         [gconf=auto])
1015
1016 if test "x${gconf}" != xno ; then
1017     PKG_CHECK_MODULES(GCONF, [ gconf-2.0 >= 2.4.0 gobject-2.0 ],
1018         HAVE_GCONF=1,
1019         [
1020             HAVE_GCONF=0
1021             if test "x$gconf" = xyes ; then
1022                 AC_MSG_ERROR([*** GConf support not found])
1023             fi
1024         ])
1025 else
1026     HAVE_GCONF=0
1027 fi
1028
1029 AC_SUBST(GCONF_CFLAGS)
1030 AC_SUBST(GCONF_LIBS)
1031 AC_SUBST(HAVE_GCONF)
1032 AM_CONDITIONAL([HAVE_GCONF], [test "x$HAVE_GCONF" = x1])
1033
1034 #### Avahi support (optional) ####
1035
1036 AC_ARG_ENABLE([avahi],
1037     AS_HELP_STRING([--disable-avahi],[Disable optional Avahi support]),
1038         [
1039             case "${enableval}" in
1040                 yes) avahi=yes ;;
1041                 no) avahi=no ;;
1042                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-avahi) ;;
1043             esac
1044         ],
1045         [avahi=auto])
1046
1047 if test "x${avahi}" != xno ; then
1048     PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.0 ],
1049         HAVE_AVAHI=1,
1050         [
1051                 HAVE_AVAHI=0
1052                 if test "x$avahi" = xyes ; then
1053                         AC_MSG_ERROR([*** Avahi support not found])
1054                 fi
1055         ])
1056 else
1057     HAVE_AVAHI=0
1058 fi
1059
1060 AC_SUBST(AVAHI_CFLAGS)
1061 AC_SUBST(AVAHI_LIBS)
1062 AC_SUBST(HAVE_AVAHI)
1063 AM_CONDITIONAL([HAVE_AVAHI], [test "x$HAVE_AVAHI" = x1])
1064
1065 ### JACK (optional) ####
1066
1067 AC_ARG_ENABLE([jack],
1068     AS_HELP_STRING([--disable-jack],[Disable optional JACK support]),
1069         [
1070             case "${enableval}" in
1071                 yes) jack=yes ;;
1072                 no) jack=no ;;
1073                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-jack) ;;
1074             esac
1075         ],
1076         [jack=auto])
1077
1078 if test "x${jack}" != xno ; then
1079     PKG_CHECK_MODULES(JACK, [ jack >= 0.100 ],
1080         HAVE_JACK=1,
1081         [
1082             HAVE_JACK=0
1083             if test "x$jack" = xyes ; then
1084                 AC_MSG_ERROR([*** JACK support not found])
1085             fi
1086         ])
1087 else
1088     HAVE_JACK=0
1089 fi
1090
1091 AC_SUBST(JACK_CFLAGS)
1092 AC_SUBST(JACK_LIBS)
1093 AC_SUBST(HAVE_JACK)
1094 AM_CONDITIONAL([HAVE_JACK], [test "x$HAVE_JACK" = x1])
1095
1096 #### Async DNS support (optional) ####
1097
1098 AC_ARG_ENABLE([asyncns],
1099     AS_HELP_STRING([--disable-asyncns],[Disable optional Async DNS support]),
1100         [
1101             case "${enableval}" in
1102                 yes) asyncns=yes ;;
1103                 no) asyncns=no ;;
1104                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-asyncns) ;;
1105             esac
1106         ],
1107         [asyncns=auto])
1108
1109 if test "x${asyncns}" != xno ; then
1110     PKG_CHECK_MODULES(LIBASYNCNS, [ libasyncns >= 0.1 ],
1111         HAVE_LIBASYNCNS=1,
1112         [
1113             HAVE_LIBASYNCNS=0
1114             if test "x$asyncns" = xyes ; then
1115                 AC_MSG_ERROR([*** Async DNS support not found])
1116             fi
1117         ])
1118 else
1119     HAVE_LIBASYNCNS=0
1120 fi
1121
1122 AC_SUBST(LIBASYNCNS_CFLAGS)
1123 AC_SUBST(LIBASYNCNS_LIBS)
1124 AC_SUBST(HAVE_LIBASYNCNS)
1125 AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
1126
1127 if test "x$HAVE_LIBASYNCNS" != "x0" ; then
1128    AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?])
1129 fi
1130
1131 #### TCP wrappers (optional) ####
1132
1133 AC_ARG_ENABLE([tcpwrap],
1134     AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]),
1135         [
1136             case "${enableval}" in
1137                 yes) tcpwrap=yes ;;
1138                 no) tcpwrap=no ;;
1139                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tcpwrap) ;;
1140             esac
1141         ],
1142         [tcpwrap=auto])
1143
1144 if test "x${tcpwrap}" != xno ; then
1145     ACX_LIBWRAP
1146     if test "x${LIBWRAP_LIBS}" = x && test "x$tcpwrap" = xyes ; then
1147         AC_MSG_ERROR([*** TCP wrappers support not found])
1148     fi
1149 else
1150     LIBWRAP_LIBS=
1151 fi
1152
1153 AC_SUBST(LIBWRAP_LIBS)
1154
1155 #### LIRC support (optional) ####
1156
1157 AC_ARG_ENABLE([lirc],
1158     AS_HELP_STRING([--disable-lirc],[Disable optional LIRC support]),
1159         [
1160             case "${enableval}" in
1161                 yes) lirc=yes ;;
1162                 no) lirc=no ;;
1163                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-lirc) ;;
1164             esac
1165         ],
1166         [lirc=auto])
1167
1168 if test "x${lirc}" != xno ; then
1169     ACX_LIRC
1170     if test "x${HAVE_LIRC}" = x0 && test "x$lirc" = xyes ; then
1171         AC_MSG_ERROR([*** LIRC support not found])
1172     fi
1173 else
1174     HAVE_LIRC=0
1175 fi
1176
1177 AC_SUBST(LIRC_CFLAGS)
1178 AC_SUBST(LIRC_LIBS)
1179 AM_CONDITIONAL([HAVE_LIRC], [test "x$HAVE_LIRC" = x1])
1180
1181 #### HAL support (optional) ####
1182
1183 AC_ARG_ENABLE([hal],
1184     AS_HELP_STRING([--disable-hal],[Disable optional HAL support]),
1185         [
1186             case "${enableval}" in
1187                 yes) hal=yes ;;
1188                 no) hal=no ;;
1189                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal) ;;
1190             esac
1191         ],
1192         [hal=auto])
1193 if test "x${hal}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
1194     PKG_CHECK_MODULES(HAL, [ hal >= 0.5.11 ],
1195         [
1196             HAVE_HAL=1
1197             AC_DEFINE([HAVE_HAL], 1, [Have HAL.])
1198         ],
1199         [
1200             HAVE_HAL=0
1201             if test "x$hal" = xyes ; then
1202                 AC_MSG_ERROR([*** HAL support not found])
1203             fi
1204         ])
1205 else
1206     HAVE_HAL=0
1207 fi
1208
1209 AC_SUBST(HAL_CFLAGS)
1210 AC_SUBST(HAL_LIBS)
1211 AC_SUBST(HAVE_HAL)
1212 AM_CONDITIONAL([HAVE_HAL], [test "x$HAVE_HAL" = x1])
1213
1214 #### UDEV support (optional) ####
1215
1216 AC_ARG_ENABLE([udev],
1217     AS_HELP_STRING([--disable-udev],[Disable optional UDEV support]),
1218         [
1219             case "${enableval}" in
1220                 yes) udev=yes ;;
1221                 no) udev=no ;;
1222                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-udev) ;;
1223             esac
1224         ],
1225         [udev=auto])
1226 if test "x${udev}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
1227     PKG_CHECK_MODULES(UDEV, [ libudev >= 143 ],
1228         [
1229             HAVE_UDEV=1
1230             AC_DEFINE([HAVE_UDEV], 1, [Have UDEV.])
1231         ],
1232         [
1233             HAVE_UDEV=0
1234             if test "x$udev" = xyes ; then
1235                 AC_MSG_ERROR([*** UDEV support not found])
1236             fi
1237         ])
1238 else
1239     HAVE_UDEV=0
1240 fi
1241
1242 AC_SUBST(UDEV_CFLAGS)
1243 AC_SUBST(UDEV_LIBS)
1244 AC_SUBST(HAVE_UDEV)
1245 AM_CONDITIONAL([HAVE_UDEV], [test "x$HAVE_UDEV" = x1])
1246
1247 #### BlueZ support (optional) ####
1248
1249 AC_ARG_ENABLE([bluez],
1250     AS_HELP_STRING([--disable-bluez],[Disable optional BlueZ support]),
1251         [
1252             case "${enableval}" in
1253                 yes) bluez=yes ;;
1254                 no) bluez=no ;;
1255                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-bluez) ;;
1256             esac
1257         ],
1258         [bluez=auto])
1259 if test "x${bluez}" != xno ; then
1260     PKG_CHECK_MODULES(BLUEZ, [ bluez >= 3.0 ],
1261         HAVE_BLUEZ=1,
1262         [
1263             HAVE_BLUEZ=0
1264             if test "x$bluez" = xyes ; then
1265                 AC_MSG_ERROR([*** BLUEZ support not found])
1266             fi
1267         ])
1268 else
1269     HAVE_BLUEZ=0
1270 fi
1271
1272 AC_SUBST(BLUEZ_CFLAGS)
1273 AC_SUBST(BLUEZ_LIBS)
1274 AC_SUBST(HAVE_BLUEZ)
1275 AM_CONDITIONAL([HAVE_BLUEZ], [test "x$HAVE_BLUEZ" = x1])
1276
1277 #### D-Bus support (optional) ####
1278
1279 AC_ARG_ENABLE([dbus],
1280     AS_HELP_STRING([--disable-dbus],[Disable optional D-Bus support]),
1281         [
1282             case "${enableval}" in
1283                 yes) dbus=yes ;;
1284                 no) dbus=no ;;
1285                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-dbus) ;;
1286             esac
1287         ],
1288         [dbus=auto])
1289
1290 if test "x${dbus}" != xno ; then
1291
1292     PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.0.0 ],
1293         [
1294             HAVE_DBUS=1
1295             saved_LIBS="$LIBS"
1296             LIBS="$LIBS $DBUS_LIBS"
1297             CFLAGS="$CFLAGS $DBUS_CFLAGS"
1298             AC_CHECK_FUNCS(dbus_watch_get_unix_fd)
1299             LIBS="$saved_LIBS"
1300             AC_DEFINE([HAVE_DBUS], 1, [Have D-Bus.])
1301         ],
1302         [
1303             HAVE_DBUS=0
1304             if test "x$dbus" = xyes ; then
1305                 AC_MSG_ERROR([*** D-Bus support not found])
1306             fi
1307         ])
1308 else
1309     HAVE_DBUS=0
1310 fi
1311
1312 AC_SUBST(DBUS_CFLAGS)
1313 AC_SUBST(DBUS_LIBS)
1314 AC_SUBST(HAVE_DBUS)
1315 AM_CONDITIONAL([HAVE_DBUS], [test "x$HAVE_DBUS" = x1])
1316
1317
1318 # udev and HAL depend on D-Bus: So double check if they were explicitly enabled.
1319 if test "x$HAVE_DBUS" != "x1" ; then
1320     HAVE_HAL=0
1321     if test "x${hal}" = xyes ; then
1322         AC_MSG_ERROR([*** D-Bus support is required by HAL])
1323     fi
1324
1325     HAVE_BLUEZ=0
1326     if test "x${bluez}" = xyes ; then
1327         AC_MSG_ERROR([*** D-Bus support is required by BLUEZ])
1328     fi
1329 fi
1330
1331
1332 #### HAL compat support (optional) ####
1333
1334 AC_ARG_ENABLE([hal-compat],
1335     AS_HELP_STRING([--disable-hal-compat],[Disable optional HAL->udev transition compatibility support]),
1336         [
1337             case "${enableval}" in
1338                 yes) halcompat=yes ;;
1339                 no) halcompat=no ;;
1340                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal-compat) ;;
1341             esac
1342         ],
1343         [halcompat=auto])
1344 if test "x${halcompat}" != xno -a "x$HAVE_HAL" = "x0" -a "x$HAVE_UDEV" = "x1" ; then
1345     HAVE_HAL_COMPAT=1
1346     AC_DEFINE([HAVE_HAL_COMPAT], 1, [Have HAL compatibility.])
1347 else
1348     HAVE_HAL_COMPAT=0
1349 fi
1350
1351 AC_SUBST(HAVE_HAL_COMPAT)
1352 AM_CONDITIONAL([HAVE_HAL_COMPAT], [test "x$HAVE_HAL_COMPAT" = x1])
1353
1354 ### IPv6 connection support (optional) ###
1355
1356 AC_ARG_ENABLE([ipv6],
1357     AS_HELP_STRING([--disable-ipv6],[Disable optional IPv6 support]),
1358         [
1359             case "${enableval}" in
1360                 yes) ipv6=yes ;;
1361                 no) ipv6=no ;;
1362                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-ipv6) ;;
1363             esac
1364         ],
1365         [ipv6=auto])
1366
1367 if test "x${ipv6}" != xno ; then
1368     AC_DEFINE([HAVE_IPV6], [1], [Define this to enable IPv6 connection support])
1369     HAVE_IPV6=1
1370 else
1371     HAVE_IPV6=0
1372 fi
1373
1374 #### OpenSSL support (optional) ####
1375
1376 AC_ARG_ENABLE([openssl],
1377     AS_HELP_STRING([--disable-openssl],[Disable OpenSSL support (used for Airtunes/RAOP)]),
1378         [
1379             case "${enableval}" in
1380                 yes) openssl=yes ;;
1381                 no) openssl=no ;;
1382                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-openssl) ;;
1383             esac
1384         ],
1385         [openssl=auto])
1386
1387 if test "x${openssl}" != xno ; then
1388
1389     PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ],
1390         [
1391             HAVE_OPENSSL=1
1392             AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL])
1393         ],
1394         [
1395             HAVE_OPENSSL=0
1396             if test "x$openssl" = xyes ; then
1397                 AC_MSG_ERROR([*** OpenSSL support not found])
1398             fi
1399         ])
1400 else
1401     HAVE_OPENSSL=0
1402 fi
1403
1404 AC_SUBST(OPENSSL_CFLAGS)
1405 AC_SUBST(OPENSSL_LIBS)
1406 AC_SUBST(HAVE_OPENSSL)
1407 AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
1408
1409 #### FFTW (optional) ####
1410 AC_ARG_WITH(
1411         [fftw],
1412         AS_HELP_STRING([--without-fftw], [Omit FFTW-using modules (equalizer)]))
1413
1414 if test "x${with_fftw}" != "xno"; then
1415     PKG_CHECK_MODULES([FFTW], [fftw3f], [HAVE_FFTW=1], [HAVE_FFTW=0])
1416 fi
1417 AM_CONDITIONAL([HAVE_FFTW], [test "x$HAVE_FFTW" = "x1"])
1418
1419 ### ORC (optional) ###
1420 ORC_CHECK([0.4.11])
1421
1422 ### Build and Install man pages ###
1423 AC_ARG_ENABLE(manpages,
1424         AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]),
1425 [case "${enableval}" in
1426   yes) manpages=yes ;;
1427   no)  manpages=no ;;
1428   *) AC_MSG_ERROR([bad value ${enableval} for --disable-manpages]) ;;
1429 esac],[manpages=yes])
1430
1431 AM_CONDITIONAL([BUILD_MANPAGES], [test "x$manpages" = xyes])
1432
1433 #### PulseAudio system group & user  #####
1434
1435 AC_ARG_WITH(system_user, AS_HELP_STRING([--with-system-user=<user>],[User for running the PulseAudio daemon as a system-wide instance (pulse)]))
1436 if test -z "$with_system_user" ; then
1437     PA_SYSTEM_USER=pulse
1438 else
1439     PA_SYSTEM_USER=$with_system_user
1440 fi
1441 AC_SUBST(PA_SYSTEM_USER)
1442 AC_DEFINE_UNQUOTED(PA_SYSTEM_USER,"$PA_SYSTEM_USER", [User for running the PulseAudio system daemon])
1443
1444 AC_ARG_WITH(system_group,AS_HELP_STRING([--with-system-group=<group>],[Group for running the PulseAudio daemon as a system-wide instance (pulse)]))
1445 if test -z "$with_system_group" ; then
1446     PA_SYSTEM_GROUP=pulse
1447 else
1448     PA_SYSTEM_GROUP=$with_system_group
1449 fi
1450 AC_SUBST(PA_SYSTEM_GROUP)
1451 AC_DEFINE_UNQUOTED(PA_SYSTEM_GROUP,"$PA_SYSTEM_GROUP", [Group for the PulseAudio system daemon])
1452
1453 AC_ARG_WITH(access_group,AS_HELP_STRING([--with-access-group=<group>],[Group which is allowed access to a system-wide PulseAudio daemon (pulse-access)]))
1454 if test -z "$with_access_group" ; then
1455     PA_ACCESS_GROUP=pulse-access
1456 else
1457     PA_ACCESS_GROUP=$with_access_group
1458 fi
1459 AC_SUBST(PA_ACCESS_GROUP)
1460 AC_DEFINE_UNQUOTED(PA_ACCESS_GROUP,"$PA_ACCESS_GROUP", [Access group])
1461
1462 AC_ARG_ENABLE(
1463         per_user_esound_socket,
1464         AS_HELP_STRING([--disable-per-user-esound-socket], [Use global esound socket directory /tmp/.esd/socket.]),
1465         [
1466             case "${enableval}" in
1467                 yes) per_user_esound_socket=1 ;;
1468                 no) per_user_esound_socket=0 ;;
1469                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-per-user-esound-socket) ;;
1470             esac
1471         ],
1472         [per_user_esound_socket=1])
1473
1474 if test "x$per_user_esound_socket" = "x1"; then
1475    AC_DEFINE([USE_PER_USER_ESOUND_SOCKET], [1], [Define this if you want per-user esound socket directories])
1476 fi
1477
1478 #### PulseAudio system runtime dir ####
1479 PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
1480 AC_SUBST(PA_SYSTEM_RUNTIME_PATH)
1481 PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
1482 AC_SUBST(PA_SYSTEM_CONFIG_PATH)
1483 PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
1484 AC_SUBST(PA_SYSTEM_STATE_PATH)
1485
1486 ###################################
1487 #            Output               #
1488 ###################################
1489
1490 AC_ARG_ENABLE([legacy-runtime-dir],
1491         AS_HELP_STRING([--disable-legacy-runtime-dir], [Try to connect on legacy (< 0.9.12) socket paths.]))
1492 if test "x$enable_legacy_runtime_dir" != "xno" ; then
1493         AC_DEFINE(ENABLE_LEGACY_RUNTIME_DIR, [1], [Legacy runtime dir])
1494 fi
1495
1496 AC_ARG_ENABLE(
1497         [static-bins],
1498         AS_HELP_STRING([--enable-static-bins],[Statically link executables.]),
1499         [STATIC_BINS=1], [STATIC_BINS=0])
1500 AM_CONDITIONAL([STATIC_BINS], [test "x$STATIC_BINS" = "x1"])
1501
1502 AC_ARG_WITH(
1503         [preopen-mods],
1504         AS_HELP_STRING([--with-preopen-mods],[Modules to preopen in daemon (default: all).]),
1505         [PREOPEN_MODS=$withval], [PREOPEN_MODS="all"])
1506 AM_CONDITIONAL([PREOPEN_MODS], [test "x$PREOPEN_MODS" != "xall"])
1507 if test "x$PREOPEN_MODS" != "xall" ; then
1508     tmpLIBS=""
1509     for mod in $PREOPEN_MODS; do
1510         tmpLIBS="$tmpLIBS module-$mod.la"
1511     done
1512     PREOPEN_MODS="$tmpLIBS"
1513     AC_SUBST(PREOPEN_MODS)
1514 fi
1515
1516 AC_ARG_WITH(
1517         [module-dir],
1518         AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINOR}/modules]),
1519         [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINOR}/modules"])
1520
1521 AC_SUBST(modlibexecdir)
1522
1523 AC_ARG_WITH(
1524         [udev-rules-dir],
1525         AS_HELP_STRING([--with-udev-rules-dir],[Directory where to install udev rules to (defaults to /lib/udev/rules.d)]),
1526         [udevrulesdir=$withval], [udevrulesdir="/lib/udev/rules.d"])
1527
1528 AC_SUBST(udevrulesdir)
1529
1530 AC_ARG_ENABLE(
1531         [force-preopen],
1532         AS_HELP_STRING([--enable-force-preopen],[Preopen modules, even when dlopen() is supported.]),
1533         [FORCE_PREOPEN=$enableval], [FORCE_PREOPEN=no])
1534 AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
1535
1536 AC_CONFIG_FILES([
1537 Makefile
1538 src/Makefile
1539 man/Makefile
1540 libpulse.pc
1541 libpulse-simple.pc
1542 libpulse-browse.pc
1543 libpulse-mainloop-glib.pc
1544 doxygen/Makefile
1545 doxygen/doxygen.conf
1546 src/pulse/version.h
1547 po/Makefile.in
1548 ])
1549
1550 AC_OUTPUT
1551
1552 # ==========================================================================
1553 ENABLE_X11=no
1554 if test "x$HAVE_X11" = "x1" ; then
1555    ENABLE_X11=yes
1556 fi
1557
1558 ENABLE_OSS_OUTPUT=no
1559 ENABLE_OSS_WRAPPER=no
1560 if test "x$HAVE_OSS" = "x1" ; then
1561    if test "x$enable_oss_output" != "xno"; then
1562       ENABLE_OSS_OUTPUT=yes
1563    fi
1564    if test "x$enable_oss_wrapper" != "xno"; then
1565       ENABLE_OSS_WRAPPER=yes
1566    fi
1567 fi
1568
1569 ENABLE_COREAUDIO=no
1570 if test "x$HAVE_COREAUDIO" = "x1" ; then
1571    ENABLE_COREAUDIO=yes
1572 fi
1573
1574 ENABLE_ALSA=no
1575 if test "x$HAVE_ALSA" = "x1" ; then
1576    ENABLE_ALSA=yes
1577 fi
1578
1579 ENABLE_SOLARIS=no
1580 if test "x$HAVE_SOLARIS" = "x1" ; then
1581    ENABLE_SOLARIS=yes
1582 fi
1583
1584 ENABLE_WAVEOUT=no
1585 if test "x$HAVE_WAVEOUT" = "x1" ; then
1586    ENABLE_WAVEOUT=yes
1587 fi
1588
1589 ENABLE_GTK20=no
1590 if test "x$HAVE_GTK20" = "x1" ; then
1591    ENABLE_GTK20=yes
1592 fi
1593
1594 ENABLE_GLIB20=no
1595 if test "x$HAVE_GLIB20" = "x1" ; then
1596    ENABLE_GLIB20=yes
1597 fi
1598
1599 ENABLE_GCONF=no
1600 if test "x$HAVE_GCONF" = "x1" ; then
1601    ENABLE_GCONF=yes
1602 fi
1603
1604 ENABLE_AVAHI=no
1605 if test "x$HAVE_AVAHI" = "x1" ; then
1606    ENABLE_AVAHI=yes
1607 fi
1608
1609 ENABLE_JACK=no
1610 if test "x$HAVE_JACK" = "x1" ; then
1611    ENABLE_JACK=yes
1612 fi
1613
1614 ENABLE_LIBASYNCNS=no
1615 if test "x$HAVE_LIBASYNCNS" = "x1" ; then
1616    ENABLE_LIBASYNCNS=yes
1617 fi
1618
1619 ENABLE_LIRC=no
1620 if test "x$HAVE_LIRC" = "x1" ; then
1621    ENABLE_LIRC=yes
1622 fi
1623
1624 ENABLE_DBUS=no
1625 if test "x$HAVE_DBUS" = "x1" ; then
1626    ENABLE_DBUS=yes
1627 fi
1628
1629 ENABLE_HAL=no
1630 if test "x$HAVE_HAL" = "x1" ; then
1631    ENABLE_HAL=yes
1632 fi
1633
1634 ENABLE_UDEV=no
1635 if test "x$HAVE_UDEV" = "x1" ; then
1636    ENABLE_UDEV=yes
1637 fi
1638
1639 ENABLE_HAL_COMPAT=no
1640 if test "x$HAVE_HAL_COMPAT" = "x1" ; then
1641    ENABLE_HAL_COMPAT=yes
1642 fi
1643
1644 ENABLE_TCPWRAP=no
1645 if test "x${LIBWRAP_LIBS}" != x ; then
1646    ENABLE_TCPWRAP=yes
1647 fi
1648
1649 ENABLE_LIBSAMPLERATE=no
1650 if test "x${HAVE_LIBSAMPLERATE}" = "x1" ; then
1651    ENABLE_LIBSAMPLERATE=yes
1652 fi
1653
1654 ENABLE_BLUEZ=no
1655 if test "x${HAVE_BLUEZ}" = "x1" ; then
1656    ENABLE_BLUEZ=yes
1657 fi
1658
1659 ENABLE_GDBM=no
1660 if test "x${HAVE_GDBM}" = "x1" ; then
1661    ENABLE_GDBM=yes
1662 fi
1663
1664 ENABLE_TDB=no
1665 if test "x${HAVE_TDB}" = "x1" ; then
1666    ENABLE_TDB=yes
1667 fi
1668
1669 ENABLE_SIMPLEDB=no
1670 if test "x${HAVE_SIMPLEDB}" = "x1" ; then
1671     ENABLE_SIMPLEDB=yes
1672 fi
1673
1674 ENABLE_FFTW=no
1675 if test "x${HAVE_FFTW}" = "x1" ; then
1676    ENABLE_FFTW=yes
1677 fi
1678
1679 ENABLE_ORC=no
1680 if test "x${HAVE_ORC}" = "xyes" ; then
1681    ENABLE_ORC=yes
1682 fi
1683
1684 ENABLE_OPENSSL=no
1685 if test "x${HAVE_OPENSSL}" = "x1" ; then
1686    ENABLE_OPENSSL=yes
1687 fi
1688
1689 ENABLE_IPV6=no
1690 if test "x${HAVE_IPV6}" = "x1" ; then
1691    ENABLE_IPV6=yes
1692 fi
1693
1694 ENABLE_PER_USER_ESOUND_SOCKET=no
1695 if test "x$per_user_esound_socket" = "x1" ; then
1696    ENABLE_PER_USER_ESOUND_SOCKET=yes
1697 fi
1698
1699 echo "
1700  ---{ $PACKAGE_NAME $VERSION }---
1701
1702     prefix:                        ${prefix}
1703     sysconfdir:                    ${sysconfdir}
1704     localstatedir:                 ${localstatedir}
1705     System Runtime Path:           ${PA_SYSTEM_RUNTIME_PATH}
1706     System State Path:             ${PA_SYSTEM_STATE_PATH}
1707     System Config Path:            ${PA_SYSTEM_CONFIG_PATH}
1708     Compiler:                      ${CC}
1709     CFLAGS:                        ${CFLAGS}
1710     LIBS:                          ${LIBS}
1711
1712     Have X11:                      ${ENABLE_X11}
1713     Enable OSS Output:             ${ENABLE_OSS_OUTPUT}
1714     Enable OSS Wrapper:            ${ENABLE_OSS_WRAPPER}
1715     Enable CoreAudio:              ${ENABLE_COREAUDIO}
1716     Enable Alsa:                   ${ENABLE_ALSA}
1717     Enable Solaris:                ${ENABLE_SOLARIS}
1718     Enable WaveOut:                ${ENABLE_WAVEOUT}
1719     Enable GLib 2.0:               ${ENABLE_GLIB20}
1720     Enable Gtk+ 2.0:               ${ENABLE_GTK20}
1721     Enable GConf:                  ${ENABLE_GCONF}
1722     Enable Avahi:                  ${ENABLE_AVAHI}
1723     Enable Jack:                   ${ENABLE_JACK}
1724     Enable Async DNS:              ${ENABLE_LIBASYNCNS}
1725     Enable LIRC:                   ${ENABLE_LIRC}
1726     Enable D-Bus:                  ${ENABLE_DBUS}
1727       Enable HAL:                  ${ENABLE_HAL}
1728       Enable BlueZ:                ${ENABLE_BLUEZ}
1729     Enable udev:                   ${ENABLE_UDEV}
1730       Enable HAL->udev compat:     ${ENABLE_HAL_COMPAT}
1731     Enable TCP Wrappers:           ${ENABLE_TCPWRAP}
1732     Enable libsamplerate:          ${ENABLE_LIBSAMPLERATE}
1733     Enable IPv6:                   ${ENABLE_IPV6}
1734     Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
1735     Enable tdb:                    ${ENABLE_TDB}
1736     Enable gdbm:                   ${ENABLE_GDBM}
1737     Enable simple database:        ${ENABLE_SIMPLEDB}
1738     Enable fftw:                   ${ENABLE_FFTW}
1739     Enable orc:                    ${ENABLE_ORC}
1740
1741     System User:                   ${PA_SYSTEM_USER}
1742     System Group:                  ${PA_SYSTEM_GROUP}
1743     Access Group:                  ${PA_ACCESS_GROUP}
1744     Enable per-user EsounD socket: ${ENABLE_PER_USER_ESOUND_SOCKET}
1745     Force preopen:                 ${FORCE_PREOPEN}
1746     Preopened modules:             ${PREOPEN_MODS}
1747 "
1748
1749 if test "${ENABLE_DBUS}" = "no" && test "x$os_is_win32" != "x1" ; then
1750    echo "
1751 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1752 You do not have D-Bus support enabled. It is strongly recommended
1753 that you enable D-Bus support if your platform supports it.
1754 Many parts of PulseAudio use D-Bus, from ConsoleKit interaction
1755 to the Device Reservation Protocol to speak to JACK, Bluetooth
1756 support and even a native control protocol for communicating and
1757 controling the PulseAudio daemon itself.
1758 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1759 "
1760 fi
1761
1762 if test "${ENABLE_UDEV}" = "no" && test "x$os_is_win32" != "x1" ; then
1763    echo "
1764 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1765 You do not have udev support enabled. It is strongly recommended
1766 that you enable udev support if your platform supports it as it is
1767 the primary method used to detect hardware audio devices (on Linux)
1768 and is thus a critical part of PulseAudio on that platform.
1769 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1770 "
1771 fi