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, see <http://www.gnu.org/licenses/>.
24 AC_INIT([pulseaudio],[m4_esyscmd(./git-version-gen .tarball-version)],[pulseaudio-discuss (at) lists (dot) freedesktop (dot) org],[pulseaudio],[http://pulseaudio.org/])
25 AC_CONFIG_SRCDIR([src/daemon/main.c])
26 AC_CONFIG_MACRO_DIR([m4])
27 AC_CONFIG_HEADERS([config.h])
28 AC_CONFIG_AUX_DIR([build-aux])
29 AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability subdir-objects silent-rules color-tests dist-xz tar-ustar])
31 AS_IF([! test -n "$VERSION"], [
32 AC_MSG_ERROR([git-version-gen failed])
35 m4_define(pa_major, `echo $VERSION | cut -d. -f1 | cut -d- -f1`)
36 m4_define(pa_minor, `echo $VERSION | cut -d. -f2 | cut -d- -f1`)
38 AC_SUBST(PA_MAJOR, pa_major)
39 AC_SUBST(PA_MINOR, pa_minor)
40 AC_SUBST(PA_MAJORMINOR, pa_major.pa_minor)
42 AC_SUBST(PA_API_VERSION, 12)
43 AC_SUBST(PA_PROTOCOL_VERSION, 30)
45 # The stable ABI for client applications, for the version info x:y:z
46 # always will hold y=z
47 AC_SUBST(LIBPULSE_VERSION_INFO, [18:2:18])
49 # A simplified, synchronous, ABI-stable interface for client
50 # applications, for the version info x:y:z always will hold y=z
51 AC_SUBST(LIBPULSE_SIMPLE_VERSION_INFO, [1:0:1])
53 # The ABI-stable GLib adapter for client applications, for the version
54 # info x:y:z always will hold y=z
55 AC_SUBST(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO, [0:5:0])
58 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
60 AC_CHECK_PROG([STOW], [stow], [yes], [no])
62 AS_IF([test "x$STOW" = "xyes" && test -d /usr/local/stow], [
63 AC_MSG_NOTICE([*** Found /usr/local/stow: default install prefix set to /usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION} ***])
64 ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}"
67 AM_SILENT_RULES([yes])
70 #### Checks for programs. ####
85 # Only required if you want the WebRTC canceller -- no runtime dep on
88 AC_PROG_GCC_TRADITIONAL
89 AC_USE_SYSTEM_EXTENSIONS
93 AC_CHECK_PROGS([M4], gm4 m4, no)
94 AS_IF([test "x$M4" = "xno"], AC_MSG_ERROR([m4 missing]))
102 if test "x$enable_nls" != "xno"; then
103 IT_PROG_INTLTOOL([0.35.0])
105 AM_GNU_GETTEXT_VERSION([0.18.1])
106 AM_GNU_GETTEXT([external])
108 GETTEXT_PACKAGE=pulseaudio
109 AC_SUBST([GETTEXT_PACKAGE])
110 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
112 # workaround till an intltool m4 bug is fixed upstream
113 # (https://bugs.launchpad.net/intltool/+bug/904647)
119 #### Determine host OS ####
121 # if the host has the possibility of sys/capability.h for dropping privileges
122 # used to determine if we should error out if it is not found
129 AC_MSG_CHECKING([host operating system])
132 AC_MSG_RESULT([linux])
137 AC_MSG_RESULT([freebsd])
141 AC_MSG_RESULT([darwin])
143 AC_DEFINE([OS_IS_DARWIN], 1, [Build target is Darwin.])
146 AC_MSG_RESULT([win32])
148 AC_DEFINE([OS_IS_WIN32], 1, [Build target is Windows.])
151 AC_MSG_RESULT([unknown])
155 AM_CONDITIONAL(OS_IS_DARWIN, test "x$os_is_darwin" = "x1")
156 AM_CONDITIONAL(OS_IS_WIN32, test "x$os_is_win32" = "x1")
157 AC_SUBST([OS_IS_WIN32], [$os_is_win32])
159 # Platform specific hacks
162 AC_DEFINE([_DARWIN_C_SOURCE], [200112L], [Needed to get NSIG on Mac OS X])
165 AC_DEFINE([WIN32_LEAN_AND_MEAN], 1, [Needed to avoid including unnecessary headers on Windows])
168 AC_DEFINE(_XOPEN_SOURCE, 600, [Needed to get declarations for msg_control and msg_controllen on Solaris])
169 AC_DEFINE(__EXTENSIONS__, 1, [Needed to get declarations for msg_control and msg_controllen on Solaris])
174 #### Compiler flags ####
176 AX_APPEND_COMPILE_FLAGS(
177 [-Wall -W -Wextra -pipe -Wno-long-long -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 -fno-common -fdiagnostics-show-option -fdiagnostics-color=auto],
178 [], [-pedantic -Werror])
180 AS_CASE([" $CFLAGS "], [*" -O0 "*], [], [
181 # Don't append the flag if it already exists.
182 # Only enable fastpath asserts when doing a debug build, e.g. from bootstrap.sh.
183 AX_APPEND_FLAG([-DFASTPATH], [CPPFLAGS])
185 # Cannot use AX_APPEND_FLAG here, as it assumes no space inside the added flags.
186 # Cannot append flags with AX_APPEND_FLAG one by one, as this would destroy all fortifications
187 # if CPPFLAGS already contain -D_FORTIFY_SOURCE=2.
189 # Warnings to be aware of that appear with -D_FORTIFY_SOURCE=2 but without -U_FORTIFY_SOURCE:
190 # On Fedora 20 with -O0: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
191 # On Gentoo with -O2: "_FORTIFY_SOURCE" redefined [enabled by default]
192 AS_VAR_APPEND([CPPFLAGS],[" -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2"])
195 #### Linker flags ####
197 # Check whether the linker supports the -version-script option.
198 # The Make variable $(srcdir) needs to be in the LDFLAGS in that form,
199 # so that it is expanded the right way in every subdir.
200 AX_CHECK_LINK_FLAG(["-Wl,-version-script=${srcdir}/src/map-file"],
201 [VERSIONING_LDFLAGS='-Wl,-version-script=$(abs_top_srcdir)/src/map-file'])
202 AC_SUBST([VERSIONING_LDFLAGS])
204 # Use immediate (now) bindings; avoids the funky re-call in itself.
205 # The -z now syntax is lifted from Sun's linker and works with GNU's too, other linkers might be added later.
206 AX_APPEND_LINK_FLAGS([-Wl,-z,now], [IMMEDIATE_LDFLAGS])
207 AC_SUBST([IMMEDIATE_LDFLAGS])
209 # On ELF systems we don't want the libraries to be unloaded since we don't clean them up properly,
210 # so we request the nodelete flag to be enabled.
211 # On other systems, we don't really know how to do that, but it's welcome if somebody can tell.
212 AX_APPEND_LINK_FLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS], [-shared])
213 AC_SUBST([NODELETE_LDFLAGS])
215 # Check for the proper way to build libraries that have no undefined symbols
217 # FreeBSD (et al.) does not complete linking for shared objects when pthreads
218 # are requested, as different implementations are present.
219 *-freebsd* | *-openbsd*) ;;
221 for possible_flag in "-Wl,--no-undefined" "-Wl,-z,defs"; do
222 AX_CHECK_LINK_FLAG([$possible_flag], [NOUNDEFINED_LDFLAGS="$possible_flag"; break])
226 AC_SUBST([NOUNDEFINED_LDFLAGS])
229 #### Atomic operations ####
231 # Native atomic operation support
232 AC_ARG_ENABLE([atomic-arm-linux-helpers],
233 AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]))
235 AC_ARG_ENABLE([atomic-arm-memory-barrier],
236 AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]))
238 if test "x$enable_atomic_arm_memory_barrier" = "xyes"; then
239 AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers])
242 # If everything else fails use libatomic_ops
243 need_libatomic_ops=yes
245 AC_CACHE_CHECK([whether $CC knows __sync_bool_compare_and_swap()],
246 pulseaudio_cv_sync_bool_compare_and_swap, [
248 [AC_LANG_PROGRAM([], [[int a = 4; __sync_bool_compare_and_swap(&a, 4, 5);]])],
249 [pulseaudio_cv_sync_bool_compare_and_swap=yes],
250 [pulseaudio_cv_sync_bool_compare_and_swap=no])
253 if test "$pulseaudio_cv_sync_bool_compare_and_swap" = "yes" ; then
254 AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
255 need_libatomic_ops=no
257 # HW specific atomic ops stuff
258 AC_MSG_CHECKING([architecture for native atomic operations])
262 AC_MSG_CHECKING([whether we can use Linux kernel helpers])
263 # The Linux kernel helper functions have been there since 2.6.16. However
264 # compile time checking for kernel version in cross compile environment
265 # (which is usually the case for arm cpu) is tricky (or impossible).
266 if test "x$os_is_linux" = "x1" && test "x$enable_atomic_arm_linux_helpers" != "xno"; then
268 AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
269 need_libatomic_ops=no
272 AC_CACHE_CHECK([compiler support for arm inline asm atomic operations],
273 pulseaudio_cv_support_arm_atomic_ops, [
275 [AC_LANG_PROGRAM([], [[
278 asm volatile ("ldrex %0, [%1]\n"
280 "strexeq %0, %3, [%1]\n"
282 : "r" (&a), "Ir" (o), "r" (n)
284 return (a==1 ? 0 : -1);
286 [pulseaudio_cv_support_arm_atomic_ops=yes],
287 [pulseaudio_cv_support_arm_atomic_ops=no])
289 AS_IF([test "$pulseaudio_cv_support_arm_atomic_ops" = "yes"], [
290 AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARM atomic instructions.])
291 need_libatomic_ops=no
297 need_libatomic_ops=no
301 need_libatomic_ops=no
304 AC_MSG_RESULT([unknown])
309 # If we're on ARM, check for the ARMV6 instructions we need */
312 AC_CACHE_CHECK([support for required armv6 instructions],
313 pulseaudio_cv_support_armv6,
316 [[volatile int a = -60000, b = 0xaaaabbbb, c = 0xccccdddd;
317 asm volatile ("ldr r0, %2 \n"
322 "pkhbt r1, r3, r2, LSL #8 \n"
325 : "m" (a), "m" (b), "m" (c)
326 : "r0", "r1", "r2", "r3", "cc");
327 return (a == -128 && b == 0xaabbdddd) ? 0 : -1;
329 [pulseaudio_cv_support_armv6=yes],
330 [pulseaudio_cv_support_armv6=no])
332 AS_IF([test "$pulseaudio_cv_support_armv6" = "yes"], [
333 AC_DEFINE([HAVE_ARMV6], 1, [Have ARMv6 instructions.])
340 #### NEON optimisations ####
341 AC_ARG_ENABLE([neon-opt],
342 AS_HELP_STRING([--enable-neon-opt], [Enable NEON optimisations on ARM CPUs that support it]))
344 AS_IF([test "x$enable_neon_opt" != "xno"],
345 [save_CFLAGS="$CFLAGS"; CFLAGS="-mfpu=neon $CFLAGS"
347 [AC_LANG_PROGRAM([[#include <arm_neon.h>]], [])],
350 NEON_CFLAGS="-mfpu=neon"
356 CFLAGS="$save_CFLAGS"
360 AS_IF([test "x$enable_neon_opt" = "xyes" && test "x$HAVE_NEON" = "x0"],
361 [AC_MSG_ERROR([*** Compiler does not support -mfpu=neon or CFLAGS override -mfpu])])
364 AC_SUBST(NEON_CFLAGS)
365 AM_CONDITIONAL([HAVE_NEON], [test "x$HAVE_NEON" = x1])
366 AS_IF([test "x$HAVE_NEON" = "x1"], AC_DEFINE([HAVE_NEON], 1, [Have NEON support?]))
369 #### libtool stuff ####
372 LT_INIT([dlopen win32-dll disable-static])
374 dnl As an extra safety device, check for lt_dladvise_init() which is
375 dnl only implemented in libtool 2.x, and refine as we go if we have
376 dnl refined requirements.
378 dnl Check the header files first since the system may have a
379 dnl libltdl.so for runtime, but no headers, and we want to bail out as
380 dnl soon as possible.
382 dnl We don't need any special variable for this though, since the user
383 dnl can give the proper place to find libltdl through the standard
384 dnl variables like LDFLAGS and CPPFLAGS.
386 AC_CHECK_HEADER([ltdl.h],
387 [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])],
390 AS_IF([test "x$LIBLTDL" = "x"],
391 [AC_MSG_ERROR([Unable to find libltdl version 2. Makes sure you have libtool 2.4 or later installed.])])
395 ###################################
396 # Basic environment checks #
397 ###################################
399 #### Checks for header files. ####
405 AC_CHECK_HEADERS_ONCE([arpa/inet.h glob.h grp.h netdb.h netinet/in.h \
406 netinet/in_systm.h netinet/tcp.h poll.h pwd.h sched.h \
407 sys/mman.h sys/select.h sys/socket.h sys/wait.h \
408 sys/uio.h syslog.h sys/dl.h dlfcn.h linux/sockios.h])
409 AC_CHECK_HEADERS([netinet/ip.h], [], [],
410 [#include <sys/types.h>
411 #if HAVE_NETINET_IN_H
412 # include <netinet/in.h>
414 #if HAVE_NETINET_IN_SYSTM_H
415 # include <netinet/in_systm.h>
418 AC_CHECK_HEADERS([sys/resource.h], [HAVE_SYS_RESOURCE_H=1], [HAVE_SYS_RESOURCE_H=0])
419 AC_SUBST(HAVE_SYS_RESOURCE_H)
420 AC_CHECK_HEADERS([sys/un.h], [HAVE_AF_UNIX=1], [HAVE_AF_UNIX=0])
421 AM_CONDITIONAL(HAVE_AF_UNIX, test "x$HAVE_AF_UNIX" = "x1")
422 AC_SUBST(HAVE_AF_UNIX)
425 AC_CHECK_HEADERS([linux/input.h], [HAVE_EVDEV=1], [HAVE_EVDEV=0])
426 AM_CONDITIONAL([HAVE_EVDEV], [test "x$HAVE_EVDEV" = "x1"])
428 AC_CHECK_HEADERS_ONCE([sys/prctl.h])
431 AC_CHECK_HEADERS_ONCE([sys/filio.h])
434 AC_CHECK_HEADERS_ONCE([windows.h winsock2.h ws2tcpip.h])
437 AC_CHECK_HEADERS_ONCE([sys/atomic.h])
440 AC_CHECK_HEADERS_ONCE([sys/ioctl.h])
441 AC_CHECK_HEADERS_ONCE([byteswap.h])
442 AC_CHECK_HEADERS_ONCE([sys/syscall.h])
443 AC_CHECK_HEADERS_ONCE([sys/eventfd.h])
444 AC_CHECK_HEADERS_ONCE([execinfo.h])
445 AC_CHECK_HEADERS_ONCE([langinfo.h])
446 AC_CHECK_HEADERS_ONCE([regex.h pcreposix.h])
447 AC_CHECK_HEADERS_ONCE([locale.h xlocale.h])
449 AM_CONDITIONAL(HAVE_SYS_EVENTFD_H, test "x$ac_cv_header_sys_eventfd_h" = "xyes")
451 #### Typdefs, structures, etc. ####
457 AC_CHECK_TYPES(ssize_t, , AC_DEFINE([ssize_t], [signed long], [Define ssize_t if it is not done by the standard libs.]))
461 AC_CHECK_DECLS(environ)
464 AX_CHECK_DEFINE([signal.h], [SIGXCPU], [HAVE_SIGXCPU=1], [HAVE_SIGXCPU=0])
465 AS_IF([test "x$HAVE_SIGXCPU" = "x1"], AC_DEFINE([HAVE_SIGXCPU], 1, [Have SIGXCPU?]))
466 AM_CONDITIONAL(HAVE_SIGXCPU, test "x$HAVE_SIGXCPU" = "x1")
468 # INADDR_NONE, Solaris lacks this
469 AX_CHECK_DEFINE([netinet/in.h], [INADDR_NONE], [],
470 [AX_CHECK_DEFINE([winsock2.h], [INADDR_NONE], [],
471 [AC_DEFINE([INADDR_NONE], [0xffffffff], [Define INADDR_NONE if not found in <netinet/in.h>])])])
475 AC_CACHE_CHECK([whether $CC knows _Bool],
478 [AC_LANG_PROGRAM([], [[_Bool b;]])],
479 [pulseaudio_cv__Bool=yes],
480 [pulseaudio_cv__Bool=no])
483 AS_IF([test "$pulseaudio_cv__Bool" = "yes"], AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.]))
486 #### Thread support ####
489 AS_IF([test "$ac_cv_tls" = "__thread"],
490 AC_DEFINE([SUPPORT_TLS___THREAD], 1, [Define this if the compiler supports __thread for Thread-Local Storage]))
492 # Win32 build breaks with win32 pthread installed
493 AS_IF([test "x$os_is_win32" != "x1"],
496 AS_IF([test "x$ax_pthread_ok" = "xyes"],
497 AC_DEFINE([_POSIX_PTHREAD_SEMANTICS], 1, [Needed on Solaris]))
500 #### Check for libs ####
503 AC_SEARCH_LIBS([pow], [m])
506 AC_SEARCH_LIBS([sched_setscheduler], [rt])
507 AC_SEARCH_LIBS([dlopen], [dl])
508 AC_SEARCH_LIBS([shm_open], [rt])
509 AC_SEARCH_LIBS([inet_ntop], [nsl])
510 AC_SEARCH_LIBS([timer_create], [rt])
511 AC_SEARCH_LIBS([pthread_setaffinity_np], [pthread])
512 AC_SEARCH_LIBS([pthread_getname_np], [pthread])
513 AC_SEARCH_LIBS([pthread_setname_np], [pthread])
516 AC_SEARCH_LIBS([connect], [socket])
517 AC_SEARCH_LIBS([backtrace], [execinfo ubacktrace])
520 if test "x$os_is_darwin" = "x1" ; then
521 AC_MSG_CHECKING([looking for Apple CoreService Framework])
522 # How do I check a framework "library" - AC_CHECK_LIB prob. won't work??, just assign LIBS & hope
523 AC_CHECK_HEADER([/Developer/Headers/FlatCarbon/CoreServices.h],
524 [LIBS="$LIBS -framework CoreServices"],
525 [AC_CHECK_HEADERS([/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h],
526 [LIBS="$LIBS -framework CoreServices"],
527 [AC_MSG_ERROR([CoreServices.h header file not found])]
532 AC_DEFINE([HAVE_CLOCK_GETTIME], 1, [Using clock_gettime() replacement])
536 AM_CONDITIONAL([HAVE_BONJOUR], [test "x$HAVE_BONJOUR" = x1])
539 AC_SEARCH_LIBS([regexec], [pcreposix])
540 # This magic is needed so we do not needlessly add static libs to the win32 build, disabling its ability to make dlls.
541 AC_CHECK_FUNCS([getopt_long], [], [AC_CHECK_LIB([iberty], [getopt_long])])
544 #### Check for functions ####
547 AC_CHECK_FUNCS_ONCE([lrintf strtof])
552 AC_CHECK_FUNCS_ONCE([chmod chown fstat fchown fchmod clock_gettime getaddrinfo getgrgid_r getgrnam_r \
553 getpwnam_r getpwuid_r gettimeofday getuid mlock nanosleep \
554 pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
555 sigaction sleep symlink sysconf uname pthread_setaffinity_np pthread_getname_np pthread_setname_np])
556 AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
557 AC_SUBST(HAVE_MKFIFO)
558 AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
561 AC_CHECK_FUNCS_ONCE([readlink])
564 AC_CHECK_FUNCS_ONCE([ctime_r usleep])
567 AC_CHECK_FUNCS_ONCE([strerror_r])
570 AC_CHECK_FUNCS_ONCE([lstat paccept])
573 AC_CHECK_FUNCS_ONCE([setresuid setresgid setreuid setregid seteuid setegid ppoll strsignal sig2str strtod_l pipe2 accept4])
577 AC_CHECK_FUNCS([regexec], [HAVE_REGEX=1], [HAVE_REGEX=0])
578 AM_CONDITIONAL(HAVE_REGEX, [test "x$HAVE_REGEX" = "x1"])
580 # Large File-Support (LFS)
582 # Check for open64 to know if the current system does have open64() and similar functions
583 AC_CHECK_FUNCS_ONCE([open64])
585 AC_SEARCH_LIBS([dladdr], [dl], [HAVE_DLADDR=1], [HAVE_DLADDR=0])
586 AC_DEFINE(HAVE_DLADDR, [1], [Have dladdr?])
588 ###################################
589 # External libraries #
590 ###################################
596 #### X11 (optional) ####
599 AS_HELP_STRING([--disable-x11],[Disable optional X11 support]))
601 AS_IF([test "x$enable_x11" != "xno"],
602 [PKG_CHECK_MODULES(X11, [ x11-xcb xcb >= 1.6 ice sm xtst ], HAVE_X11=1, HAVE_X11=0)],
605 AS_IF([test "x$enable_x11" = "xyes" && test "x$HAVE_X11" = "x0"],
606 [AC_MSG_ERROR([*** X11 not found])])
609 AM_CONDITIONAL([HAVE_X11], [test "x$HAVE_X11" = x1])
610 AS_IF([test "x$HAVE_X11" = "x1"], AC_DEFINE([HAVE_X11], 1, [Have X11?]))
612 #### Capabilities (optional) ####
617 AS_HELP_STRING([--without-caps],[Omit support for dropping capabilities.]))
619 if test "x${with_caps}" != "xno"; then
620 AC_SEARCH_LIBS([cap_init], [cap], [], [])
622 # Only give an error on hosts that we know could support capabilities
623 AC_CHECK_HEADERS([sys/capability.h], [], [
624 if test "${host_has_caps}" = "1"; then
625 AC_MSG_ERROR([*** sys/capability.h not found. Use --without-caps to disable capabilities support.])
629 #### Valgrind (optional) ####
631 AC_CHECK_HEADERS_ONCE([valgrind/memcheck.h])
633 #### check unit tests ####
635 AC_ARG_ENABLE([tests],
636 AS_HELP_STRING([--disable-tests],[Disable unit tests]))
638 AS_IF([test "x$enable_tests" != "xno"],
639 [PKG_CHECK_MODULES(LIBCHECK, [ check ], HAVE_LIBCHECK=1, HAVE_LIBCHECK=0)],
642 AS_IF([test "x$enable_tests" = "xyes" && test "x$HAVE_LIBCHECK" = "x0"],
643 [AC_MSG_ERROR([*** check library not found])])
645 AM_CONDITIONAL([HAVE_TESTS], [test "x$HAVE_LIBCHECK" = x1])
647 #### json parsing ####
649 PKG_CHECK_MODULES(LIBJSON, [ json-c >= 0.11 ])
653 PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.20 ])
657 AC_MSG_CHECKING([whether we need libatomic_ops])
658 if test "x$need_libatomic_ops" = "xyes"; then
660 AC_CHECK_HEADERS([atomic_ops.h],
661 [CFLAGS="$CFLAGS -DAO_REQUIRE_CAS"],
662 [AC_MSG_ERROR([*** libatomic-ops headers not found])])
664 # Win32 does not need the lib and breaks horribly if we try to include it
665 AS_IF([test "x$os_is_win32" != "x1"], [LIBS="$LIBS -latomic_ops"])
670 #### Libsamplerate support (optional) ####
672 AC_ARG_ENABLE([samplerate],
673 AS_HELP_STRING([--enable-samplerate],[Enable optional libsamplerate support (DEPRECATED)]))
675 AS_IF([test "x$enable_samplerate" = "xyes"],
676 [PKG_CHECK_MODULES(LIBSAMPLERATE, [ samplerate >= 0.1.0 ], HAVE_LIBSAMPLERATE=1, HAVE_LIBSAMPLERATE=0)],
677 HAVE_LIBSAMPLERATE=0)
679 AS_IF([test "x$enable_samplerate" = "xyes" && test "x$HAVE_LIBSAMPLERATE" = "x0"],
680 [AC_MSG_ERROR([*** Libsamplerate not found])])
682 AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
683 AS_IF([test "x$HAVE_LIBSAMPLERATE" = "x1"], AC_DEFINE([HAVE_LIBSAMPLERATE], 1, [Have libsamplerate?]))
685 AS_IF([test "x$HAVE_LIBSAMPLERATE" = "x1"], AC_MSG_WARN([Support for libsamplerate is DEPRECATED]))
687 #### Database support ####
689 AC_ARG_WITH([database],
690 AS_HELP_STRING([--with-database=auto|tdb|gdbm|simple],[Choose database backend.]),[],[with_database=auto])
693 AS_IF([test "x$with_database" = "xauto" -o "x$with_database" = "xtdb"],
694 [PKG_CHECK_MODULES(TDB, [ tdb ], HAVE_TDB=1, HAVE_TDB=0)],
696 AS_IF([test "x$HAVE_TDB" = "x1"], with_database=tdb)
698 AS_IF([test "x$with_database" = "xtdb" && test "x$HAVE_TDB" = "x0"],
699 [AC_MSG_ERROR([*** tdb not found])])
702 AS_IF([test "x$with_database" = "xauto" -o "x$with_database" = "xgdbm"],
705 AC_CHECK_LIB(gdbm, gdbm_open, [], HAVE_GDBM=0)
706 AC_CHECK_HEADERS(gdbm.h, [], HAVE_GDBM=0)
709 AS_IF([test "x$HAVE_GDBM" = "x1"],
716 AS_IF([test "x$with_database" = "xgdbm" && test "x$HAVE_GDBM" = "x0"],
717 [AC_MSG_ERROR([*** gdbm not found])])
720 AS_IF([test "x$with_database" = "xauto" -o "x$with_database" = "xsimple"],
723 AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], with_database=simple)
725 AS_IF([test "x$HAVE_TDB" != x1 -a "x$HAVE_GDBM" != x1 -a "x$HAVE_SIMPLEDB" != x1],
726 AC_MSG_ERROR([*** missing database backend]))
729 AM_CONDITIONAL([HAVE_TDB], [test "x$HAVE_TDB" = x1])
730 AS_IF([test "x$HAVE_TDB" = "x1"], AC_DEFINE([HAVE_TDB], 1, [Have tdb?]))
732 AC_SUBST(GDBM_CFLAGS)
734 AM_CONDITIONAL([HAVE_GDBM], [test "x$HAVE_GDBM" = x1])
735 AS_IF([test "x$HAVE_GDBM" = "x1"], AC_DEFINE([HAVE_GDBM], 1, [Have gdbm?]))
737 AM_CONDITIONAL([HAVE_SIMPLEDB], [test "x$HAVE_SIMPLEDB" = x1])
738 AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], AC_DEFINE([HAVE_SIMPLEDB], 1, [Have simple?]))
740 #### OSS support (optional) ####
742 AC_ARG_ENABLE([oss-output],
743 AS_HELP_STRING([--disable-oss-output],[Disable optional OSS output support]))
745 AC_ARG_ENABLE([oss-wrapper],
746 AS_HELP_STRING([--disable-oss-wrapper],[Disable optional OSS wrapper support]))
748 AS_IF([test "x$enable_oss_output" != "xno" -o "x$enable_oss_wrapper" != "xno"],
749 [AC_CHECK_HEADERS([sys/soundcard.h], HAVE_OSS=1, HAVE_OSS=0)],
752 AS_IF([test "x$enable_oss_output" = "xyes" -o "x$enable_oss_wrapper" = "xyes" && test "x$HAVE_OSS" = "x0"],
753 [AC_MSG_ERROR([*** OSS support not found])])
755 AS_IF([test "x$enable_oss_output" != "xno"],
756 [AS_IF([test "x$HAVE_OSS" = "x1"], HAVE_OSS_OUTPUT=1, HAVE_OSS_OUTPUT=0)],
759 AS_IF([test "x$enable_oss_wrapper" != "xno"],
760 [AS_IF([test "x$HAVE_OSS" = "x1"], HAVE_OSS_WRAPPER=1, HAVE_OSS_WRAPPER=0)],
763 AC_SUBST(HAVE_OSS_OUTPUT)
764 AM_CONDITIONAL([HAVE_OSS_OUTPUT], [test "x$HAVE_OSS_OUTPUT" = "x1"])
765 AM_CONDITIONAL([HAVE_OSS_WRAPPER], [test "x$HAVE_OSS_WRAPPER" = "x1"])
766 AS_IF([test "x$HAVE_OSS_OUTPUT" = "x1"], AC_DEFINE([HAVE_OSS_OUTPUT], 1, [Have OSS output?]))
767 AS_IF([test "x$HAVE_OSS_WRAPPER" = "x1"], AC_DEFINE([HAVE_OSS_WRAPPER], 1, [Have OSS wrapper (padsp)?]))
769 #### CoreAudio support (optional) ####
771 AC_ARG_ENABLE([coreaudio-output],
772 AS_HELP_STRING([--disable-coreaudio-output],[Disable optional CoreAudio output support]))
774 AS_IF([test "x$enable_coreaudio_output" != "xno"],
775 [AC_CHECK_HEADERS([CoreAudio/CoreAudio.h], HAVE_COREAUDIO=1, HAVE_COREAUDIO=0)],
778 AS_IF([test "x$enable_coreaudio_output" = "xyes" && test "x$HAVE_COREAUDIO" = "x0"],
779 [AC_MSG_ERROR([*** CoreAudio output support not found])])
781 AM_CONDITIONAL([HAVE_COREAUDIO], [test "x$HAVE_COREAUDIO" = "x1" && test "x$enable_coreaudio_output" != "xno"])
783 #### ALSA support (optional) ####
785 AC_ARG_ENABLE([alsa],
786 AS_HELP_STRING([--disable-alsa],[Disable optional ALSA support]))
788 AS_IF([test "x$enable_alsa" != "xno"],
789 [PKG_CHECK_MODULES(ASOUNDLIB, [ alsa >= 1.0.19 ], HAVE_ALSA=1, HAVE_ALSA=0)],
792 AS_IF([test "x$enable_alsa" = "xyes" && test "x$HAVE_ALSA" = "x0"],
793 [AC_MSG_ERROR([*** Needed alsa >= 1.0.19 support not found])])
795 AS_IF([test "x$HAVE_ALSA" = "x1"],
797 save_CPPFLAGS="$CPPFLAGS"; CPPFLAGS="$CPPFLAGS $ASOUNDLIB_CFLAGS"
798 AC_CHECK_HEADERS([use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
799 CPPFLAGS="$save_CPPFLAGS"
804 AM_CONDITIONAL([HAVE_ALSA], [test "x$HAVE_ALSA" = x1])
805 AS_IF([test "x$HAVE_ALSA" = "x1"], AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?]))
806 AS_IF([test "x$HAVE_ALSA_UCM" = "x1"], AC_DEFINE([HAVE_ALSA_UCM], 1, [Have ALSA UCM?]))
808 #### EsounD support (optional) ####
810 AC_ARG_ENABLE([esound],
811 AS_HELP_STRING([--disable-esound],[Disable optional EsounD support]))
812 AM_CONDITIONAL([HAVE_ESOUND], [test "x$enable_esound" != "xno"])
813 AS_IF([test "x$enable_esound" != "xno"], [HAVE_ESOUND=1])
815 #### Solaris audio support (optional) ####
817 AC_ARG_ENABLE([solaris],
818 AS_HELP_STRING([--disable-solaris],[Disable optional Solaris audio support]))
820 AS_IF([test "x$enable_solaris" != "xno"],
821 [AC_CHECK_HEADERS([sys/audio.h], HAVE_SOLARIS=1, HAVE_SOLARIS=0)],
824 AS_IF([test "x$enable_solaris" = "xyes" && test "x$HAVE_SOLARIS" = "x0"],
825 [AC_MSG_ERROR([*** Solaris audio support not found])])
827 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$HAVE_SOLARIS" = x1])
828 AS_IF([test "x$HAVE_SOLARIS" = "x1"], AC_DEFINE([HAVE_SOLARIS], 1, [Have Solaris audio?]))
830 #### WaveOut audio support (optional) ####
832 AC_ARG_ENABLE([waveout],
833 AS_HELP_STRING([--disable-waveout],[Disable optional WaveOut audio support]))
835 AS_IF([test "x$enable_waveout" != "xno"],
836 [AC_CHECK_HEADERS([mmsystem.h], HAVE_WAVEOUT=1, HAVE_WAVEOUT=0, [#include <windows.h>])],
839 AS_IF([test "x$enable_waveout" = "xyes" && test "x$HAVE_WAVEOUT" = "x0"],
840 [AC_MSG_ERROR([*** WaveOut audio support not found])])
842 AC_SUBST(HAVE_WAVEOUT)
843 AM_CONDITIONAL([HAVE_WAVEOUT], [test "x$HAVE_WAVEOUT" = x1])
844 AS_IF([test "x$HAVE_WAVEOUT" = "x1"], AC_DEFINE([HAVE_WAVEOUT], 1, [Have WaveOut audio?]))
846 #### GLib 2 support (optional) ####
848 AC_ARG_ENABLE([glib2],
849 AS_HELP_STRING([--disable-glib2],[Disable optional GLib 2 support]))
851 AS_IF([test "x$enable_glib2" != "xno"],
852 [PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ], HAVE_GLIB20=1, HAVE_GLIB20=0)],
855 AS_IF([test "x$enable_glib2" = "xyes" && test "x$HAVE_GLIB20" = "x0"],
856 [AC_MSG_ERROR([*** GLib 2 support not found])])
858 AC_SUBST(HAVE_GLIB20)
859 AM_CONDITIONAL([HAVE_GLIB20], [test "x$HAVE_GLIB20" = x1])
860 AS_IF([test "x$HAVE_GLIB20" = "x1"], AC_DEFINE([HAVE_GLIB], 1, [Have GLIB?]))
862 #### GTK3 support (optional) ####
864 AC_ARG_ENABLE([gtk3],
865 AS_HELP_STRING([--disable-gtk3],[Disable optional Gtk+ 3 support]))
867 AS_IF([test "x$enable_gtk3" != "xno"],
868 [PKG_CHECK_MODULES(GTK30, [ gtk+-3.0 ], HAVE_GTK30=1, HAVE_GTK30=0)],
871 AS_IF([test "x$enable_gtk3" = "xyes" && test "x$HAVE_GTK30" = "x0"],
872 [AC_MSG_ERROR([*** Gtk+ 3 support not found])])
874 AM_CONDITIONAL([HAVE_GTK30], [test "x$HAVE_GTK30" = x1])
875 AS_IF([test "x$HAVE_GTK30" = "x1"], AC_DEFINE([HAVE_GTK], 1, [Have GTK?]))
877 #### GConf support (optional) ####
879 AC_ARG_ENABLE([gconf],
880 AS_HELP_STRING([--disable-gconf],[Disable optional GConf support]))
882 AS_IF([test "x$enable_gconf" != "xno"],
883 [PKG_CHECK_MODULES(GCONF, [ gconf-2.0 >= 2.4.0 gobject-2.0 ], HAVE_GCONF=1, HAVE_GCONF=0)],
886 AS_IF([test "x$enable_gconf" = "xyes" && test "x$HAVE_GCONF" = "x0"],
887 [AC_MSG_ERROR([*** GConf support not found])])
889 AM_CONDITIONAL([HAVE_GCONF], [test "x$HAVE_GCONF" = x1])
891 #### Avahi support (optional) ####
893 AC_ARG_ENABLE([avahi],
894 AS_HELP_STRING([--disable-avahi],[Disable optional Avahi support]))
896 AS_IF([test "x$enable_avahi" != "xno"],
897 [PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.0 ], HAVE_AVAHI=1, HAVE_AVAHI=0)],
900 AS_IF([test "x$enable_avahi" = "xyes" && test "x$HAVE_AVAHI" = "x0"],
901 [AC_MSG_ERROR([*** Avahi support not found])])
904 AM_CONDITIONAL([HAVE_AVAHI], [test "x$HAVE_AVAHI" = x1])
906 #### JACK (optional) ####
908 AC_ARG_ENABLE([jack],
909 AS_HELP_STRING([--disable-jack],[Disable optional JACK support]))
911 AS_IF([test "x$enable_jack" != "xno"],
912 [PKG_CHECK_MODULES(JACK, [ jack >= 0.117.0 ], HAVE_JACK=1, HAVE_JACK=0)],
915 AS_IF([test "x$enable_jack" = "xyes" && test "x$HAVE_JACK" = "x0"],
916 [AC_MSG_ERROR([*** JACK support not found])])
918 AM_CONDITIONAL([HAVE_JACK], [test "x$HAVE_JACK" = x1])
920 #### Async DNS support (optional) ####
922 AC_ARG_ENABLE([asyncns],
923 AS_HELP_STRING([--disable-asyncns],[Disable optional Async DNS support]))
925 AS_IF([test "x$enable_asyncns" != "xno"],
926 [PKG_CHECK_MODULES(LIBASYNCNS, [ libasyncns >= 0.1 ], HAVE_LIBASYNCNS=1, HAVE_LIBASYNCNS=0)],
929 AS_IF([test "x$enable_asyncns" = "xyes" && test "x$HAVE_LIBASYNCNS" = "x0"],
930 [AC_MSG_ERROR([*** Async DNS support not found])])
932 AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
933 AS_IF([test "x$HAVE_LIBASYNCNS" = "x1"], AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?]))
935 #### TCP wrappers (optional) ####
937 AC_ARG_ENABLE([tcpwrap],
938 AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]))
940 AS_IF([test "x$enable_tcpwrap" != "xno"],
943 AS_IF([test "x$LIBWRAP_LIBS" != "x"], HAVE_TCPWRAP=1, HAVE_TCPWRAP=0)
947 AS_IF([test "x$enable_tcpwrap" = "xyes" && test "x$HAVE_TCPWRAP" = "x0"],
948 [AC_MSG_ERROR([*** TCP wrappers support not found])])
950 AC_SUBST(LIBWRAP_LIBS)
952 #### LIRC support (optional) ####
954 AC_ARG_ENABLE([lirc],
955 AS_HELP_STRING([--disable-lirc],[Disable optional LIRC support]))
960 AS_IF([test "x$enable_lirc" != "xno"],
963 AC_CHECK_HEADER(lirc/lirc_client.h, [], [HAVE_LIRC=0])
964 AC_CHECK_LIB(lirc_client, lirc_init, [LIRC_LIBS=-llirc_client], [HAVE_LIRC=0])
968 AS_IF([test "x$enable_lirc" = "xyes" && test "x$HAVE_LIRC" = "x0"],
969 [AC_MSG_ERROR([*** LIRC support not found])])
971 AC_SUBST(LIRC_CFLAGS)
973 AM_CONDITIONAL([HAVE_LIRC], [test "x$HAVE_LIRC" = x1])
975 #### D-Bus support (optional) ####
977 AC_ARG_ENABLE([dbus],
978 AS_HELP_STRING([--disable-dbus],[Disable optional D-Bus support]))
980 AS_IF([test "x$enable_dbus" != "xno"],
981 [PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.4.12 ], HAVE_DBUS=1, HAVE_DBUS=0)],
984 AS_IF([test "x$enable_dbus" = "xyes" && test "x$HAVE_DBUS" = "x0"],
985 [AC_MSG_ERROR([*** D-Bus not available or too old version])])
987 AS_IF([test "x$HAVE_DBUS" = "x1"],
989 save_CFLAGS="$CFLAGS"; CFLAGS="$CFLAGS $DBUS_CFLAGS"
990 save_LIBS="$LIBS"; LIBS="$LIBS $DBUS_LIBS"
991 AC_CHECK_FUNCS(dbus_watch_get_unix_fd)
992 CFLAGS="$save_CFLAGS"
997 AM_CONDITIONAL([HAVE_DBUS], [test "x$HAVE_DBUS" = x1])
998 AS_IF([test "x$HAVE_DBUS" = "x1"], AC_DEFINE([HAVE_DBUS], 1, [Have D-Bus.]))
1000 PA_MACHINE_ID="${sysconfdir}/machine-id"
1001 AX_DEFINE_DIR(PA_MACHINE_ID, PA_MACHINE_ID, [D-Bus machine-id file])
1002 PA_MACHINE_ID_FALLBACK="${localstatedir}/lib/dbus/machine-id"
1003 AX_DEFINE_DIR(PA_MACHINE_ID_FALLBACK, PA_MACHINE_ID_FALLBACK,
1004 [Fallback machine-id file])
1006 #### BlueZ support (optional, dependent on D-Bus and SBC) ####
1008 AC_ARG_ENABLE([bluez4],
1009 AS_HELP_STRING([--disable-bluez4],[Disable optional BlueZ 4 support]))
1010 AC_ARG_ENABLE([bluez5],
1011 AS_HELP_STRING([--disable-bluez5],[Disable optional BlueZ 5 support]))
1014 AS_IF([test "x$enable_bluez4" != "xno" || test "x$enable_bluez5" != "xno"],
1015 [PKG_CHECK_MODULES(SBC, [ sbc >= 1.0 ], HAVE_SBC=1, HAVE_SBC=0)],
1019 AS_IF([test "x$enable_bluez4" != "xno" && test "x$HAVE_DBUS" = "x1" && test "x$HAVE_SBC" = "x1"], HAVE_BLUEZ_4=1,
1021 AS_IF([test "x$enable_bluez4" = "xyes" && test "x$HAVE_BLUEZ_4" != "x1"],
1022 [AC_MSG_ERROR([*** BLUEZ 4 support not found (requires sbc and D-Bus)])])
1023 AC_SUBST(HAVE_BLUEZ_4)
1024 AM_CONDITIONAL([HAVE_BLUEZ_4], [test "x$HAVE_BLUEZ_4" = x1])
1027 AS_IF([test "x$enable_bluez5" != "xno" && test "x$HAVE_DBUS" = "x1" && test "x$HAVE_SBC" = "x1"], HAVE_BLUEZ_5=1,
1029 AS_IF([test "x$enable_bluez5" = "xyes" && test "x$HAVE_BLUEZ_5" != "x1"],
1030 [AC_MSG_ERROR([*** BLUEZ 5 support not found (requires sbc and D-Bus)])])
1031 AC_SUBST(HAVE_BLUEZ_5)
1032 AM_CONDITIONAL([HAVE_BLUEZ_5], [test "x$HAVE_BLUEZ_5" = x1])
1034 AS_IF([test "x$HAVE_BLUEZ_4" = "x1" || test "x$HAVE_BLUEZ_5" = "x1"], HAVE_BLUEZ=1, HAVE_BLUEZ=0)
1035 AC_SUBST(HAVE_BLUEZ)
1036 AM_CONDITIONAL([HAVE_BLUEZ], [test "x$HAVE_BLUEZ" = x1])
1038 ## Bluetooth Headset profiles backend ##
1040 AC_ARG_ENABLE([bluez5-ofono-headset],
1041 AS_HELP_STRING([--disable-bluez5-ofono-headset],[Disable optional ofono headset backend support (Bluez 5)]))
1042 AS_IF([test "x$HAVE_BLUEZ_5" = "x1" && test "x$enable_bluez5_ofono_headset" != "xno"], HAVE_BLUEZ_5_OFONO_HEADSET=1,
1043 HAVE_BLUEZ_5_OFONO_HEADSET=0)
1044 AC_SUBST(HAVE_BLUEZ_5_OFONO_HEADSET)
1045 AM_CONDITIONAL([HAVE_BLUEZ_5_OFONO_HEADSET], [test "x$HAVE_BLUEZ_5_OFONO_HEADSET" = x1])
1046 AS_IF([test "x$HAVE_BLUEZ_5_OFONO_HEADSET" = "x1"], AC_DEFINE([HAVE_BLUEZ_5_OFONO_HEADSET], 1, [Bluez 5 ofono headset backend enabled]))
1048 AC_ARG_ENABLE([bluez5-native-headset],
1049 AS_HELP_STRING([--disable-bluez5-native-headset],[Disable optional native headset backend support (Bluez 5)]))
1050 AS_IF([test "x$HAVE_BLUEZ_5" = "x1" && test "x$enable_bluez5_native_headset" != "xno"],
1051 [PKG_CHECK_MODULES(BLUEZ, [ bluez >= 4.101 ], HAVE_BLUEZ_5_NATIVE_HEADSET=1, HAVE_BLUEZ_5_NATIVE_HEADSET=0)],
1052 HAVE_BLUEZ_5_NATIVE_HEADSET=0)
1053 AS_IF([test "x$enable_bluez5_native_headset" = "xyes" && test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = "x0"],
1054 [AC_MSG_ERROR([*** BlueZ 5 native headset backend support not available (requires the libbluetooth headers)])])
1055 AC_SUBST(HAVE_BLUEZ_5_NATIVE_HEADSET)
1056 AM_CONDITIONAL([HAVE_BLUEZ_5_NATIVE_HEADSET], [test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = x1])
1057 AS_IF([test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = "x1"], AC_DEFINE([HAVE_BLUEZ_5_NATIVE_HEADSET], 1, [Bluez 5 native headset backend enabled]))
1059 #### UDEV support (optional) ####
1061 AC_ARG_ENABLE([udev],
1062 AS_HELP_STRING([--disable-udev],[Disable optional UDEV support]))
1064 AS_IF([test "x$enable_udev" != "xno" -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \)],
1065 [PKG_CHECK_MODULES(UDEV, [ libudev >= 143 ], HAVE_UDEV=1, HAVE_UDEV=0)],
1068 AS_IF([test "x$enable_udev" = "xyes" && test "x$HAVE_UDEV" = "x0"],
1069 [AC_MSG_ERROR([*** UDEV support not found])])
1072 AM_CONDITIONAL([HAVE_UDEV], [test "x$HAVE_UDEV" = x1])
1073 AS_IF([test "x$HAVE_UDEV" = "x1"], AC_DEFINE([HAVE_UDEV], 1, [Have UDEV.]))
1075 #### HAL compat support (optional, dependent on UDEV) ####
1077 AC_ARG_ENABLE([hal-compat],
1078 AS_HELP_STRING([--disable-hal-compat],[Disable optional HAL->udev transition compatibility support]))
1080 AS_IF([test "x$enable_hal_compat" != "xno"],
1081 [AS_IF([test "x$HAVE_UDEV" = "x1"], HAVE_HAL_COMPAT=1, HAVE_HAL_COMPAT=0)],
1084 AM_CONDITIONAL([HAVE_HAL_COMPAT], [test "x$HAVE_HAL_COMPAT" = x1])
1085 AS_IF([test "x$HAVE_HAL_COMPAT" = "x1"], AC_DEFINE([HAVE_HAL_COMPAT], 1, [Have HAL compatibility.]))
1087 #### IPv6 connection support (optional) ####
1089 AC_ARG_ENABLE([ipv6],
1090 AS_HELP_STRING([--disable-ipv6],[Disable optional IPv6 support]))
1092 AS_IF([test "x$enable_ipv6" != "xno"], [HAVE_IPV6=1], [HAVE_IPV6=0])
1094 AS_IF([test "x$HAVE_IPV6" = "x1"], AC_DEFINE([HAVE_IPV6], 1, [Define this to enable IPv6 connection support]))
1096 #### OpenSSL support (optional) ####
1098 AC_ARG_ENABLE([openssl],
1099 AS_HELP_STRING([--disable-openssl],[Disable OpenSSL support (used for Airtunes/RAOP)]))
1101 AS_IF([test "x$enable_openssl" != "xno"],
1102 [PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ], HAVE_OPENSSL=1, HAVE_OPENSSL=0)],
1105 AS_IF([test "x$enable_openssl" = "xyes" && test "x$HAVE_OPENSSL" = "x0"],
1106 [AC_MSG_ERROR([*** OpenSSL support not found])])
1108 AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
1109 AS_IF([test "x$HAVE_OPENSSL" = "x1"], AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL]))
1111 #### FFTW (optional) ####
1114 AS_HELP_STRING([--without-fftw],[Omit FFTW-using modules (equalizer)]))
1116 AS_IF([test "x$with_fftw" != "xno"],
1117 [PKG_CHECK_MODULES(FFTW, [ fftw3f ], HAVE_FFTW=1, HAVE_FFTW=0)],
1120 AS_IF([test "x$with_fftw" = "xyes" && test "x$HAVE_FFTW" = "x0"],
1121 [AC_MSG_ERROR([*** FFTW support not found])])
1123 AM_CONDITIONAL([HAVE_FFTW], [test "x$HAVE_FFTW" = "x1"])
1125 #### speex (optional) ####
1127 AC_ARG_WITH([speex],
1128 AS_HELP_STRING([--without-speex],[Omit speex (resampling, AEC)]))
1130 AS_IF([test "x$with_speex" != "xno"],
1131 [PKG_CHECK_MODULES(LIBSPEEX, [ speexdsp >= 1.2 ], HAVE_SPEEX=1, HAVE_SPEEX=0)],
1134 AS_IF([test "x$with_speex" = "xyes" && test "x$HAVE_SPEEX" = "x0"],
1135 [AC_MSG_ERROR([*** speex support not found])])
1137 AM_CONDITIONAL([HAVE_SPEEX], [test "x$HAVE_SPEEX" = "x1"])
1138 AS_IF([test "x$HAVE_SPEEX" = "x1"], AC_DEFINE([HAVE_SPEEX], 1, [Have speex]))
1140 #### soxr (optional) ####
1143 AS_HELP_STRING([--without-soxr],[Omit soxr (resampling)]))
1145 AS_IF([test "x$with_soxr" != "xno"],
1146 [PKG_CHECK_MODULES(LIBSOXR, [ soxr >= 0.1.1 ], HAVE_SOXR=1, HAVE_SOXR=0)],
1149 AS_IF([test "x$with_soxr" = "xyes" && test "x$HAVE_SOXR" = "x0"],
1150 [AC_MSG_ERROR([*** soxr support not found])])
1152 AM_CONDITIONAL([HAVE_SOXR], [test "x$HAVE_SOXR" = "x1"])
1153 AS_IF([test "x$HAVE_SOXR" = "x1"], AC_DEFINE([HAVE_SOXR], 1, [Have soxr]))
1155 #### Xen support (optional) ####
1157 AC_ARG_ENABLE([xen],
1158 AS_HELP_STRING([--disable-xen],[Disable optional Xen paravirtualized driver]))
1163 AS_IF([test "x$enable_xen" != "xno"],
1166 AC_CHECK_HEADER(xenctrl.h, [], [HAVE_XEN=0])
1167 AC_CHECK_HEADER(xs.h, [], [HAVE_XEN=0])
1168 AC_CHECK_LIB(xenctrl, xc_interface_open, [XEN_LIBS="$XEN_LIBS -lxenctrl"], [HAVE_XEN=0])
1169 AC_CHECK_LIB(xenstore, xs_domain_open, [XEN_LIBS="$XEN_LIBS -lxenstore"], [HAVE_XEN=0])
1173 AS_IF([test "x$enable_xen" = "xyes" && test "x$HAVE_XEN" = "x0"],
1174 [AC_MSG_ERROR([*** Xen development headers or libraries not found])])
1176 AC_SUBST(XEN_CFLAGS)
1178 AM_CONDITIONAL([HAVE_XEN], [test "x$HAVE_XEN" = x1])
1180 #### gcov support (optional) #####
1182 AC_ARG_ENABLE([gcov],
1183 AS_HELP_STRING([--enable-gcov],[Enable optional gcov coverage analysis]))
1188 AS_IF([test "x$enable_gcov" = "xyes"],
1191 GCOV_CFLAGS="$GCOV_CFLAGS -fprofile-arcs -ftest-coverage"
1192 GCOV_LIBS="$GCOV_LIBS -fprofile-arcs"
1196 AC_SUBST(GCOV_CFLAGS)
1198 AM_CONDITIONAL([HAVE_GCOV], [test "x$HAVE_GCOV" = x1])
1200 #### ORC (optional) ####
1204 #### systemd support (optional) ####
1206 AC_ARG_ENABLE([systemd-daemon],
1207 AS_HELP_STRING([--disable-systemd-daemon],[Disable optional systemd daemon (socket activation) support]))
1209 AC_ARG_ENABLE([systemd-login],
1210 AS_HELP_STRING([--disable-systemd-login],[Disable optional systemd login support]))
1212 AC_ARG_ENABLE([systemd-journal],
1213 AS_HELP_STRING([--disable-systemd-journal],[Disable optional systemd journal support]))
1215 # Newer systemd's combine their subcomponent libraries into one
1216 # If it exists, we should use it for the further checks
1218 AS_IF([test "x$enable_systemd_daemon" != "xno" || test "x$enable_systemd_login" != "xno" || test "x$enable_systemd_journal" != "xno"],
1219 [PKG_CHECK_MODULES(SYSTEMD, [ libsystemd ], HAVE_SYSTEMD=1, HAVE_SYSTEMD=0)],
1222 AS_IF([test "x$HAVE_SYSTEMD" = "x1"],
1224 HAVE_SYSTEMD_DAEMON=1
1225 HAVE_SYSTEMD_LOGIN=1
1226 HAVE_SYSTEMD_JOURNAL=1
1229 AC_ARG_WITH([systemduserunitdir],
1230 AS_HELP_STRING([--with-systemduserunitdir=DIR], [Directory for systemd user service files]),
1231 [], [with_systemduserunitdir=$($PKG_CONFIG --variable=systemduserunitdir systemd)])
1232 if test "x$with_systemduserunitdir" != xno; then
1233 AC_SUBST([systemduserunitdir], [$with_systemduserunitdir])
1236 #### systemd daemon support (optional) ####
1238 AS_IF([test "x$enable_systemd_daemon" != "xno"],
1239 [AS_IF([test "x$HAVE_SYSTEMD_DAEMON" != "x1"], [PKG_CHECK_MODULES(SYSTEMDDAEMON, [ libsystemd-daemon ], HAVE_SYSTEMD_DAEMON=1, HAVE_SYSTEMD_DAEMON=0)])],
1240 HAVE_SYSTEMD_DAEMON=0)
1242 AS_IF([test "x$enable_systemd_daemon" = "xyes" && test "x$HAVE_SYSTEMD_DAEMON" = "x0"],
1243 [AC_MSG_ERROR([*** Needed systemd daemon support not found])])
1245 AC_SUBST(HAVE_SYSTEMD_DAEMON)
1246 AM_CONDITIONAL([HAVE_SYSTEMD_DAEMON], [test "x$HAVE_SYSTEMD_DAEMON" = x1])
1247 AS_IF([test "x$HAVE_SYSTEMD_DAEMON" = "x1"], AC_DEFINE([HAVE_SYSTEMD_DAEMON], 1, [Have SYSTEMDDAEMON?]))
1249 #### systemd login support (optional) ####
1251 AS_IF([test "x$enable_systemd_login" != "xno"],
1252 [AS_IF([test "x$HAVE_SYSTEMD_LOGIN" != "x1"], [PKG_CHECK_MODULES(SYSTEMDLOGIN, [ libsystemd-login ], HAVE_SYSTEMD_LOGIN=1, HAVE_SYSTEMD_LOGIN=0)])],
1253 HAVE_SYSTEMD_LOGIN=0)
1255 AS_IF([test "x$enable_systemd_login" = "xyes" && test "x$HAVE_SYSTEMD_LOGIN" = "x0"],
1256 [AC_MSG_ERROR([*** Needed systemd login support not found])])
1258 AC_SUBST(HAVE_SYSTEMD_LOGIN)
1259 AM_CONDITIONAL([HAVE_SYSTEMD_LOGIN], [test "x$HAVE_SYSTEMD_LOGIN" = x1])
1260 AS_IF([test "x$HAVE_SYSTEMD_LOGIN" = "x1"], AC_DEFINE([HAVE_SYSTEMD_LOGIN], 1, [Have SYSTEMDLOGIN?]))
1262 #### systemd journal support (optional) ####
1264 AS_IF([test "x$enable_systemd_journal" != "xno"],
1265 [AS_IF([test "x$HAVE_SYSTEMD_JOURNAL" != "x1"], [PKG_CHECK_MODULES(SYSTEMDJOURNAL, [ libsystemd-journal ], HAVE_SYSTEMD_JOURNAL=1, HAVE_SYSTEMD_JOURNAL=0)])],
1266 HAVE_SYSTEMD_JOURNAL=0)
1268 AS_IF([test "x$enable_systemd_journal" = "xyes" && test "x$HAVE_SYSTEMD_JOURNAL" = "x0"],
1269 [AC_MSG_ERROR([*** Needed systemd journal support not found])])
1271 AC_SUBST(HAVE_SYSTEMD_JOURNAL)
1272 AM_CONDITIONAL([HAVE_SYSTEMD_JOURNAL], [test "x$HAVE_SYSTEMD_JOURNAL" = x1])
1273 AS_IF([test "x$HAVE_SYSTEMD_JOURNAL" = "x1"], AC_DEFINE([HAVE_SYSTEMD_JOURNAL], 1, [Have SYSTEMDJOURNAL?]))
1275 #### Build and Install man pages ####
1277 AC_ARG_ENABLE([manpages],
1278 AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]))
1280 AM_CONDITIONAL([BUILD_MANPAGES], [test "x$enable_manpages" != "xno"])
1282 #### PulseAudio system group & user #####
1284 AC_ARG_WITH(system_user, AS_HELP_STRING([--with-system-user=<user>],[User for running the PulseAudio daemon as a system-wide instance (pulse)]))
1285 if test -z "$with_system_user" ; then
1286 PA_SYSTEM_USER=pulse
1288 PA_SYSTEM_USER=$with_system_user
1290 AC_SUBST(PA_SYSTEM_USER)
1291 AC_DEFINE_UNQUOTED(PA_SYSTEM_USER,"$PA_SYSTEM_USER", [User for running the PulseAudio system daemon])
1293 AC_ARG_WITH(system_group,AS_HELP_STRING([--with-system-group=<group>],[Group for running the PulseAudio daemon as a system-wide instance (pulse)]))
1294 if test -z "$with_system_group" ; then
1295 PA_SYSTEM_GROUP=pulse
1297 PA_SYSTEM_GROUP=$with_system_group
1299 AC_SUBST(PA_SYSTEM_GROUP)
1300 AC_DEFINE_UNQUOTED(PA_SYSTEM_GROUP,"$PA_SYSTEM_GROUP", [Group for the PulseAudio system daemon])
1302 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)]))
1303 if test -z "$with_access_group" ; then
1304 PA_ACCESS_GROUP=pulse-access
1306 PA_ACCESS_GROUP=$with_access_group
1308 AC_SUBST(PA_ACCESS_GROUP)
1309 AC_DEFINE_UNQUOTED(PA_ACCESS_GROUP,"$PA_ACCESS_GROUP", [Access group])
1311 AC_ARG_ENABLE([per-user-esound-socket],
1312 AS_HELP_STRING([--disable-per-user-esound-socket],[Use global esound socket directory /tmp/.esd/socket.]))
1314 if test "x$enable_per_user_esound_socket" != "xno"; then
1315 USE_PER_USER_ESOUND_SOCKET=1
1316 AC_DEFINE([USE_PER_USER_ESOUND_SOCKET], [1], [Define this if you want per-user esound socket directories])
1318 USE_PER_USER_ESOUND_SOCKET=0
1321 #### PulseAudio system runtime dir ####
1323 PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
1324 AX_DEFINE_DIR(PA_SYSTEM_RUNTIME_PATH, PA_SYSTEM_RUNTIME_PATH, [System runtime dir])
1325 PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
1326 AX_DEFINE_DIR(PA_SYSTEM_CONFIG_PATH, PA_SYSTEM_CONFIG_PATH, [System config dir])
1327 PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
1328 AX_DEFINE_DIR(PA_SYSTEM_STATE_PATH, PA_SYSTEM_STATE_PATH, [System state dir])
1330 PA_BINARY=${bindir}/pulseaudio${EXEEXT}
1331 AX_DEFINE_DIR(PA_BINARY, PA_BINARY, [Location of pulseaudio binary])
1333 PACTL_BINARY=${bindir}/pactl${EXEEXT}
1334 AX_DEFINE_DIR(PACTL_BINARY, PACTL_BINARY, [Location of pactl binary])
1336 AC_SUBST(PA_SOEXT, [.so])
1337 AC_DEFINE(PA_SOEXT, [".so"], [Shared object extension])
1339 AC_SUBST(pulseconfdir, ["${sysconfdir}/pulse"])
1340 AX_DEFINE_DIR(PA_DEFAULT_CONFIG_DIR, pulseconfdir, [Location of configuration files])
1342 #### Mac OSX specific stuff #####
1344 AC_ARG_ENABLE(mac-universal,
1345 AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries]),
1346 enable_mac_universal=$enableval, enable_mac_universal="no")
1348 AC_ARG_WITH(mac-version-min,
1349 AS_HELP_STRING([--with-mac-version-min=<version>], [Defines the earliest version of MacOS X that the executables will run on.]),
1350 mac_version_min=$withval, mac_version_min="10.5")
1352 AC_ARG_WITH(mac-sysroot,
1353 AS_HELP_STRING([--with-mac-sysroot=<path>], [SDK basedir to use as the logical root directory for headers and libraries.]),
1354 mac_sysroot=$withval, mac_sysroot="/Developer/SDKs/MacOSX10.5.sdk")
1356 if test "x$os_is_darwin" = "x1" ; then
1357 LDFLAGS="$LDFLAGS -isysroot $mac_sysroot -mmacosx-version-min=$mac_version_min"
1358 CFLAGS="$CFLAGS -isysroot $mac_sysroot -mmacosx-version-min=$mac_version_min"
1360 if test "x$enable_mac_universal" = "xyes" ; then
1361 mac_arches="-arch i386 -arch x86_64"
1362 LDFLAGS="$LDFLAGS $mac_arches"
1363 CFLAGS="$CFLAGS $mac_arches"
1367 AC_ARG_ENABLE([webrtc-aec],
1368 AS_HELP_STRING([--enable-webrtc-aec], [Enable the optional WebRTC-based echo canceller]))
1370 AS_IF([test "x$enable_webrtc_aec" != "xno"],
1371 [PKG_CHECK_MODULES(WEBRTC, [ webrtc-audio-processing ], [HAVE_WEBRTC=1], [HAVE_WEBRTC=0])],
1374 AS_IF([test "x$enable_webrtc_aec" = "xyes" && test "x$HAVE_WEBRTC" = "x0"],
1375 [AC_MSG_ERROR([*** webrtc-audio-processing library not found])])
1377 AM_CONDITIONAL([HAVE_WEBRTC], [test "x$HAVE_WEBRTC" = "x1"])
1379 AC_ARG_ENABLE([adrian-aec],
1380 AS_HELP_STRING([--enable-adrian-aec], [Enable Adrian's optional echo canceller]))
1381 AS_IF([test "x$enable_adrian_aec" != "xno"],
1383 AM_CONDITIONAL([HAVE_ADRIAN_EC], [test "x$HAVE_ADRIAN_EC" = "x1"])
1387 ###################################
1389 ###################################
1391 AC_DEFINE_UNQUOTED(PA_CFLAGS, "$CFLAGS", [The CFLAGS used during compilation])
1393 # Check whether to build tests by default (as compile-test) or not
1394 AC_ARG_ENABLE([default-build-tests],
1395 AS_HELP_STRING([--disable-default-build-tests], [Build test programs only during make check]))
1396 AM_CONDITIONAL([BUILD_TESTS_DEFAULT], [test "x$enable_default_build_tests" != "xno"])
1398 AC_ARG_ENABLE([legacy-database-entry-format],
1399 AS_HELP_STRING([--disable-legacy-database-entry-format], [Try to load legacy (< 1.0) database files (card, device and volume restore).]))
1400 if test "x$enable_legacy_database_entry_format" != "xno" ; then
1401 AC_DEFINE(ENABLE_LEGACY_DATABASE_ENTRY_FORMAT, [1], [Legacy database entry format])
1404 AC_ARG_ENABLE([static-bins],
1405 AS_HELP_STRING([--enable-static-bins],[Statically link executables.]))
1406 AM_CONDITIONAL([STATIC_BINS], [test "x$enable_static_bins" = "xyes"])
1410 AS_HELP_STRING([--with-preopen-mods],[Modules to preopen in daemon (default: all).]),
1411 [PREOPEN_MODS=$withval], [PREOPEN_MODS="all"])
1412 AM_CONDITIONAL([PREOPEN_MODS], [test "x$PREOPEN_MODS" != "xall"])
1413 if test "x$PREOPEN_MODS" != "xall" ; then
1415 for mod in $PREOPEN_MODS; do
1416 tmpLIBS="$tmpLIBS module-$mod.la"
1418 PREOPEN_MODS="$tmpLIBS"
1419 AC_SUBST(PREOPEN_MODS)
1424 AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINOR}/modules]),
1425 [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINOR}/modules"])
1427 AC_SUBST(modlibexecdir)
1428 AX_DEFINE_DIR(PA_DLSEARCHPATH, modlibexecdir, [Modules dir])
1432 AS_HELP_STRING([--with-udev-rules-dir],[Directory where to install udev rules to (defaults to /lib/udev/rules.d)]),
1433 [udevrulesdir=$withval], [udevrulesdir="/lib/udev/rules.d"])
1435 AC_SUBST(udevrulesdir)
1437 AC_ARG_WITH([bash-completion-dir],
1438 AS_HELP_STRING([--with-bash-completion-dir=DIR], [Directory for bash completion files]),
1439 [bashcompletiondir=$withval], [bashcompletiondir=$($PKG_CONFIG --variable=completionsdir bash-completion)])
1440 if test "x$bashcompletionsdir" = "x"; then
1441 bashcompletiondir="${datadir}/bash-completion/completions"
1444 AC_SUBST(bashcompletiondir)
1447 [zsh-completion-dir],
1448 AS_HELP_STRING([--with-zsh-completion-dir], [Zsh completions directory (defaults to ${datadir}/zsh/site-functions)]),
1449 [zshcompletiondir=$withval], [zshcompletiondir="${datadir}/zsh/site-functions"])
1451 AC_SUBST(zshcompletiondir)
1453 AC_ARG_ENABLE([force-preopen],
1454 AS_HELP_STRING([--enable-force-preopen],[Preopen modules, even when dlopen() is supported.]))
1456 if test "x$enable_force_preopen" = "xyes"; then
1462 AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
1470 libpulse-mainloop-glib.pc
1472 doxygen/doxygen.conf
1475 man/pulseaudio.1.xml
1477 man/pax11publish.1.xml
1481 man/pasuspender.1.xml
1483 man/pulse-daemon.conf.5.xml
1484 man/pulse-client.conf.5.xml
1485 man/default.pa.5.xml
1486 man/pulse-cli-syntax.5.xml
1487 man/start-pulseaudio-x11.1.xml
1490 AC_CONFIG_FILES([src/esdcompat:src/daemon/esdcompat.in], [chmod +x src/esdcompat])
1491 AC_CONFIG_FILES([src/start-pulseaudio-x11:src/daemon/start-pulseaudio-x11.in], [chmod +x src/start-pulseaudio-x11])
1492 AC_CONFIG_FILES([src/client.conf:src/pulse/client.conf.in])
1493 AC_CONFIG_FILES([src/daemon.conf:src/daemon/daemon.conf.in],
1494 [m4 src/daemon.conf > src/daemon.conf.gen && mv src/daemon.conf.gen src/daemon.conf])
1495 AC_CONFIG_FILES([src/default.pa:src/daemon/default.pa.in],
1496 [m4 src/default.pa > src/default.pa.gen && mv src/default.pa.gen src/default.pa])
1497 AC_CONFIG_FILES([src/system.pa:src/daemon/system.pa.in],
1498 [m4 src/system.pa > src/system.pa.gen && mv src/system.pa.gen src/system.pa])
1499 AS_IF([test "x$HAVE_SYSTEMD_DAEMON" = "x1"],
1501 AC_CONFIG_FILES([src/pulseaudio.service:src/daemon/systemd/user/pulseaudio.service.in])
1504 # CMake related ProjectConfig files
1506 AX_DEFINE_DIR(PA_LIBDIR, PA_LIBDIR, [PulseAudio library dir])
1507 PA_INCDIR="$includedir"
1508 AX_DEFINE_DIR(PA_INCDIR, PA_INCDIR, [PulseAudio include dir])
1510 AC_CONFIG_FILES([PulseAudioConfig.cmake:PulseAudioConfig.cmake.in],
1511 [m4 PulseAudioConfig.cmake > PulseAudioConfig.cmake.gen && mv PulseAudioConfig.cmake.gen PulseAudioConfig.cmake])
1512 AC_CONFIG_FILES([PulseAudioConfigVersion.cmake])
1516 # ==========================================================================
1518 AS_IF([test "x$HAVE_X11" = "x1"], ENABLE_X11=yes, ENABLE_X11=no)
1519 AS_IF([test "x$HAVE_OSS_OUTPUT" = "x1"], ENABLE_OSS_OUTPUT=yes, ENABLE_OSS_OUTPUT=no)
1520 AS_IF([test "x$HAVE_OSS_WRAPPER" = "x1"], ENABLE_OSS_WRAPPER=yes, ENABLE_OSS_WRAPPER=no)
1521 AS_IF([test "x$HAVE_ALSA" = "x1"], ENABLE_ALSA=yes, ENABLE_ALSA=no)
1522 AS_IF([test "x$HAVE_COREAUDIO" = "x1"], ENABLE_COREAUDIO=yes, ENABLE_COREAUDIO=no)
1523 AS_IF([test "x$HAVE_SOLARIS" = "x1"], ENABLE_SOLARIS=yes, ENABLE_SOLARIS=no)
1524 AS_IF([test "x$HAVE_WAVEOUT" = "x1"], ENABLE_WAVEOUT=yes, ENABLE_WAVEOUT=no)
1525 AS_IF([test "x$HAVE_GLIB20" = "x1"], ENABLE_GLIB20=yes, ENABLE_GLIB20=no)
1526 AS_IF([test "x$HAVE_GTK30" = "x1"], ENABLE_GTK30=yes, ENABLE_GTK30=no)
1527 AS_IF([test "x$HAVE_GCONF" = "x1"], ENABLE_GCONF=yes, ENABLE_GCONF=no)
1528 AS_IF([test "x$HAVE_AVAHI" = "x1"], ENABLE_AVAHI=yes, ENABLE_AVAHI=no)
1529 AS_IF([test "x$HAVE_JACK" = "x1"], ENABLE_JACK=yes, ENABLE_JACK=no)
1530 AS_IF([test "x$HAVE_LIBASYNCNS" = "x1"], ENABLE_LIBASYNCNS=yes, ENABLE_LIBASYNCNS=no)
1531 AS_IF([test "x$HAVE_LIRC" = "x1"], ENABLE_LIRC=yes, ENABLE_LIRC=no)
1532 AS_IF([test "x$HAVE_XEN" = "x1"], ENABLE_XEN=yes, ENABLE_XEN=no)
1533 AS_IF([test "x$HAVE_DBUS" = "x1"], ENABLE_DBUS=yes, ENABLE_DBUS=no)
1534 AS_IF([test "x$HAVE_UDEV" = "x1"], ENABLE_UDEV=yes, ENABLE_UDEV=no)
1535 AS_IF([test "x$HAVE_SYSTEMD_DAEMON" = "x1"], ENABLE_SYSTEMD_DAEMON=yes, ENABLE_SYSTEMD_DAEMON=no)
1536 AS_IF([test "x$HAVE_SYSTEMD_LOGIN" = "x1"], ENABLE_SYSTEMD_LOGIN=yes, ENABLE_SYSTEMD_LOGIN=no)
1537 AS_IF([test "x$HAVE_SYSTEMD_JOURNAL" = "x1"], ENABLE_SYSTEMD_JOURNAL=yes, ENABLE_SYSTEMD_JOURNAL=no)
1538 AS_IF([test "x$HAVE_BLUEZ_4" = "x1"], ENABLE_BLUEZ_4=yes, ENABLE_BLUEZ_4=no)
1539 AS_IF([test "x$HAVE_BLUEZ_5" = "x1"], ENABLE_BLUEZ_5=yes, ENABLE_BLUEZ_5=no)
1540 AS_IF([test "x$HAVE_BLUEZ_5_OFONO_HEADSET" = "x1"], ENABLE_BLUEZ_5_OFONO_HEADSET=yes, ENABLE_BLUEZ_5_OFONO_HEADSET=no)
1541 AS_IF([test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = "x1"], ENABLE_BLUEZ_5_NATIVE_HEADSET=yes, ENABLE_BLUEZ_5_NATIVE_HEADSET=no)
1542 AS_IF([test "x$HAVE_HAL_COMPAT" = "x1"], ENABLE_HAL_COMPAT=yes, ENABLE_HAL_COMPAT=no)
1543 AS_IF([test "x$HAVE_TCPWRAP" = "x1"], ENABLE_TCPWRAP=yes, ENABLE_TCPWRAP=no)
1544 AS_IF([test "x$HAVE_LIBSAMPLERATE" = "x1"], ENABLE_LIBSAMPLERATE="yes (DEPRECATED)", ENABLE_LIBSAMPLERATE=no)
1545 AS_IF([test "x$HAVE_IPV6" = "x1"], ENABLE_IPV6=yes, ENABLE_IPV6=no)
1546 AS_IF([test "x$HAVE_OPENSSL" = "x1"], ENABLE_OPENSSL=yes, ENABLE_OPENSSL=no)
1547 AS_IF([test "x$HAVE_FFTW" = "x1"], ENABLE_FFTW=yes, ENABLE_FFTW=no)
1548 AS_IF([test "x$HAVE_ORC" = "xyes"], ENABLE_ORC=yes, ENABLE_ORC=no)
1549 AS_IF([test "x$HAVE_ADRIAN_EC" = "x1"], ENABLE_ADRIAN_EC=yes, ENABLE_ADRIAN_EC=no)
1550 AS_IF([test "x$HAVE_SPEEX" = "x1"], ENABLE_SPEEX=yes, ENABLE_SPEEX=no)
1551 AS_IF([test "x$HAVE_SOXR" = "x1"], ENABLE_SOXR=yes, ENABLE_SOXR=no)
1552 AS_IF([test "x$HAVE_WEBRTC" = "x1"], ENABLE_WEBRTC=yes, ENABLE_WEBRTC=no)
1553 AS_IF([test "x$HAVE_TDB" = "x1"], ENABLE_TDB=yes, ENABLE_TDB=no)
1554 AS_IF([test "x$HAVE_GDBM" = "x1"], ENABLE_GDBM=yes, ENABLE_GDBM=no)
1555 AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], ENABLE_SIMPLEDB=yes, ENABLE_SIMPLEDB=no)
1556 AS_IF([test "x$HAVE_ESOUND" = "x1"], ENABLE_ESOUND=yes, ENABLE_ESOUND=no)
1557 AS_IF([test "x$HAVE_ESOUND" = "x1" -a "x$USE_PER_USER_ESOUND_SOCKET" = "x1"], ENABLE_PER_USER_ESOUND_SOCKET=yes, ENABLE_PER_USER_ESOUND_SOCKET=no)
1558 AS_IF([test "x$HAVE_GCOV" = "x1"], ENABLE_GCOV=yes, ENABLE_GCOV=no)
1559 AS_IF([test "x$HAVE_LIBCHECK" = "x1"], ENABLE_TESTS=yes, ENABLE_TESTS=no)
1560 AS_IF([test "x$enable_legacy_database_entry_format" != "xno"], ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=yes, ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=no)
1563 ---{ $PACKAGE_NAME $VERSION }---
1566 sysconfdir: ${sysconfdir}
1567 localstatedir: ${localstatedir}
1568 modlibexecdir: ${modlibexecdir}
1569 System Runtime Path: ${PA_SYSTEM_RUNTIME_PATH}
1570 System State Path: ${PA_SYSTEM_STATE_PATH}
1571 System Config Path: ${PA_SYSTEM_CONFIG_PATH}
1572 Zsh completions directory: ${zshcompletiondir}
1573 Bash completions directory: ${bashcompletiondir}
1576 CPPFLAGS: ${CPPFLAGS}
1579 Enable X11: ${ENABLE_X11}
1580 Enable OSS Output: ${ENABLE_OSS_OUTPUT}
1581 Enable OSS Wrapper: ${ENABLE_OSS_WRAPPER}
1582 Enable EsounD: ${ENABLE_ESOUND}
1583 Enable Alsa: ${ENABLE_ALSA}
1584 Enable CoreAudio: ${ENABLE_COREAUDIO}
1585 Enable Solaris: ${ENABLE_SOLARIS}
1586 Enable WaveOut: ${ENABLE_WAVEOUT}
1587 Enable GLib 2.0: ${ENABLE_GLIB20}
1588 Enable Gtk+ 3.0: ${ENABLE_GTK30}
1589 Enable GConf: ${ENABLE_GCONF}
1590 Enable Avahi: ${ENABLE_AVAHI}
1591 Enable Jack: ${ENABLE_JACK}
1592 Enable Async DNS: ${ENABLE_LIBASYNCNS}
1593 Enable LIRC: ${ENABLE_LIRC}
1594 Enable Xen PV driver: ${ENABLE_XEN}
1595 Enable D-Bus: ${ENABLE_DBUS}
1596 Enable BlueZ 4: ${ENABLE_BLUEZ_4}
1597 Enable BlueZ 5: ${ENABLE_BLUEZ_5}
1598 Enable ofono headsets: ${ENABLE_BLUEZ_5_OFONO_HEADSET}
1599 Enable native headsets: ${ENABLE_BLUEZ_5_NATIVE_HEADSET}
1600 Enable udev: ${ENABLE_UDEV}
1601 Enable HAL->udev compat: ${ENABLE_HAL_COMPAT}
1603 Daemon (Socket Activation): ${ENABLE_SYSTEMD_DAEMON}
1604 Login (Session Tracking): ${ENABLE_SYSTEMD_LOGIN}
1605 Journal (Logging): ${ENABLE_SYSTEMD_JOURNAL}
1606 Enable TCP Wrappers: ${ENABLE_TCPWRAP}
1607 Enable libsamplerate: ${ENABLE_LIBSAMPLERATE}
1608 Enable IPv6: ${ENABLE_IPV6}
1609 Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
1610 Enable fftw: ${ENABLE_FFTW}
1611 Enable orc: ${ENABLE_ORC}
1612 Enable Adrian echo canceller: ${ENABLE_ADRIAN_EC}
1613 Enable speex (resampler, AEC): ${ENABLE_SPEEX}
1614 Enable soxr (resampler): ${ENABLE_SOXR}
1615 Enable WebRTC echo canceller: ${ENABLE_WEBRTC}
1616 Enable gcov coverage: ${ENABLE_GCOV}
1617 Enable unit tests: ${ENABLE_TESTS}
1620 gdbm: ${ENABLE_GDBM}
1621 simple database: ${ENABLE_SIMPLEDB}
1623 System User: ${PA_SYSTEM_USER}
1624 System Group: ${PA_SYSTEM_GROUP}
1625 Access Group: ${PA_ACCESS_GROUP}
1626 Enable per-user EsounD socket: ${ENABLE_PER_USER_ESOUND_SOCKET}
1627 Force preopen: ${FORCE_PREOPEN}
1628 Preopened modules: ${PREOPEN_MODS}
1630 Legacy Database Entry Support: ${ENABLE_LEGACY_DATABASE_ENTRY_FORMAT}
1633 if test "${ENABLE_SPEEX}" = "no" && test "${ENABLE_WEBRTC}" = "no" && test "${ENABLE_ADRIAN_EC}" = "no" ; then
1634 AC_MSG_ERROR([At least one echo canceller implementation must be available.])
1637 if test "${ENABLE_DBUS}" = "no" && test "x$os_is_win32" != "x1" ; then
1639 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1640 You do not have D-Bus support enabled. It is strongly recommended
1641 that you enable D-Bus support if your platform supports it.
1642 Many parts of PulseAudio use D-Bus, from ConsoleKit interaction
1643 to the Device Reservation Protocol to speak to JACK, Bluetooth
1644 support and even a native control protocol for communicating and
1645 controling the PulseAudio daemon itself.
1646 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1650 if test "${ENABLE_UDEV}" = "no" && test "x$os_is_win32" != "x1" ; then
1652 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1653 You do not have udev support enabled. It is strongly recommended
1654 that you enable udev support if your platform supports it as it is
1655 the primary method used to detect hardware audio devices (on Linux)
1656 and is thus a critical part of PulseAudio on that platform.
1657 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1661 if test "${ENABLE_SPEEX}" = "no" && test "x$os_is_win32" != "x1" ; then
1663 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1664 You do not have speex support enabled. It is strongly recommended
1665 that you enable speex support if your platform supports it as it is
1666 the primary method used for audio resampling and is thus a critical
1667 part of PulseAudio on that platform.
1668 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====