bluetooth: Only close SCO if status has changed
[pulseaudio-mirror.git] / configure.ac
blob76cf7e96e173a62bddbf37601e86c9f16929dcce
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
4 # This file is part of PulseAudio.
6 # Copyright 2004-2008 Lennart Poettering
7 # Copyright 2006-2007 Pierre Ossman <ossman@cendio.se> for Cendio AB
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.
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.
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.
23 AC_PREREQ(2.63)
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])
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`)
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/])
39 AC_SUBST(PA_API_VERSION, 12)
40 AC_SUBST(PA_PROTOCOL_VERSION, 20)
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])
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])
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])
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])
58 AC_CANONICAL_HOST
59 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
61 AC_CHECK_PROG([STOW], [stow], [yes], [no])
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}"
68 AM_SILENT_RULES([yes])
70 #### Checks for programs. ####
72 # mkdir -p
74 AC_PROG_MKDIR_P
76 # CC
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
84 #### Platform hacks ####
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([_DARWIN_C_SOURCE], [200112L], [Needed to get NSIG on Mac OS X])
93       ;;
94 esac
96 # M4
98 AC_CHECK_PROGS([M4], gm4 m4, no)
99 if test "x$M4" = xno ; then
100    AC_MSG_ERROR([m4 missing])
103 dnl Compiler flags
105 # Some compilers (e.g. clang) default to a warning on an unkown command line option.
106 # Change that temporarily to an error, for the CC_CHECK_CFLAGS_APPEND macro to work.
107 save_CC="$CC"
108 CC="$CC -Werror"
109 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])
110 CC="$save_CC"
112 dnl Linker flags.
113 dnl Check whether the linker supports the -version-script option.
115 dnl This variable is used to make sure ${srcdir} is expanded and not
116 dnl passed to the CC_CHECK_LDFLAGS macro as a name.
117 tmp_ldflag="-Wl,-version-script=${srcdir}/src/map-file"
119 CC_CHECK_LDFLAGS([${tmp_ldflag}],
120     [VERSIONING_LDFLAGS='-Wl,-version-script=$(srcdir)/map-file'])
121 AC_SUBST([VERSIONING_LDFLAGS])
123 dnl Use immediate (now) bindings; avoids the funky re-call in itself
124 dnl  the -z now syntax is lifted from Sun's linker and works with GNU's too
125 dnl  other linkes might be added later
126 CC_CHECK_LDFLAGS([-Wl,-z,now], [IMMEDIATE_LDFLAGS="-Wl,-z,now"])
127 AC_SUBST([IMMEDIATE_LDFLAGS])
129 dnl On ELF systems we don't want the libraries to be unloaded since we
130 dnl don't clean them up properly, so we request the nodelete flag to be
131 dnl enabled.
133 dnl On other systems, we don't really know how to do that, but it's
134 dnl welcome if somebody can tell.
135 CC_CHECK_LDFLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS="-Wl,-z,nodelete"])
136 AC_SUBST([NODELETE_LDFLAGS])
138 dnl Check for the proper way to build libraries that have no undefined
139 dnl symbols; on some hosts this needs to be avoided but the macro
140 dnl takes care of it.
141 CC_NOUNDEFINED
143 dnl Check whether to build tests by default (as compile-test) or not
144 AC_ARG_ENABLE([default-build-tests],
145     AS_HELP_STRING([--disable-default-build-tests], [Build test programs only during make check]))
147 AM_CONDITIONAL([BUILD_TESTS_DEFAULT], [test "x$enable_default_build_tests" != "xno"])
149 # Native atomic operation support
150 AC_ARG_ENABLE([atomic-arm-linux-helpers],
151     AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]),
152         [
153             case "${enableval}" in
154                 yes) atomic_arm_linux_helpers=yes ;;
155                 no) atomic_arm_linux_helpers=no ;;
156                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
157             esac
158         ],
159         [atomic_arm_linux_helpers=auto])
161 AC_ARG_ENABLE([atomic-arm-memory-barrier],
162     AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]),
163         [
164             case "${enableval}" in
165                 yes) AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers]) ;;
166                 no) ;;
167                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
168             esac
169         ],)
171 AC_ARG_ENABLE(mac-universal,
172     AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries]),
173                 enable_mac_universal=$enableval, enable_mac_universal="no")
175 AC_ARG_WITH(mac-version-min,
176     AS_HELP_STRING([--with-mac-version-min=<version>], [Defines the earliest version of MacOS X that the executables will run on.]),
177                 mac_version_min=$withval, mac_version_min="10.5")
179 AC_ARG_WITH(mac-sysroot,
180     AS_HELP_STRING([--with-mac-sysroot=<path>], [SDK basedir to use as the logical root directory for headers and libraries.]),
181                 mac_sysroot=$withval, mac_sysroot="/Developer/SDKs/MacOSX10.5.sdk")
183 AC_MSG_CHECKING([target operating system])
184 case $host in
185         *-*-linux*)
186             AC_MSG_RESULT([linux])
187             pulse_target_os=linux
188         ;;
189         *-*-darwin*)
190             AC_MSG_RESULT([darwin])
191             pulse_target_os=darwin
193             LDFLAGS="$LDFLAGS -isysroot $mac_sysroot -mmacosx-version-min=$mac_version_min"
194             CFLAGS="$CFLAGS -isysroot $mac_sysroot -mmacosx-version-min=$mac_version_min"
196             if test "x$enable_mac_universal" = "xyes" ; then
197                 mac_arches="-arch i386 -arch x86_64"
198                 LDFLAGS="$LDFLAGS $mac_arches"
199                 CFLAGS="$CFLAGS $mac_arches"
200             fi
201         ;;
202         *)
203             AC_MSG_RESULT([unknown])
204             pulse_target_os=unknown
205         ;;
206 esac
208 # If everything else fails use libatomic_ops
209 need_libatomic_ops=yes
211 AC_CACHE_CHECK([whether $CC knows __sync_bool_compare_and_swap()],
212   pulseaudio_cv_sync_bool_compare_and_swap,
213   [AC_LINK_IFELSE(
214      AC_LANG_PROGRAM([], [[int a = 4; __sync_bool_compare_and_swap(&a, 4, 5);]]),
215      [pulseaudio_cv_sync_bool_compare_and_swap=yes],
216      [pulseaudio_cv_sync_bool_compare_and_swap=no])
217   ])
219 if test "$pulseaudio_cv_sync_bool_compare_and_swap" = "yes" ; then
220     AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
221     need_libatomic_ops=no
222 else
223     # HW specific atomic ops stuff
224     AC_MSG_CHECKING([architecture for native atomic operations])
225     case $host in
226         arm*)
227             AC_MSG_RESULT([arm])
228             AC_MSG_CHECKING([whether we can use Linux kernel helpers])
229             # The Linux kernel helper functions have been there since 2.6.16. However
230             # compile time checking for kernel version in cross compile environment
231             # (which is usually the case for arm cpu) is tricky (or impossible).
232             if test "x$pulse_target_os" = "xlinux" && test "x$atomic_arm_linux_helpers" != "xno"; then
233                 AC_MSG_RESULT([yes])
234                 AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
235                 need_libatomic_ops=no
236             else
237                AC_MSG_RESULT([no])
238                AC_CACHE_CHECK([compiler support for arm inline asm atomic operations],
239                  pulseaudio_cv_support_arm_atomic_ops,
240                  [AC_COMPILE_IFELSE(
241                     AC_LANG_PROGRAM([],
242                       [[volatile int a=0;
243                         int o=0, n=1, r;
244                         asm volatile ("ldrex    %0, [%1]\n"
245                                          "subs  %0, %0, %2\n"
246                                          "strexeq %0, %3, [%1]\n"
247                                          : "=&r" (r)
248                                          : "r" (&a), "Ir" (o), "r" (n)
249                                          : "cc");
250                         return (a==1 ? 0 : -1);
251                       ]]),
252                     [pulseaudio_cv_support_arm_atomic_ops=yes],
253                     [pulseaudio_cv_support_arm_atomic_ops=no])
254                  ])
255                AS_IF([test "$pulseaudio_cv_support_arm_atomic_ops" = "yes"], [
256                    AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARM atomic instructions.])
257                    need_libatomic_ops=no
258                  ])
259            fi
260         ;;
261         *-netbsdelf5*)
262             AC_MSG_RESULT([yes])
263             need_libatomic_ops=no
264         ;;
265         *-freebsd*)
266             AC_MSG_RESULT([yes])
267             need_libatomic_ops=no
268         ;;
269         *)
270             AC_MSG_RESULT([unknown])
271         ;;
272     esac
275 # If we're on ARM, check for the ARMV6 instructions we need */
276 case $host in
277   arm*)
278     AC_CACHE_CHECK([support for required armv6 instructions],
279       pulseaudio_cv_support_armv6,
280       [AC_COMPILE_IFELSE(
281          AC_LANG_PROGRAM([],
282            [[volatile int a = -60000, b = 0xaaaabbbb, c = 0xccccdddd;
283              asm volatile ("ldr r0, %2 \n"
284                            "ldr r2, %3 \n"
285                            "ldr r3, %4 \n"
286                            "ssat r1, #8, r0 \n"
287                            "str r1, %0 \n"
288                            "pkhbt r1, r3, r2, LSL #8 \n"
289                            "str r1, %1 \n"
290                            : "=m" (a), "=m" (b)
291                            : "m" (a), "m" (b), "m" (c)
292                            : "r0", "r1", "r2", "r3", "cc");
293              return (a == -128 && b == 0xaabbdddd) ? 0 : -1;
294            ]]),
295          [pulseaudio_cv_support_armv6=yes],
296          [pulseaudio_cv_support_armv6=no])
297       ])
298     AS_IF([test "$pulseaudio_cv_support_armv6" = "yes"], [
299         AC_DEFINE([HAVE_ARMV6], 1, [Have ARMv6 instructions.])
300       ])
301   ;;
302   *)
303   ;;
304 esac
306 CC_CHECK_TLS
308 AC_CACHE_CHECK([whether $CC knows _Bool],
309   pulseaudio_cv__Bool,
310   [AC_COMPILE_IFELSE(
311      AC_LANG_PROGRAM([], [[_Bool b;]]),
312      [pulseaudio_cv__Bool=yes],
313      [pulseaudio_cv__Bool=no])
314   ])
316 AS_IF([test "$pulseaudio_cv__Bool" = "yes"], [
317     AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.])
318   ])
320 #### libtool stuff ####
321 LT_PREREQ(2.2)
322 LT_INIT([dlopen win32-dll disable-static])
324 dnl Unfortunately, even up to libtool 2.2.6a there is no way to know
325 dnl exactly which version of libltdl is present in the system, so we
326 dnl just assume that it's a working version as long as we have the
327 dnl library and the header files.
329 dnl As an extra safety device, check for lt_dladvise_init() which is
330 dnl only implemented in libtool 2.x, and refine as we go if we have
331 dnl refined requirements.
333 dnl Check the header files first since the system may have a
334 dnl libltdl.so for runtime, but no headers, and we want to bail out as
335 dnl soon as possible.
337 dnl We don't need any special variable for this though, since the user
338 dnl can give the proper place to find libltdl through the standard
339 dnl variables like LDFLAGS and CPPFLAGS.
341 AC_CHECK_HEADER([ltdl.h],
342     [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])],
343     [LIBLTDL=])
345 AS_IF([test "x$LIBLTDL" = "x"],
346     [AC_MSG_ERROR([Unable to find libltdl version 2. Makes sure you have libtool 2.2 or later installed.])])
347 AC_SUBST([LIBLTDL])
349 #### Determine build environment ####
351 os_is_win32=0
352 os_is_darwin=0
354 case "$host_os" in
355         mingw*)
356         AC_DEFINE([OS_IS_WIN32], 1, [Build target is Windows.])
357         os_is_win32=1
358                 ;;
359         darwin*)
360         AC_DEFINE([OS_IS_DARWIN], 1, [Build target is Darwin.])
361         os_is_darwin=1
362                 ;;
363         esac
365 AM_CONDITIONAL(OS_IS_WIN32, test "x$os_is_win32" = "x1")
366 AM_CONDITIONAL(OS_IS_DARWIN, test "x$os_is_darwin" = "x1")
368 ###################################
369 #   Basic environment checks      #
370 ###################################
372 #### Checks for header files. ####
374 # ISO
375 AC_HEADER_STDC
377 # POSIX
378 AC_CHECK_HEADERS_ONCE([arpa/inet.h glob.h grp.h netdb.h netinet/in.h \
379     netinet/in_systm.h netinet/tcp.h poll.h pwd.h sched.h \
380     sys/mman.h sys/resource.h sys/select.h sys/socket.h sys/wait.h \
381     sys/uio.h syslog.h sys/dl.h dlfcn.h linux/sockios.h])
382 AC_CHECK_HEADERS([netinet/ip.h], [], [],
383                  [#include <sys/types.h>
384                   #if HAVE_NETINET_IN_H
385                   # include <netinet/in.h>
386                   #endif
387                   #if HAVE_NETINET_IN_SYSTM_H
388                   # include <netinet/in_systm.h>
389                   #endif
390                  ])
391 AC_CHECK_HEADERS([sys/un.h], [HAVE_AF_UNIX=1], [HAVE_AF_UNIX=0])
392 AM_CONDITIONAL(HAVE_AF_UNIX, test "x$HAVE_AF_UNIX" = "x1")
394 # Linux
395 AC_CHECK_HEADERS([linux/input.h], [HAVE_EVDEV=1], [HAVE_EVDEV=0])
397 AM_CONDITIONAL([HAVE_EVDEV], [test "x$HAVE_EVDEV" = "x1"])
399 AC_CHECK_HEADERS_ONCE([sys/prctl.h])
401 # Solaris
402 AC_CHECK_HEADERS_ONCE([sys/filio.h])
404 # Windows
405 AC_CHECK_HEADERS_ONCE([windows.h winsock2.h ws2tcpip.h])
407 # NetBSD
408 AC_CHECK_HEADERS_ONCE([sys/atomic.h])
410 # Other
411 AC_CHECK_HEADERS_ONCE([sys/ioctl.h])
412 AC_CHECK_HEADERS_ONCE([byteswap.h])
413 AC_CHECK_HEADERS_ONCE([sys/syscall.h])
414 AC_CHECK_HEADERS_ONCE([sys/eventfd.h])
415 AC_CHECK_HEADERS_ONCE([execinfo.h])
416 AC_CHECK_HEADERS_ONCE([langinfo.h])
417 AC_CHECK_HEADERS_ONCE([regex.h pcreposix.h])
419 #### Typdefs, structures, etc. ####
421 AC_C_CONST
422 AC_C_BIGENDIAN
423 AC_TYPE_PID_T
424 AC_TYPE_SIZE_T
425 AC_CHECK_TYPES(ssize_t, , [AC_DEFINE([ssize_t], [signed long],
426     [Define ssize_t if it is not done by the standard libs.])])
427 AC_TYPE_OFF_T
429 AC_TYPE_UID_T
430 AC_CHECK_DECLS(environ)
432 AC_CHECK_DEFINE([SIGXCPU], [signal.h], [
433 HAVE_SIGXCPU=1
434 AC_DEFINE([HAVE_SIGXCPU], 1, [Have SIGXCPU?])
435 ], [HAVE_SIGXCPU=0])
436 AM_CONDITIONAL(HAVE_SIGXCPU, test "x$HAVE_SIGXCPU" = "x1")
438 # Solaris lacks this
439 AC_CHECK_DEFINE([INADDR_NONE], [netinet/in.h], [],
440     [AC_CHECK_DEFINE([INADDR_NONE], [winsock2.h], [],
441         [AC_DEFINE([INADDR_NONE],  [0xffffffff], [Define INADDR_NONE if not found in <netinet/in.h>])])])
443 #### POSIX threads ####
445 ACX_PTHREAD
447 #### Check for libs ####
449 # ISO
450 AC_SEARCH_LIBS([pow], [m])
452 # POSIX
453 AC_SEARCH_LIBS([sched_setscheduler], [rt])
454 AC_SEARCH_LIBS([dlopen], [dl])
455 AC_SEARCH_LIBS([shm_open], [rt])
456 AC_SEARCH_LIBS([inet_ntop], [nsl])
457 AC_SEARCH_LIBS([timer_create], [rt])
458 AC_SEARCH_LIBS([pthread_setaffinity_np], [pthread])
459 AC_SEARCH_LIBS([pthread_getname_np], [pthread])
460 AC_SEARCH_LIBS([pthread_setname_np], [pthread])
462 # BSD
463 AC_SEARCH_LIBS([connect], [socket])
464 AC_SEARCH_LIBS([backtrace], [execinfo])
466 # Non-standard
468 # This magic is needed so we do not needlessly add static libs to the win32
469 # build, disabling its ability to make dlls.
470 AC_CHECK_FUNCS([getopt_long], [], [AC_CHECK_LIB([iberty], [getopt_long])])
472 # Darwin/OS X
473 if test "x$os_is_darwin" = "x1" ; then
474     AC_MSG_CHECKING([looking for Apple CoreService Framework])
475     # How do I check a framework "library" - AC_CHECK_LIB prob. won't work??, just assign LIBS & hope
476     AC_CHECK_HEADER([/Developer/Headers/FlatCarbon/CoreServices.h],
477     [LIBS="$LIBS -framework CoreServices"],
478     [AC_MSG_ERROR([CoreServices.h header file not found]) ])
480     AC_MSG_RESULT([ok])
481     AC_DEFINE([HAVE_CLOCK_GETTIME], 1, [Using clock_gettime() replacement])
482     HAVE_BONJOUR=1
485 AC_SUBST(HAVE_BONJOUR)
486 AM_CONDITIONAL([HAVE_BONJOUR], [test "x$HAVE_BONJOUR" = x1])
488 AC_SEARCH_LIBS([regexec], [pcreposix])
490 #### Check for functions ####
492 # ISO
493 AC_CHECK_FUNCS_ONCE([lrintf strtof])
495 # POSIX
496 AC_FUNC_FORK
497 AC_FUNC_GETGROUPS
498 AC_FUNC_SELECT_ARGTYPES
499 AC_CHECK_FUNCS_ONCE([chmod chown fstat fchown fchmod clock_gettime getaddrinfo getgrgid_r getgrnam_r \
500     getpwnam_r getpwuid_r gettimeofday getuid mlock nanosleep \
501     pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
502     sigaction sleep symlink sysconf uname pthread_setaffinity_np pthread_getname_np pthread_setname_np])
503 AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
505 AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
507 # X/OPEN
508 AC_CHECK_FUNCS_ONCE([readlink])
510 # SUSv2
511 AC_CHECK_FUNCS_ONCE([ctime_r usleep])
513 # SUSv3
514 AC_CHECK_FUNCS_ONCE([strerror_r])
516 # BSD
517 AC_CHECK_FUNCS_ONCE([lstat])
519 # Non-standard
521 AC_CHECK_FUNCS_ONCE([setresuid setresgid setreuid setregid seteuid setegid ppoll strsignal sig2str strtof_l pipe2 accept4])
523 AC_FUNC_ALLOCA
525 AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
526   pulseaudio_cv_PTHREAD_PRIO_INHERIT,
527   [save_CC=$CC; CC=$PTHREAD_CC
528    save_CFLAGS=$CFLAGS; CFLAGS=$PTHREAD_CFLAGS
529    save_LIBS=$LIBS; LIBS=$PTHREAD_LIBS
530    AC_LINK_IFELSE(
531      AC_LANG_PROGRAM(
532        [[
533          #include <pthread.h>
534        ]],
535        [[int i = PTHREAD_PRIO_INHERIT;]]),
536      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=yes],
537      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=no])
538    CC=$save_CC
539    CFLAGS=$save_CFLAGS
540    LIBS=$save_LIBS
541   ])
543 AS_IF([test "$pulseaudio_cv_PTHREAD_PRIO_INHERIT" = "yes"], [
544     AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])
545   ])
547 AC_DEFINE_UNQUOTED(PA_CFLAGS,"$CFLAGS", [The CFLAGS used during compilation])
549 AC_CHECK_FUNCS([regexec], [HAVE_REGEX=1], [HAVE_REGEX=0])
550 AM_CONDITIONAL(HAVE_REGEX, [test "x$HAVE_REGEX" = "x1"])
552 #### Large File-Support (LFS) ####
554 AC_SYS_LARGEFILE
556 # Check for open64 to know if the current system does have open64() and similar functions
557 AC_CHECK_FUNCS_ONCE([open64])
559 #### [lib]iconv ####
561 AM_ICONV
563 IT_PROG_INTLTOOL([0.35.0])
564 GETTEXT_PACKAGE=pulseaudio
565 AC_SUBST([GETTEXT_PACKAGE])
566 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
567 AM_GLIB_GNU_GETTEXT
569 pulselocaledir='${prefix}/${DATADIRNAME}/locale'
570 AC_SUBST(pulselocaledir)
572 ###################################
573 #      External libraries         #
574 ###################################
576 #### pkg-config ####
578 PKG_PROG_PKG_CONFIG
580 #### X11 (optional) ####
582 AC_ARG_ENABLE([x11],
583     AS_HELP_STRING([--disable-x11],[Disable optional X11 support]),
584         [
585             case "${enableval}" in
586                 yes) x11=yes ;;
587                 no) x11=no ;;
588                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-x11) ;;
589             esac
590         ],
591         [x11=auto])
593 if test "x${x11}" != xno ; then
594     PKG_CHECK_MODULES(X11, [ x11-xcb xcb >= 1.6 ice sm xtst ],
595         HAVE_X11=1,
596         [
597             HAVE_X11=0
598             if test "x$x11" = xyes ; then
599                 AC_MSG_ERROR([*** X11 not found])
600             fi
601         ])
602 else
603     HAVE_X11=0
606 if test "x${HAVE_X11}" = x1 ; then
607    AC_DEFINE([HAVE_X11], 1, [Have X11?])
610 AC_SUBST(X11_CFLAGS)
611 AC_SUBST(X11_LIBS)
612 AC_SUBST(HAVE_X11)
613 AM_CONDITIONAL([HAVE_X11], [test "x$HAVE_X11" = x1])
615 #### Capabilities (optional) ####
617 CAP_LIBS=''
619 AC_ARG_WITH(
620         [caps],
621         AS_HELP_STRING([--without-caps],[Omit support for POSIX capabilities.]))
623 if test "x${with_caps}" != "xno"; then
624     AC_SEARCH_LIBS([cap_init], [cap], [], [
625                     if test "x${with_caps}" = "xyes" ; then
626                         AC_MSG_ERROR([*** POSIX caps libraries not found])
627                     fi])
628     AC_CHECK_HEADERS([sys/capability.h], [], [
629                     if test "x${with_caps}" = "xyes" ; then
630                         AC_MSG_ERROR([*** POSIX caps headers not found])
631                     fi])
634 #### Valgrind (optional) ####
636 AC_CHECK_HEADERS_ONCE([valgrind/memcheck.h])
638 #### Sound file ####
640 PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.20 ])
641 AC_SUBST(LIBSNDFILE_CFLAGS)
642 AC_SUBST(LIBSNDFILE_LIBS)
644 PKG_CHECK_MODULES(LIBSPEEX, [ speexdsp >= 1.2 ])
645 AC_SUBST(LIBSPEEX_CFLAGS)
646 AC_SUBST(LIBSPEEX_LIBS)
648 #### atomic-ops ###
650 AC_MSG_CHECKING([whether we need libatomic_ops])
651 if test "x$need_libatomic_ops" = "xyes"; then
652    AC_MSG_RESULT([yes])
653    AC_CHECK_HEADERS([atomic_ops.h], [], [
654    AC_MSG_ERROR([*** libatomic-ops headers not found])
655    ])
657    # Win32 does not need the lib and breaks horribly if we try to include it
658    if test "x$os_is_win32" != "x1" ; then
659        LIBS="$LIBS -latomic_ops"
660    fi
661 else
662    AC_MSG_RESULT([no])
665 #### Libsamplerate support (optional) ####
667 AC_ARG_ENABLE([samplerate],
668     AS_HELP_STRING([--disable-samplerate],[Disable optional libsamplerate support]),
669         [
670             case "${enableval}" in
671                 yes) samplerate=yes ;;
672                 no) samplerate=no ;;
673                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-samplerate) ;;
674             esac
675         ],
676         [samplerate=auto])
678 if test "x${samplerate}" != xno ; then
679     PKG_CHECK_MODULES(LIBSAMPLERATE, [ samplerate >= 0.1.0 ],
680         HAVE_LIBSAMPLERATE=1,
681         [
682             HAVE_LIBSAMPLERATE=0
683             if test "x$samplerate" = xyes ; then
684                 AC_MSG_ERROR([*** Libsamplerate not found])
685             fi
686         ])
687 else
688     HAVE_LIBSAMPLERATE=0
691 if test "x${HAVE_LIBSAMPLERATE}" = x1 ; then
692    AC_DEFINE([HAVE_LIBSAMPLERATE], 1, [Have libsamplerate?])
695 AC_SUBST(LIBSAMPLERATE_CFLAGS)
696 AC_SUBST(LIBSAMPLERATE_LIBS)
697 AC_SUBST(HAVE_LIBSAMPLERATE)
698 AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
700 #### Database support ####
702 HAVE_TDB=0
703 HAVE_GDBM=0
704 HAVE_SIMPLEDB=0
706 AC_ARG_WITH(
707         [database],
708         AS_HELP_STRING([--with-database=auto|tdb|gdbm|simple],[Choose database backend.]),[],[with_database=auto])
710 if test "x${with_database}" = "xauto" -o "x${with_database}" = "xtdb" ; then
711     PKG_CHECK_MODULES(TDB, [ tdb ],
712         [
713             HAVE_TDB=1
714             with_database=tdb
715         ], [
716             if test "x${with_database}" = "xtdb" ; then
717                 AC_MSG_ERROR([*** tdb not found])
718             fi
719         ])
722 if test "x${with_database}" = "xauto" -o "x${with_database}" = "xgdbm" ; then
723    have_gdbm=yes
725    AC_CHECK_LIB(gdbm, gdbm_open, [], [have_gdbm=no])
726    AC_CHECK_HEADERS(gdbm.h, [], [have_gdbm=no])
728    if test "x${have_gdbm}" = "xyes" ; then
729        HAVE_GDBM=1
730        GDBM_CFLAGS=
731        GDBM_LIBS=-lgdbm
732        with_database=gdbm
733    elif test "x${with_database}" = "xgdbm"; then
734        AC_MSG_ERROR([*** gdbm not found])
735    fi
738 if test "x${with_database}" = "xauto" -o "x${with_database}" = "xsimple" ; then
739     HAVE_SIMPLEDB=1
740     with_database=simple
743 if test "x${HAVE_TDB}" != x1 -a "x${HAVE_GDBM}" != x1 -a "x${HAVE_SIMPLEDB}" != x1; then
744    AC_MSG_ERROR([*** missing database backend])
747 if test "x${HAVE_TDB}" = x1 ; then
748    AC_DEFINE([HAVE_TDB], 1, [Have tdb?])
751 if test "x${HAVE_GDBM}" = x1 ; then
752    AC_DEFINE([HAVE_GDBM], 1, [Have gdbm?])
755 if test "x${HAVE_SIMPLEDB}" = x1 ; then
756     AC_DEFINE([HAVE_SIMPLEDB], 1, [Have simple?])
759 AC_SUBST(TDB_CFLAGS)
760 AC_SUBST(TDB_LIBS)
761 AC_SUBST(HAVE_TDB)
762 AM_CONDITIONAL([HAVE_TDB], [test "x$HAVE_TDB" = x1])
764 AC_SUBST(GDBM_CFLAGS)
765 AC_SUBST(GDBM_LIBS)
766 AC_SUBST(HAVE_GDBM)
767 AM_CONDITIONAL([HAVE_GDBM], [test "x$HAVE_GDBM" = x1])
769 AC_SUBST(HAVE_SIMPLEDB)
770 AM_CONDITIONAL([HAVE_SIMPLEDB], [test "x$HAVE_SIMPLEDB" = x1])
772 #### OSS support (optional) ####
774 AC_ARG_ENABLE([oss-output],
775     AS_HELP_STRING([--disable-oss-output],[Disable optional OSS output support]),
776         [
777             case "${enableval}" in
778                 yes) oss_output=yes ;;
779                 no) oss_output=no ;;
780                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss-output) ;;
781             esac
782         ],
783         [oss_output=auto])
785 AC_ARG_ENABLE([oss-wrapper],
786     AS_HELP_STRING([--disable-oss-wrapper],[Disable optional OSS wrapper support]),
787         [
788             case "${enableval}" in
789                 yes) oss_wrapper=yes ;;
790                 no) oss_wrapper=no ;;
791                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss-wrapper) ;;
792             esac
793         ],
794         [oss_wrapper=auto])
796 if test "x${oss_output}" != xno || test "x${oss_wrapper}" != "xno"; then
797     AC_CHECK_HEADERS([sys/soundcard.h],
798         [
799             if test "x${oss_output}" != "xno"; then
800                 AC_DEFINE([HAVE_OSS_OUTPUT], 1, [Have OSS output?])
801             fi
802             if test "x${oss_wrapper}" != "xno"; then
803                 AC_DEFINE([HAVE_OSS_WRAPPER], 1, [Have OSS wrapper (padsp)?])
804             fi
805             HAVE_OSS=1
806         ],
807         [
808             HAVE_OSS=0
809             if test "x$oss_output" = xyes || test "x$oss_wrapper" = "xyes"; then
810                 AC_MSG_ERROR([*** OSS support not found])
811             fi
812         ])
813 else
814     HAVE_OSS=0
817 AC_SUBST(HAVE_OSS)
818 AM_CONDITIONAL([HAVE_OSS_OUTPUT], [test "x$HAVE_OSS" = x1 && test "x${oss_output}" != "xno"])
819 AM_CONDITIONAL([HAVE_OSS_WRAPPER], [test "x$HAVE_OSS" = x1 && test "x${oss_wrapper}" != "xno"])
821 #### CoreAudio support (optional) ####
823 AC_ARG_ENABLE([coreaudio-output],
824     AS_HELP_STRING([--disable-coreaudio-output],[Disable optional CoreAudio output support]),
825         [
826             case "${enableval}" in
827                 yes) coreaudio_enabled=yes ;;
828                 no) coreaudio_enabled=no ;;
829                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-coreaudio-output) ;;
830             esac
831         ],
832         [coreaudio_enabled=auto])
834 if test "x${coreaudio_enabled}" != xno ; then
835     AC_CHECK_HEADERS([CoreAudio/CoreAudio.h], HAVE_COREAUDIO=1)
836 else
837     HAVE_COREAUDIO=0
840 AC_SUBST(HAVE_COREAUDIO)
841 AM_CONDITIONAL([HAVE_COREAUDIO], [test "x$HAVE_COREAUDIO" = x1 && test "x${coreaudio_enabled}" != "xno"])
843 #### ALSA support (optional) ####
845 AC_ARG_ENABLE([alsa],
846     AS_HELP_STRING([--disable-alsa],[Disable optional ALSA support]),
847         [
848             case "${enableval}" in
849                 yes) alsa=yes ;;
850                 no) alsa=no ;;
851                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-alsa) ;;
852             esac
853         ],
854         [alsa=auto])
856 if test "x${alsa}" != xno ; then
857     PKG_CHECK_MODULES(ASOUNDLIB, [ alsa >= 1.0.19 ],
858         [
859             HAVE_ALSA=1
860             AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?])
861         ],
862         [
863             HAVE_ALSA=0
864             if test "x$alsa" = xyes ; then
865                 AC_MSG_ERROR([*** Needed alsa >= 1.0.19 support not found])
866             fi
867         ])
868 else
869     HAVE_ALSA=0
872 AC_SUBST(ASOUNDLIB_CFLAGS)
873 AC_SUBST(ASOUNDLIB_LIBS)
874 AC_SUBST(HAVE_ALSA)
875 AM_CONDITIONAL([HAVE_ALSA], [test "x$HAVE_ALSA" = x1])
877 #### Solaris audio support (optional) ####
879 AC_ARG_ENABLE([solaris],
880     AS_HELP_STRING([--disable-solaris],[Disable optional Solaris audio support]),
881         [
882             case "${enableval}" in
883                 yes) solaris=yes ;;
884                 no) solaris=no ;;
885                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-solaris) ;;
886             esac
887         ],
888         [solaris=auto])
890 if test "x${solaris}" != xno ; then
891     AC_CHECK_HEADERS([sys/audio.h],
892         [
893             HAVE_SOLARIS=1
894             AC_DEFINE([HAVE_SOLARIS], 1, [Have Solaris audio?])
895         ],
896         [
897             HAVE_SOLARIS=0
898             if test "x$solaris" = xyes ; then
899                 AC_MSG_ERROR([*** Solaris audio support not found])
900             fi
901         ])
902 else
903     HAVE_SOLARIS=0
906 AC_SUBST(HAVE_SOLARIS)
907 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$HAVE_SOLARIS" = x1])
909 #### WaveOut audio support (optional) ####
911 AC_ARG_ENABLE([waveout],
912     AS_HELP_STRING([--disable-waveout],[Disable optional WaveOut audio support]),
913         [
914             case "${enableval}" in
915                 yes) waveout=yes ;;
916                 no) waveout=no ;;
917                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-waveout) ;;
918             esac
919         ],
920         [waveout=auto])
922 if test "x${waveout}" != xno ; then
923     AC_CHECK_HEADERS([mmsystem.h],
924         [
925             HAVE_WAVEOUT=1
926             AC_DEFINE([HAVE_WAVEOUT], 1, [Have WaveOut audio?])
927         ],
928         [
929             HAVE_WAVEOUT=0
930             if test "x$waveout" = xyes ; then
931                 AC_MSG_ERROR([*** WaveOut audio support not found])
932             fi
933         ],
934         [#include <windows.h>])
935 else
936     HAVE_WAVEOUT=0
939 AC_SUBST(HAVE_WAVEOUT)
940 AM_CONDITIONAL([HAVE_WAVEOUT], [test "x$HAVE_WAVEOUT" = x1])
942 #### GLib 2 support (optional) ####
944 AC_ARG_ENABLE([glib2],
945     AS_HELP_STRING([--disable-glib2],[Disable optional GLib 2 support]),
946         [
947             case "${enableval}" in
948                 yes) glib2=yes ;;
949                 no) glib2=no ;;
950                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-glib2) ;;
951             esac
952         ],
953         [glib2=auto])
955 if test "x${glib2}" != xno ; then
956     PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ],
957         HAVE_GLIB20=1,
958         [
959             HAVE_GLIB20=0
960             if test "x$glib2" = xyes ; then
961                 AC_MSG_ERROR([*** GLib 2 support not found])
962             fi
963         ])
964 else
965     HAVE_GLIB20=0
968 AC_SUBST(GLIB20_CFLAGS)
969 AC_SUBST(GLIB20_LIBS)
970 AC_SUBST(HAVE_GLIB20)
971 AM_CONDITIONAL([HAVE_GLIB20], [test "x$HAVE_GLIB20" = x1])
973 if test "x$HAVE_GLIB20" = x1 ; then
974    AC_DEFINE([HAVE_GLIB], 1, [Have GLIB?])
977 #### GTK2 support (optional) ####
979 AC_ARG_ENABLE([gtk2],
980     AS_HELP_STRING([--disable-gtk2],[Disable optional Gtk+ 2 support]),
981         [
982             case "${enableval}" in
983                 yes) gtk2=yes ;;
984                 no) gtk2=no ;;
985                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gtk2) ;;
986             esac
987         ],
988         [gtk2=auto])
990 if test "x${gtk2}" != xno ; then
991     PKG_CHECK_MODULES(GTK20, [ gtk+-2.0 >= 2.4.0 ],
992         HAVE_GTK20=1,
993         [
994             HAVE_GTK20=0
995             if test "x$gtk2" = xyes ; then
996                 AC_MSG_ERROR([*** Gtk+ 2 support not found])
997             fi
998         ])
999 else
1000     HAVE_GTK20=0
1003 AC_SUBST(GTK20_CFLAGS)
1004 AC_SUBST(GTK20_LIBS)
1005 AC_SUBST(HAVE_GTK20)
1006 AM_CONDITIONAL([HAVE_GTK20], [test "x$HAVE_GTK20" = x1])
1008 if test "x$HAVE_GTK20" = x1 ; then
1009    AC_DEFINE([HAVE_GTK], 1, [Have GTK?])
1012 #### GConf support (optional) ####
1014 AC_ARG_ENABLE([gconf],
1015     AS_HELP_STRING([--disable-gconf],[Disable optional GConf support]),
1016         [
1017             case "${enableval}" in
1018                 yes) gconf=yes ;;
1019                 no) gconf=no ;;
1020                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gconf) ;;
1021             esac
1022         ],
1023         [gconf=auto])
1025 if test "x${gconf}" != xno ; then
1026     PKG_CHECK_MODULES(GCONF, [ gconf-2.0 >= 2.4.0 gobject-2.0 ],
1027         HAVE_GCONF=1,
1028         [
1029             HAVE_GCONF=0
1030             if test "x$gconf" = xyes ; then
1031                 AC_MSG_ERROR([*** GConf support not found])
1032             fi
1033         ])
1034 else
1035     HAVE_GCONF=0
1038 AC_SUBST(GCONF_CFLAGS)
1039 AC_SUBST(GCONF_LIBS)
1040 AC_SUBST(HAVE_GCONF)
1041 AM_CONDITIONAL([HAVE_GCONF], [test "x$HAVE_GCONF" = x1])
1043 #### Avahi support (optional) ####
1045 AC_ARG_ENABLE([avahi],
1046     AS_HELP_STRING([--disable-avahi],[Disable optional Avahi support]),
1047         [
1048             case "${enableval}" in
1049                 yes) avahi=yes ;;
1050                 no) avahi=no ;;
1051                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-avahi) ;;
1052             esac
1053         ],
1054         [avahi=auto])
1056 if test "x${avahi}" != xno ; then
1057     PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.0 ],
1058         HAVE_AVAHI=1,
1059         [
1060                 HAVE_AVAHI=0
1061                 if test "x$avahi" = xyes ; then
1062                         AC_MSG_ERROR([*** Avahi support not found])
1063                 fi
1064         ])
1065 else
1066     HAVE_AVAHI=0
1069 AC_SUBST(AVAHI_CFLAGS)
1070 AC_SUBST(AVAHI_LIBS)
1071 AC_SUBST(HAVE_AVAHI)
1072 AM_CONDITIONAL([HAVE_AVAHI], [test "x$HAVE_AVAHI" = x1])
1074 ### JACK (optional) ####
1076 AC_ARG_ENABLE([jack],
1077     AS_HELP_STRING([--disable-jack],[Disable optional JACK support]),
1078         [
1079             case "${enableval}" in
1080                 yes) jack=yes ;;
1081                 no) jack=no ;;
1082                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-jack) ;;
1083             esac
1084         ],
1085         [jack=auto])
1087 if test "x${jack}" != xno ; then
1088     PKG_CHECK_MODULES(JACK, [ jack >= 0.100 ],
1089         HAVE_JACK=1,
1090         [
1091             HAVE_JACK=0
1092             if test "x$jack" = xyes ; then
1093                 AC_MSG_ERROR([*** JACK support not found])
1094             fi
1095         ])
1096 else
1097     HAVE_JACK=0
1100 AC_SUBST(JACK_CFLAGS)
1101 AC_SUBST(JACK_LIBS)
1102 AC_SUBST(HAVE_JACK)
1103 AM_CONDITIONAL([HAVE_JACK], [test "x$HAVE_JACK" = x1])
1105 #### Async DNS support (optional) ####
1107 AC_ARG_ENABLE([asyncns],
1108     AS_HELP_STRING([--disable-asyncns],[Disable optional Async DNS support]),
1109         [
1110             case "${enableval}" in
1111                 yes) asyncns=yes ;;
1112                 no) asyncns=no ;;
1113                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-asyncns) ;;
1114             esac
1115         ],
1116         [asyncns=auto])
1118 if test "x${asyncns}" != xno ; then
1119     PKG_CHECK_MODULES(LIBASYNCNS, [ libasyncns >= 0.1 ],
1120         HAVE_LIBASYNCNS=1,
1121         [
1122             HAVE_LIBASYNCNS=0
1123             if test "x$asyncns" = xyes ; then
1124                 AC_MSG_ERROR([*** Async DNS support not found])
1125             fi
1126         ])
1127 else
1128     HAVE_LIBASYNCNS=0
1131 AC_SUBST(LIBASYNCNS_CFLAGS)
1132 AC_SUBST(LIBASYNCNS_LIBS)
1133 AC_SUBST(HAVE_LIBASYNCNS)
1134 AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
1136 if test "x$HAVE_LIBASYNCNS" != "x0" ; then
1137    AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?])
1140 #### TCP wrappers (optional) ####
1142 AC_ARG_ENABLE([tcpwrap],
1143     AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]),
1144         [
1145             case "${enableval}" in
1146                 yes) tcpwrap=yes ;;
1147                 no) tcpwrap=no ;;
1148                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tcpwrap) ;;
1149             esac
1150         ],
1151         [tcpwrap=auto])
1153 if test "x${tcpwrap}" != xno ; then
1154     ACX_LIBWRAP
1155     if test "x${LIBWRAP_LIBS}" = x && test "x$tcpwrap" = xyes ; then
1156         AC_MSG_ERROR([*** TCP wrappers support not found])
1157     fi
1158 else
1159     LIBWRAP_LIBS=
1162 AC_SUBST(LIBWRAP_LIBS)
1164 #### LIRC support (optional) ####
1166 AC_ARG_ENABLE([lirc],
1167     AS_HELP_STRING([--disable-lirc],[Disable optional LIRC support]),
1168         [
1169             case "${enableval}" in
1170                 yes) lirc=yes ;;
1171                 no) lirc=no ;;
1172                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-lirc) ;;
1173             esac
1174         ],
1175         [lirc=auto])
1177 if test "x${lirc}" != xno ; then
1178     ACX_LIRC
1179     if test "x${HAVE_LIRC}" = x0 && test "x$lirc" = xyes ; then
1180         AC_MSG_ERROR([*** LIRC support not found])
1181     fi
1182 else
1183     HAVE_LIRC=0
1186 AC_SUBST(LIRC_CFLAGS)
1187 AC_SUBST(LIRC_LIBS)
1188 AM_CONDITIONAL([HAVE_LIRC], [test "x$HAVE_LIRC" = x1])
1190 #### HAL support (optional) ####
1192 AC_ARG_ENABLE([hal],
1193     AS_HELP_STRING([--disable-hal],[Disable optional HAL support]),
1194         [
1195             case "${enableval}" in
1196                 yes) hal=yes ;;
1197                 no) hal=no ;;
1198                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal) ;;
1199             esac
1200         ],
1201         [hal=auto])
1202 if test "x${hal}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
1203     PKG_CHECK_MODULES(HAL, [ hal >= 0.5.11 ],
1204         [
1205             HAVE_HAL=1
1206             AC_DEFINE([HAVE_HAL], 1, [Have HAL.])
1207         ],
1208         [
1209             HAVE_HAL=0
1210             if test "x$hal" = xyes ; then
1211                 AC_MSG_ERROR([*** HAL support not found])
1212             fi
1213         ])
1214 else
1215     HAVE_HAL=0
1218 AC_SUBST(HAL_CFLAGS)
1219 AC_SUBST(HAL_LIBS)
1220 AC_SUBST(HAVE_HAL)
1221 AM_CONDITIONAL([HAVE_HAL], [test "x$HAVE_HAL" = x1])
1223 #### UDEV support (optional) ####
1225 AC_ARG_ENABLE([udev],
1226     AS_HELP_STRING([--disable-udev],[Disable optional UDEV support]),
1227         [
1228             case "${enableval}" in
1229                 yes) udev=yes ;;
1230                 no) udev=no ;;
1231                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-udev) ;;
1232             esac
1233         ],
1234         [udev=auto])
1235 if test "x${udev}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
1236     PKG_CHECK_MODULES(UDEV, [ libudev >= 143 ],
1237         [
1238             HAVE_UDEV=1
1239             AC_DEFINE([HAVE_UDEV], 1, [Have UDEV.])
1240         ],
1241         [
1242             HAVE_UDEV=0
1243             if test "x$udev" = xyes ; then
1244                 AC_MSG_ERROR([*** UDEV support not found])
1245             fi
1246         ])
1247 else
1248     HAVE_UDEV=0
1251 AC_SUBST(UDEV_CFLAGS)
1252 AC_SUBST(UDEV_LIBS)
1253 AC_SUBST(HAVE_UDEV)
1254 AM_CONDITIONAL([HAVE_UDEV], [test "x$HAVE_UDEV" = x1])
1256 #### BlueZ support (optional) ####
1258 AC_ARG_ENABLE([bluez],
1259     AS_HELP_STRING([--disable-bluez],[Disable optional BlueZ support]),
1260         [
1261             case "${enableval}" in
1262                 yes) bluez=yes ;;
1263                 no) bluez=no ;;
1264                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-bluez) ;;
1265             esac
1266         ],
1267         [bluez=auto])
1268 if test "x${bluez}" != xno ; then
1269     PKG_CHECK_MODULES(BLUEZ, [ bluez >= 3.0 ],
1270         HAVE_BLUEZ=1,
1271         [
1272             HAVE_BLUEZ=0
1273             if test "x$bluez" = xyes ; then
1274                 AC_MSG_ERROR([*** BLUEZ support not found])
1275             fi
1276         ])
1277 else
1278     HAVE_BLUEZ=0
1281 AC_SUBST(BLUEZ_CFLAGS)
1282 AC_SUBST(BLUEZ_LIBS)
1283 AC_SUBST(HAVE_BLUEZ)
1284 AM_CONDITIONAL([HAVE_BLUEZ], [test "x$HAVE_BLUEZ" = x1])
1286 #### D-Bus support (optional) ####
1288 AC_ARG_ENABLE([dbus],
1289     AS_HELP_STRING([--disable-dbus],[Disable optional D-Bus support]),
1290         [
1291             case "${enableval}" in
1292                 yes) dbus=yes ;;
1293                 no) dbus=no ;;
1294                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-dbus) ;;
1295             esac
1296         ],
1297         [dbus=auto])
1299 if test "x${dbus}" != xno ; then
1301     PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.0.0 ],
1302         [
1303             HAVE_DBUS=1
1304             saved_LIBS="$LIBS"
1305             LIBS="$LIBS $DBUS_LIBS"
1306             CFLAGS="$CFLAGS $DBUS_CFLAGS"
1307             AC_CHECK_FUNCS(dbus_watch_get_unix_fd)
1308             LIBS="$saved_LIBS"
1309             AC_DEFINE([HAVE_DBUS], 1, [Have D-Bus.])
1310         ],
1311         [
1312             HAVE_DBUS=0
1313             if test "x$dbus" = xyes ; then
1314                 AC_MSG_ERROR([*** D-Bus support not found])
1315             fi
1316         ])
1317 else
1318     HAVE_DBUS=0
1321 AC_SUBST(DBUS_CFLAGS)
1322 AC_SUBST(DBUS_LIBS)
1323 AC_SUBST(HAVE_DBUS)
1324 AM_CONDITIONAL([HAVE_DBUS], [test "x$HAVE_DBUS" = x1])
1327 # udev and HAL depend on D-Bus: So double check if they were explicitly enabled.
1328 if test "x$HAVE_DBUS" != "x1" ; then
1329     HAVE_HAL=0
1330     if test "x${hal}" = xyes ; then
1331         AC_MSG_ERROR([*** D-Bus support is required by HAL])
1332     fi
1334     HAVE_BLUEZ=0
1335     if test "x${bluez}" = xyes ; then
1336         AC_MSG_ERROR([*** D-Bus support is required by BLUEZ])
1337     fi
1341 #### HAL compat support (optional) ####
1343 AC_ARG_ENABLE([hal-compat],
1344     AS_HELP_STRING([--disable-hal-compat],[Disable optional HAL->udev transition compatibility support]),
1345         [
1346             case "${enableval}" in
1347                 yes) halcompat=yes ;;
1348                 no) halcompat=no ;;
1349                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal-compat) ;;
1350             esac
1351         ],
1352         [halcompat=auto])
1353 if test "x${halcompat}" != xno -a "x$HAVE_HAL" = "x0" -a "x$HAVE_UDEV" = "x1" ; then
1354     HAVE_HAL_COMPAT=1
1355     AC_DEFINE([HAVE_HAL_COMPAT], 1, [Have HAL compatibility.])
1356 else
1357     HAVE_HAL_COMPAT=0
1360 AC_SUBST(HAVE_HAL_COMPAT)
1361 AM_CONDITIONAL([HAVE_HAL_COMPAT], [test "x$HAVE_HAL_COMPAT" = x1])
1363 ### IPv6 connection support (optional) ###
1365 AC_ARG_ENABLE([ipv6],
1366     AS_HELP_STRING([--disable-ipv6],[Disable optional IPv6 support]),
1367         [
1368             case "${enableval}" in
1369                 yes) ipv6=yes ;;
1370                 no) ipv6=no ;;
1371                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-ipv6) ;;
1372             esac
1373         ],
1374         [ipv6=auto])
1376 if test "x${ipv6}" != xno ; then
1377     AC_DEFINE([HAVE_IPV6], [1], [Define this to enable IPv6 connection support])
1378     HAVE_IPV6=1
1379 else
1380     HAVE_IPV6=0
1383 #### OpenSSL support (optional) ####
1385 AC_ARG_ENABLE([openssl],
1386     AS_HELP_STRING([--disable-openssl],[Disable OpenSSL support (used for Airtunes/RAOP)]),
1387         [
1388             case "${enableval}" in
1389                 yes) openssl=yes ;;
1390                 no) openssl=no ;;
1391                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-openssl) ;;
1392             esac
1393         ],
1394         [openssl=auto])
1396 if test "x${openssl}" != xno ; then
1398     PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ],
1399         [
1400             HAVE_OPENSSL=1
1401             AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL])
1402         ],
1403         [
1404             HAVE_OPENSSL=0
1405             if test "x$openssl" = xyes ; then
1406                 AC_MSG_ERROR([*** OpenSSL support not found])
1407             fi
1408         ])
1409 else
1410     HAVE_OPENSSL=0
1413 AC_SUBST(OPENSSL_CFLAGS)
1414 AC_SUBST(OPENSSL_LIBS)
1415 AC_SUBST(HAVE_OPENSSL)
1416 AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
1418 #### FFTW (optional) ####
1419 AC_ARG_WITH(
1420         [fftw],
1421         AS_HELP_STRING([--without-fftw], [Omit FFTW-using modules (equalizer)]))
1423 if test "x${with_fftw}" != "xno"; then
1424     PKG_CHECK_MODULES([FFTW], [fftw3f], [HAVE_FFTW=1], [HAVE_FFTW=0])
1426 AM_CONDITIONAL([HAVE_FFTW], [test "x$HAVE_FFTW" = "x1"])
1428 ### ORC (optional) ###
1429 ORC_CHECK([0.4.11])
1431 ### Build and Install man pages ###
1432 AC_ARG_ENABLE(manpages,
1433         AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]),
1434 [case "${enableval}" in
1435   yes) manpages=yes ;;
1436   no)  manpages=no ;;
1437   *) AC_MSG_ERROR([bad value ${enableval} for --disable-manpages]) ;;
1438 esac],[manpages=yes])
1440 AM_CONDITIONAL([BUILD_MANPAGES], [test "x$manpages" = xyes])
1442 #### PulseAudio system group & user  #####
1444 AC_ARG_WITH(system_user, AS_HELP_STRING([--with-system-user=<user>],[User for running the PulseAudio daemon as a system-wide instance (pulse)]))
1445 if test -z "$with_system_user" ; then
1446     PA_SYSTEM_USER=pulse
1447 else
1448     PA_SYSTEM_USER=$with_system_user
1450 AC_SUBST(PA_SYSTEM_USER)
1451 AC_DEFINE_UNQUOTED(PA_SYSTEM_USER,"$PA_SYSTEM_USER", [User for running the PulseAudio system daemon])
1453 AC_ARG_WITH(system_group,AS_HELP_STRING([--with-system-group=<group>],[Group for running the PulseAudio daemon as a system-wide instance (pulse)]))
1454 if test -z "$with_system_group" ; then
1455     PA_SYSTEM_GROUP=pulse
1456 else
1457     PA_SYSTEM_GROUP=$with_system_group
1459 AC_SUBST(PA_SYSTEM_GROUP)
1460 AC_DEFINE_UNQUOTED(PA_SYSTEM_GROUP,"$PA_SYSTEM_GROUP", [Group for the PulseAudio system daemon])
1462 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)]))
1463 if test -z "$with_access_group" ; then
1464     PA_ACCESS_GROUP=pulse-access
1465 else
1466     PA_ACCESS_GROUP=$with_access_group
1468 AC_SUBST(PA_ACCESS_GROUP)
1469 AC_DEFINE_UNQUOTED(PA_ACCESS_GROUP,"$PA_ACCESS_GROUP", [Access group])
1471 AC_ARG_ENABLE(
1472         per_user_esound_socket,
1473         AS_HELP_STRING([--disable-per-user-esound-socket], [Use global esound socket directory /tmp/.esd/socket.]),
1474         [
1475             case "${enableval}" in
1476                 yes) per_user_esound_socket=1 ;;
1477                 no) per_user_esound_socket=0 ;;
1478                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-per-user-esound-socket) ;;
1479             esac
1480         ],
1481         [per_user_esound_socket=1])
1483 if test "x$per_user_esound_socket" = "x1"; then
1484    AC_DEFINE([USE_PER_USER_ESOUND_SOCKET], [1], [Define this if you want per-user esound socket directories])
1487 #### PulseAudio system runtime dir ####
1488 PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
1489 AC_SUBST(PA_SYSTEM_RUNTIME_PATH)
1490 PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
1491 AC_SUBST(PA_SYSTEM_CONFIG_PATH)
1492 PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
1493 AC_SUBST(PA_SYSTEM_STATE_PATH)
1495 ###################################
1496 #            Output               #
1497 ###################################
1499 AC_ARG_ENABLE([legacy-runtime-dir],
1500         AS_HELP_STRING([--disable-legacy-runtime-dir], [Try to connect on legacy (< 0.9.12) socket paths.]))
1501 if test "x$enable_legacy_runtime_dir" != "xno" ; then
1502         AC_DEFINE(ENABLE_LEGACY_RUNTIME_DIR, [1], [Legacy runtime dir])
1505 AC_ARG_ENABLE(
1506         [static-bins],
1507         AS_HELP_STRING([--enable-static-bins],[Statically link executables.]),
1508         [STATIC_BINS=1], [STATIC_BINS=0])
1509 AM_CONDITIONAL([STATIC_BINS], [test "x$STATIC_BINS" = "x1"])
1511 AC_ARG_WITH(
1512         [preopen-mods],
1513         AS_HELP_STRING([--with-preopen-mods],[Modules to preopen in daemon (default: all).]),
1514         [PREOPEN_MODS=$withval], [PREOPEN_MODS="all"])
1515 AM_CONDITIONAL([PREOPEN_MODS], [test "x$PREOPEN_MODS" != "xall"])
1516 if test "x$PREOPEN_MODS" != "xall" ; then
1517     tmpLIBS=""
1518     for mod in $PREOPEN_MODS; do
1519         tmpLIBS="$tmpLIBS module-$mod.la"
1520     done
1521     PREOPEN_MODS="$tmpLIBS"
1522     AC_SUBST(PREOPEN_MODS)
1525 AC_ARG_WITH(
1526         [module-dir],
1527         AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINOR}/modules]),
1528         [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINOR}/modules"])
1530 AC_SUBST(modlibexecdir)
1532 AC_ARG_WITH(
1533         [udev-rules-dir],
1534         AS_HELP_STRING([--with-udev-rules-dir],[Directory where to install udev rules to (defaults to /lib/udev/rules.d)]),
1535         [udevrulesdir=$withval], [udevrulesdir="/lib/udev/rules.d"])
1537 AC_SUBST(udevrulesdir)
1539 AC_ARG_ENABLE(
1540         [force-preopen],
1541         AS_HELP_STRING([--enable-force-preopen],[Preopen modules, even when dlopen() is supported.]),
1542         [FORCE_PREOPEN=$enableval], [FORCE_PREOPEN=no])
1543 AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
1545 AC_CONFIG_FILES([
1546 Makefile
1547 src/Makefile
1548 man/Makefile
1549 libpulse.pc
1550 libpulse-simple.pc
1551 libpulse-browse.pc
1552 libpulse-mainloop-glib.pc
1553 doxygen/Makefile
1554 doxygen/doxygen.conf
1555 src/pulse/version.h
1556 po/Makefile.in
1559 AC_OUTPUT
1561 # ==========================================================================
1562 ENABLE_X11=no
1563 if test "x$HAVE_X11" = "x1" ; then
1564    ENABLE_X11=yes
1567 ENABLE_OSS_OUTPUT=no
1568 ENABLE_OSS_WRAPPER=no
1569 if test "x$HAVE_OSS" = "x1" ; then
1570    if test "x$enable_oss_output" != "xno"; then
1571       ENABLE_OSS_OUTPUT=yes
1572    fi
1573    if test "x$enable_oss_wrapper" != "xno"; then
1574       ENABLE_OSS_WRAPPER=yes
1575    fi
1578 ENABLE_COREAUDIO=no
1579 if test "x$HAVE_COREAUDIO" = "x1" ; then
1580    ENABLE_COREAUDIO=yes
1583 ENABLE_ALSA=no
1584 if test "x$HAVE_ALSA" = "x1" ; then
1585    ENABLE_ALSA=yes
1588 ENABLE_SOLARIS=no
1589 if test "x$HAVE_SOLARIS" = "x1" ; then
1590    ENABLE_SOLARIS=yes
1593 ENABLE_WAVEOUT=no
1594 if test "x$HAVE_WAVEOUT" = "x1" ; then
1595    ENABLE_WAVEOUT=yes
1598 ENABLE_GTK20=no
1599 if test "x$HAVE_GTK20" = "x1" ; then
1600    ENABLE_GTK20=yes
1603 ENABLE_GLIB20=no
1604 if test "x$HAVE_GLIB20" = "x1" ; then
1605    ENABLE_GLIB20=yes
1608 ENABLE_GCONF=no
1609 if test "x$HAVE_GCONF" = "x1" ; then
1610    ENABLE_GCONF=yes
1613 ENABLE_AVAHI=no
1614 if test "x$HAVE_AVAHI" = "x1" ; then
1615    ENABLE_AVAHI=yes
1618 ENABLE_JACK=no
1619 if test "x$HAVE_JACK" = "x1" ; then
1620    ENABLE_JACK=yes
1623 ENABLE_LIBASYNCNS=no
1624 if test "x$HAVE_LIBASYNCNS" = "x1" ; then
1625    ENABLE_LIBASYNCNS=yes
1628 ENABLE_LIRC=no
1629 if test "x$HAVE_LIRC" = "x1" ; then
1630    ENABLE_LIRC=yes
1633 ENABLE_DBUS=no
1634 if test "x$HAVE_DBUS" = "x1" ; then
1635    ENABLE_DBUS=yes
1638 ENABLE_HAL=no
1639 if test "x$HAVE_HAL" = "x1" ; then
1640    ENABLE_HAL=yes
1643 ENABLE_UDEV=no
1644 if test "x$HAVE_UDEV" = "x1" ; then
1645    ENABLE_UDEV=yes
1648 ENABLE_HAL_COMPAT=no
1649 if test "x$HAVE_HAL_COMPAT" = "x1" ; then
1650    ENABLE_HAL_COMPAT=yes
1653 ENABLE_TCPWRAP=no
1654 if test "x${LIBWRAP_LIBS}" != x ; then
1655    ENABLE_TCPWRAP=yes
1658 ENABLE_LIBSAMPLERATE=no
1659 if test "x${HAVE_LIBSAMPLERATE}" = "x1" ; then
1660    ENABLE_LIBSAMPLERATE=yes
1663 ENABLE_BLUEZ=no
1664 if test "x${HAVE_BLUEZ}" = "x1" ; then
1665    ENABLE_BLUEZ=yes
1668 ENABLE_GDBM=no
1669 if test "x${HAVE_GDBM}" = "x1" ; then
1670    ENABLE_GDBM=yes
1673 ENABLE_TDB=no
1674 if test "x${HAVE_TDB}" = "x1" ; then
1675    ENABLE_TDB=yes
1678 ENABLE_SIMPLEDB=no
1679 if test "x${HAVE_SIMPLEDB}" = "x1" ; then
1680     ENABLE_SIMPLEDB=yes
1683 ENABLE_FFTW=no
1684 if test "x${HAVE_FFTW}" = "x1" ; then
1685    ENABLE_FFTW=yes
1688 ENABLE_ORC=no
1689 if test "x${HAVE_ORC}" = "xyes" ; then
1690    ENABLE_ORC=yes
1693 ENABLE_OPENSSL=no
1694 if test "x${HAVE_OPENSSL}" = "x1" ; then
1695    ENABLE_OPENSSL=yes
1698 ENABLE_IPV6=no
1699 if test "x${HAVE_IPV6}" = "x1" ; then
1700    ENABLE_IPV6=yes
1703 ENABLE_PER_USER_ESOUND_SOCKET=no
1704 if test "x$per_user_esound_socket" = "x1" ; then
1705    ENABLE_PER_USER_ESOUND_SOCKET=yes
1708 echo "
1709  ---{ $PACKAGE_NAME $VERSION }---
1711     prefix:                        ${prefix}
1712     sysconfdir:                    ${sysconfdir}
1713     localstatedir:                 ${localstatedir}
1714     System Runtime Path:           ${PA_SYSTEM_RUNTIME_PATH}
1715     System State Path:             ${PA_SYSTEM_STATE_PATH}
1716     System Config Path:            ${PA_SYSTEM_CONFIG_PATH}
1717     Compiler:                      ${CC}
1718     CFLAGS:                        ${CFLAGS}
1719     LIBS:                          ${LIBS}
1721     Have X11:                      ${ENABLE_X11}
1722     Enable OSS Output:             ${ENABLE_OSS_OUTPUT}
1723     Enable OSS Wrapper:            ${ENABLE_OSS_WRAPPER}
1724     Enable CoreAudio:              ${ENABLE_COREAUDIO}
1725     Enable Alsa:                   ${ENABLE_ALSA}
1726     Enable Solaris:                ${ENABLE_SOLARIS}
1727     Enable WaveOut:                ${ENABLE_WAVEOUT}
1728     Enable GLib 2.0:               ${ENABLE_GLIB20}
1729     Enable Gtk+ 2.0:               ${ENABLE_GTK20}
1730     Enable GConf:                  ${ENABLE_GCONF}
1731     Enable Avahi:                  ${ENABLE_AVAHI}
1732     Enable Jack:                   ${ENABLE_JACK}
1733     Enable Async DNS:              ${ENABLE_LIBASYNCNS}
1734     Enable LIRC:                   ${ENABLE_LIRC}
1735     Enable D-Bus:                  ${ENABLE_DBUS}
1736       Enable HAL:                  ${ENABLE_HAL}
1737       Enable BlueZ:                ${ENABLE_BLUEZ}
1738     Enable udev:                   ${ENABLE_UDEV}
1739       Enable HAL->udev compat:     ${ENABLE_HAL_COMPAT}
1740     Enable TCP Wrappers:           ${ENABLE_TCPWRAP}
1741     Enable libsamplerate:          ${ENABLE_LIBSAMPLERATE}
1742     Enable IPv6:                   ${ENABLE_IPV6}
1743     Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
1744     Enable tdb:                    ${ENABLE_TDB}
1745     Enable gdbm:                   ${ENABLE_GDBM}
1746     Enable simple database:        ${ENABLE_SIMPLEDB}
1747     Enable fftw:                   ${ENABLE_FFTW}
1748     Enable orc:                    ${ENABLE_ORC}
1750     System User:                   ${PA_SYSTEM_USER}
1751     System Group:                  ${PA_SYSTEM_GROUP}
1752     Access Group:                  ${PA_ACCESS_GROUP}
1753     Enable per-user EsounD socket: ${ENABLE_PER_USER_ESOUND_SOCKET}
1754     Force preopen:                 ${FORCE_PREOPEN}
1755     Preopened modules:             ${PREOPEN_MODS}
1758 if test "${ENABLE_DBUS}" = "no" && test "x$os_is_win32" != "x1" ; then
1759    echo "
1760 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1761 You do not have D-Bus support enabled. It is strongly recommended
1762 that you enable D-Bus support if your platform supports it.
1763 Many parts of PulseAudio use D-Bus, from ConsoleKit interaction
1764 to the Device Reservation Protocol to speak to JACK, Bluetooth
1765 support and even a native control protocol for communicating and
1766 controling the PulseAudio daemon itself.
1767 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1771 if test "${ENABLE_UDEV}" = "no" && test "x$os_is_win32" != "x1" ; then
1772    echo "
1773 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1774 You do not have udev support enabled. It is strongly recommended
1775 that you enable udev support if your platform supports it as it is
1776 the primary method used to detect hardware audio devices (on Linux)
1777 and is thus a critical part of PulseAudio on that platform.
1778 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====